spotify-mcp-server
Controls Spotify playback (play, pause, skip, volume), searches for tracks/albums/artists/playlists, fetches recommendations, and manages the queue via the Spotify Web API.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@spotify-mcp-serverplay some chill lo-fi music"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Spotify MCP Server
A Python-based Model Context Protocol (MCP) server that connects your AI assistant (Claude Desktop, Cursor, etc.) directly to the Spotify Web API. This allows the AI to inspect your current playback state, search for music, trigger recommendations, and control your player (play, pause, skip, adjust volume, queue tracks).
Built using Python 3.12+, the official FastMCP SDK, uv for dependency/project management, and fully type-annotated with strict mypy validation.
Features
🛠️ Exposed Tools
get_current_playback: Retrieves details about your active device, current volume, track name, artist, album, and progress.pause_playback/resume_playback: Pauses or resumes playback.skip_next/skip_previous: Skips to the next or previous track.set_volume: Adjusts player volume (0 to 100).add_to_queue: Appends a specific track URI to the queue.search_spotify: Searches for tracks, albums, artists, or playlists.play_by_search: Searches for an item and immediately starts playing the top result.get_recommendations: Fetches track recommendations based on seed genres (e.g.lofi,chill).
📊 Exposed Resources
spotify://status: Exposes the text description of the currently playing track.
💬 Exposed Prompts
vibe_check: Guides the AI to curate and play a playlist matching your current coding task, energy level, and mood.
Related MCP server: Spotify MCP Server
Prerequisites
Spotify Premium: The Spotify Web API Player endpoints require a Spotify Premium subscription to accept control commands.
uvPackage Manager: Installuvif you haven't already:curl -LsSf https://astral.sh/uv/install.sh | sh
Setup & Installation
1. Register a Spotify Developer App
Go to the Spotify Developer Dashboard and log in.
Click Create App and fill in the details:
App name: E.g.
My Local MCP ServerRedirect URI:
http://127.0.0.1:8888/callback(Crucial for the authentication script to run successfully)
Under the app settings, copy your Client ID and Client Secret.
2. Configure Environment Secrets
Create a .env file in the root of this project:
cp .env.example .envOpen .env and fill in your client keys:
SPOTIFY_CLIENT_ID=your_client_id_here
SPOTIFY_CLIENT_SECRET=your_client_secret_here
SPOTIFY_REDIRECT_PORT=88883. Generate Spotify Refresh Token
Run the built-in OAuth helper script:
uv run get_token.pyThis script spins up a temporary web server on
127.0.0.1:8888and opens your default web browser to authorize the required permissions (user-read-playback-state,user-modify-playback-state,user-read-currently-playing).After clicking "Agree", you will see a success message. Return to the terminal and copy the printed
SPOTIFY_REFRESH_TOKENto your.envfile:
SPOTIFY_REFRESH_TOKEN=your_generated_refresh_token_hereDevelopment & Type Checking
Ensure the codebase is type-safe and conforms to the static analysis rules:
uv run mypy .MCP Client Configuration
To register this server with your AI client, add the following configuration block:
Claude Desktop
Add this to your claude_desktop_config.json (usually located at ~/Library/Application Support/Claude/claude_desktop_config.json on macOS):
{
"mcpServers": {
"spotify": {
"command": "uv",
"args": [
"--directory",
"/Users/ridhanfadhilah/Public/Fadhil/AI/mcp/spotify-mcp-server",
"run",
"main.py"
]
}
}
}Note: Replace /Users/ridhanfadhilah/Public/Fadhil/AI/mcp/spotify-mcp-server with the absolute path of this workspace if it is located elsewhere.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/hightechif/spotify-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server