by varunneal
Control Spotify playback, search the catalog, and manage playlists directly from LLM interactions.
Spotify MCP enables Large Language Models to interact with the Spotify service, providing commands for playback control, catalog search, and playlist manipulation.
uvx
for on‑the‑fly execution or cloning the repository and running it with uv
.SPOTIFY_CLIENT_ID
, SPOTIFY_CLIENT_SECRET
, SPOTIFY_REDIRECT_URI
).Do I need a Spotify Premium account? Yes, the developer API actions used by this MCP require a Premium subscription.
What Python version is required?
The uvx
configuration runs with Python 3.12.
Can I run the server locally without opening the redirect URI each call?
Yes, clone the repository and execute it with uv
as described in the README.
Which operating systems are supported? The MCP works on macOS, Windows, and Linux as long as the required environment variables and Python runtime are available.
How are logs accessed?
Logs are written to STDERR. On macOS they appear in ~/Library/Logs/Claude
; other platforms follow the standard MCP log locations.
MCP project to connect Claude with Spotify. Built on top of spotipy-dev's API.
Create an account on developer.spotify.com. Navigate to the dashboard. Create an app with redirect_uri as http://127.0.0.1:8080/callback. You can choose any port you want but you must use http and an explicit loopback address (IPv4 or IPv6).
See here for more info/troubleshooting. You may have to restart your MCP environment (e.g. Claude Desktop) once or twice before it works.
For Cursor, Claude Desktop, or any other MCP-enabled client you will have to locate your config.
Claude Desktop location on MacOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json
Claude Desktop location on Windows: %APPDATA%/Claude/claude_desktop_config.json
Add this snippet to your MCP Config.
{
"mcpServers": {
"spotify": {
"command": "uvx",
"args": [
"--python", "3.12",
"--from", "git+https://github.com/varunneal/spotify-mcp",
"spotify-mcp"
],
"env": {
"SPOTIFY_CLIENT_ID": YOUR_CLIENT_ID,
"SPOTIFY_CLIENT_SECRET": YOUR_CLIENT_SECRET,
"SPOTIFY_REDIRECT_URI": "http://127.0.0.1:8080/callback"
}
}
}
}
Using UVX will open the spotify redirect URI for every tool call. To avoid this, you can run this project locally by cloning this repo:
git clone https://github.com/varunneal/spotify-mcp.git
Add it to your MCP Config like this:
"spotify": {
"command": "uv",
"args": [
"--directory",
"/path/to/spotify-mcp",
"run",
"spotify-mcp"
],
"env": {
"SPOTIFY_CLIENT_ID": YOUR_CLIENT_ID,
"SPOTIFY_CLIENT_SECRET": YOUR_CLIENT_SECRET,
"SPOTIFY_REDIRECT_URI": "http://127.0.0.1:8080/callback"
}
}
Please open an issue if you can't get this MCP working. Here are some tips:
uv
is updated. I recommend version >=0.54
.chmod -R 755
.This MCP will emit logs to std err (as specified in the MCP) spec. On Mac the Claude Desktop app should emit these logs
to ~/Library/Logs/Claude
.
On other platforms you can find logs here.
You can launch the MCP Inspector via npm
with this command:
npx @modelcontextprotocol/inspector uv --directory /path/to/spotify-mcp run spotify-mcp
Upon launching, the Inspector will display a URL that you can access in your browser to begin debugging.
Unfortunately, a bunch of cool features have now been deprecated from the Spotify API. Most new features will be relatively minor or for the health of the project:
PRs appreciated! Thanks to @jamiew, @davidpadbury, @manncodes, @hyuma7, @aanurraj, @JJGO and others for contributions.
Please log in to share your review and rating for this MCP.
{ "mcpServers": { "spotify": { "command": "uvx", "args": [ "--python", "3.12", "--from", "git+https://github.com/varunneal/spotify-mcp", "spotify-mcp" ], "env": { "SPOTIFY_CLIENT_ID": "<YOUR_CLIENT_ID>", "SPOTIFY_CLIENT_SECRET": "<YOUR_CLIENT_SECRET>", "SPOTIFY_REDIRECT_URI": "http://127.0.0.1:8080/callback" } } } }
Explore related MCPs that share similar capabilities and solve comparable challenges
by zed-industries
A high‑performance, multiplayer code editor designed for speed and collaboration.
by modelcontextprotocol
Model Context Protocol Servers
by modelcontextprotocol
A Model Context Protocol server for Git repository interaction and automation.
by modelcontextprotocol
A Model Context Protocol server that provides time and timezone conversion capabilities.
by cline
An autonomous coding assistant that can create and edit files, execute terminal commands, and interact with a browser directly from your IDE, operating step‑by‑step with explicit user permission.
by continuedev
Enables faster shipping of code by integrating continuous AI agents across IDEs, terminals, and CI pipelines, offering chat, edit, autocomplete, and customizable agent workflows.
by upstash
Provides up-to-date, version‑specific library documentation and code examples directly inside LLM prompts, eliminating outdated information and hallucinated APIs.
by github
Connects AI tools directly to GitHub, enabling natural‑language interactions for repository browsing, issue and pull‑request management, CI/CD monitoring, code‑security analysis, and team collaboration.
by daytonaio
Provides a secure, elastic infrastructure that creates isolated sandboxes for running AI‑generated code with sub‑90 ms startup, unlimited persistence, and OCI/Docker compatibility.