Spotify MCP Server
Interact with the Spotify API to manage playlists and control music playback.
title: Spotify MCP Server emoji: 🎵 colorFrom: blue colorTo: purple sdk: gradio sdk_version: 5.33.1 app_file: server.py pinned: false
Spotify MCP Server
A Gradio-based MCP server that provides a user-friendly interface to interact with Spotify's API. This server offers various tools for managing your Spotify experience, from authentication to playlist management and music playback control.
Demo Video
Features
- Authentication: Secure Spotify authentication using OAuth2
- Music Search: Search for tracks and get artist information
- Queue Management: Add songs to your Spotify queue (requires Spotify Premium)
- Recently Played: View your recently played tracks
- Playlist Management:
- Create new playlists
- View existing playlists
- Add songs to playlists
- User Insights:
- View top artists
- View top tracks
- Get genre information
Requirements
- Python 3.x
- Spotify Premium account (required for some queue management features)
- Spotify Developer account for API credentials
Setup
- Clone this repository
- Install the required dependencies:
pip install gradio spotipy
Configuration
Getting Spotify API Keys
- Create an account on developer.spotify.com
- Navigate to the dashboard
- Create a new app with the following settings:
- Redirect URI:
http://127.0.0.1:5000/callback(you can choose any port, but must use http and an explicit loopback address) - Note: You may need to restart your MCP environment (e.g., Claude Desktop) once or twice before it works
- Redirect URI:
Environment Variables
The server uses the following environment variables: Please create a .env file with the credentials
CLIENT_ID: Your Spotify API client IDCLIENT_SECRET: Your Spotify API client secretREDIRECT_URI: Your Spotify API redirect URI (default: http://127.0.0.1:5000/callback)
Running Locally
This project is designed to run locally and is not yet set up for ephemeral environments (e.g., uvx usage). To run:
- Clone this repository
- Set up your environment variables
- Run the server
Example Queries for Claude Desktop
Try these example queries in Claude Desktop to explore different features:
Music Discovery & Analytics
"Show me my top 10 artists and their genres from the last 6 months"
Smart Playlist Creation
"Create a playlist of my top 20 tracks from this month"
Queue Management
"Search for 'I Like Me Better' and add it to my queue"
Playlist Organization
"Show me all my playlists"
Music Curation
"Compare my top 10 tracks from this month with my all-time favorites"
Quick Actions
"Show me my 5 most recently played songs"
API Endpoints
The server exposes several endpoints through Gradio interfaces:
add_to_queue_song: Add a song to the queue (Premium required)get_artist_and_track: Search for tracksauth_with_spotify: Authenticate with Spotifyget_recently_played_songs: Get recently played trackscreate_playlist: Create a new playlistget_playlist_name_and_id: Get playlist informationadd_songs_to_playlist: Add songs to a playlistget_users_top_artists: Get user's top artistsget_user_top_tracks: Get user's top tracks
Premium Features
The following features require a Spotify Premium account:
- Adding songs to queue
Claude Desktop Configuration
To use this MCP server with Claude Desktop, add the following configuration to your settings (port number can vary, please check):
{
"mcpServers": {
"gradio": {
"command": "npx",
"args": ["mcp-remote", "http://127.0.0.1:7860/gradio_api/mcp/sse"]
}
}
}
This configuration allows Claude Desktop to connect to the Gradio MCP server running on port 7860.
Tags
mcp-server-track
Related Servers
CloudWatch Logs
Access AWS CloudWatch logs to list log groups and read log entries.
Dokku
An MCP server for managing applications on Dokku, the open-source PaaS.
CData Zoho Inventory Server
A read-only MCP server by CData for querying live Zoho Inventory data.
AWS Cost Analysis
Analyze CDK projects to identify AWS services used and get pricing information from AWS pricing webpages and API.
rakuten-mcp
Rakuten API integration for product search, hotel and travel booking, and recipe lookup across Japan's largest e-commerce platform.
OpenWeatherMap
Provides comprehensive weather data and forecasts using the OpenWeatherMap API.
FastlyMCP
Interact with the Fastly API and CLI using an API key.
Simple OpenStack MCP
Execute OpenStack CLI commands using LLMs. Requires a configured OpenStack CLI environment.
Weather MCP Server
Provides real-time weather data from the US National Weather Service API.
AWS CLI
Interact with AWS services using the AWS CLI. Requires AWS CLI to be installed and configured.