Best for
- Developers who want to integrate Spotify playback control into AI assistants or workflows
- Scenarios requiring voice control of music
- Agents that need batch processing of music searches and playlist operations
This server provides a practical MCP integration for Spotify with batch operations and clear feedback. However, note that it targets a candidate MCP version and requires careful handling of OAuth and security configuration.
Strongest · Documentation 17/20 Weakest · Reliability 8/20
Static review · not runListed 2026-08-07
Read the FMRS scoring method →Runtime:Bun · Node.js
SPOTIFY_CLIENT_ID
Spotify app client ID from developer.spotify.com/dashboard.
SPOTIFY_CLIENT_SECRET
Spotify app client secret from the Spotify Developer Dashboard; secret.
TOKENS_ENC_KEY
AES-256-GCM key (32-byte base64url) used by Workers to encrypt tokens; secret. Without it tokens are stored in plaintext.
RS_TOKENS_ENC_KEY
Token encryption key used by Bun and the newer Worker binding, equivalent to TOKENS_ENC_KEY; secret.
PORT
Port the Bun server listens on, e.g. 3000.
AUTH_ENABLED
Whether the MCP auth boundary is enabled.
MCP_PUBLIC_URL
Publicly exposed MCP endpoint, e.g. http://localhost:3000/mcp.
MCP_ALLOWED_HOSTS
Comma-separated list of allowed Host values.
MCP_ALLOWED_ORIGIN_HOSTNAMES
Comma-separated list of allowed Origin hostnames.
MCP_LEGACY_MODE
Legacy protocol mode, e.g. stateless.
MCP_MAX_REQUEST_BYTES
Maximum request body size, e.g. 1048576.
OAUTH_SCOPES
OAuth scopes requested from Spotify (playback, playlists, library, etc.).
OAUTH_REDIRECT_URI
OAuth callback URI that must be registered in the Spotify Dashboard.
OAUTH_REDIRECT_ALLOWLIST
Allowlist of permitted OAuth redirect URIs.
MCP_REQUIRED_SCOPES
Optional; required client-record scopes when configured, empty by default.
AUTH_DISCOVERY_URL
Optional authorization discovery URL for production deployments.
bun install to install dependencies..env.example to .env and fill in Spotify client ID/secret, OAuth redirect URIs, etc.bun dev to start the server.{
"mcpServers": {
"spotify": {
"command": "bunx",
"args": [
"mcp-remote",
"http://127.0.0.1:3000/mcp",
"--transport",
"http-only"
],
"env": {
"NO_PROXY": "127.0.0.1,localhost"
}
}
}
}
Shown for Claude Desktop. Other clients may use a different file or key (VS Code uses "servers") — the configurator below converts it.
{
"servers": {
"spotify": {
"command": "bunx",
"args": [
"mcp-remote",
"http://127.0.0.1:3000/mcp",
"--transport",
"http-only"
],
"env": {
"NO_PROXY": "127.0.0.1,localhost"
}
}
}
}
Goes in your project's .vscode/mcp.json (VS Code uses a "servers" key).
claude mcp add spotify -e NO_PROXY=127.0.0.1,localhost -- bunx mcp-remote http://127.0.0.1:3000/mcp --transport http-only
Run it in a terminal; replace any <…> placeholders with your own values first.
After running bun dev, the client tool list should show search_catalog, player_status, spotify_control, spotify_playlist, and spotify_library. You can check http://127.0.0.1:3000/health for runtime health, or call player_status in the client to confirm the player and device listing.
Once connected, you can ask your AI assistant things like:
No matching tools
Listed from the project's documentation, not tested by this site.
This server provides access to the Spotify API via MCP. It allows AI assistants to search for music, control playback (play, pause, skip, volume, etc.), transfer devices, manage playlists, and save/unsave tracks. It uses OAuth 2.1 proxy for authentication and supports both Bun and Cloudflare Workers runtimes. Note: the repository targets the candidate MCP protocol (2026-07-28) and SDK 2.0.0-beta.5; it is not yet conformant to a final dated release.
Manage your Hevy workout data from AI assistants via MCP.
Firecrawl's official MCP server for web search, scraping, and structured extraction for AI agents
One binary. One grammar. Evidence from the biomedical sources you already trust.
Encrypted, fully offline long-term memory for AI agents
Source revision d39ada3924db Data synced 2026-10-19 Read the FMRS scoring method