Spotify MCP Server
Pricing
Pay per usage
Spotify MCP Server
Model Context Protocol (MCP) server exposing the Spotify Web API, with OAuth 2.0 Authorization Code + PKCE login for user accounts.
Pricing
Pay per usage
Rating
0.0
(0)
Developer
R.L.
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
0
Monthly active users
7 days ago
Last modified
Categories
Share
Spotify MCP Server
Control your Spotify account straight from your AI assistant. Ask it to search for a song and play it on your speaker, build you a playlist and add tracks to it, tell you what's currently playing, follow an artist, or check what you've been listening to lately - all through plain conversation, no Spotify app tab-switching required.
This is a Model Context Protocol server, so it plugs straight into Claude, ChatGPT, or any other MCP-compatible assistant. It runs on Apify and stays always-on, so there's no server to babysit and no "cold start" wait - you connect once and it's ready.
Why use this?
- Talk instead of click. "Play something upbeat", "add the last three Beatles songs I searched to my road trip playlist", "who am I following that I haven't listened to in a while" - your assistant does the clicking.
- Your whole library and playback, not just search. Playlists (create, edit, reorder, cover art), saved tracks/albums/shows/episodes/audiobooks, followed artists, top artists/tracks, and full playback control (play, pause, skip, volume, shuffle, queue) on whichever device you're signed into.
- Nothing extra to build or host. No app to write, no server to run - connect your assistant to the URL below and the tools just show up.
- Your account stays yours. Logging in happens on Spotify's own real login page, the same one you already trust, with the standard secure login method Spotify recommends for apps like this. This server never sees or stores your Spotify password.
Getting started
- Connect your assistant to this actor (see Connecting an MCP client below).
- Register your own free Spotify app (two minutes, no approval needed - see Set up your Spotify app below) and give its credentials to your assistant to configure.
- Ask it to log you into Spotify. It'll hand you a real
accounts.spotify.comlink - open it, log in, and approve access. - Spotify sends you back a short code. Give that code to your assistant to finish connecting your account (a one-time copy/paste step - see below for why).
- You're set. Ask for anything: "what's playing right now", "make a playlist called Focus and add some lo-fi to it", "pause my music".
You can disconnect any time by asking your assistant to log you out.
Set up your Spotify app
This server is shared by everyone who uses it on Apify - there's no single built-in Spotify app that could work for every user, because Spotify caps how many people can use one app before its developer requests extended access. So each person connects their own free app instead - same one-time step you'd do for any "connect your Spotify" integration you self-host:
- Go to the Spotify Developer Dashboard and create an app (any name/description works - this is just your personal API key, not a public listing).
- In the app's Settings, add this exact Redirect URI:
https://rl1987--spotify-mcp-server.apify.actor/callback - Copy the app's Client ID and Client Secret.
- Ask your assistant to call
spotify_configurewith those two values. This only needs doing once per conversation/session - after that, every other tool (search, login, playback, ...) just works.
Your Client ID/Secret are encrypted at rest, scoped to your session only, and never shared with other users of this server.
About the copy/paste login step
Most "click to log in" integrations redirect you straight back automatically. Here, Apify's hosting
platform requires every request to carry proof of who's calling it, and Spotify's redirect back to
this server can't carry that proof - so after you approve access, the browser lands on a page
showing a raw error like {"error": {"type": "api-token-missing", ...}}. That error is
expected - it does not mean the login failed. What you need is already in the address bar at
that point: a code=... and state=... query string. Copy those two values and pass them back to
your assistant. It's the same fallback approach tools like gh (GitHub's CLI) or gcloud use when a browser can't talk
directly to the tool that started the login. One extra step, same secure login underneath.
Connecting an MCP client
claude mcp add --transport http spotify https://rl1987--spotify-mcp-server.apify.actor/mcp \--header "Authorization: Bearer <YOUR_APIFY_API_TOKEN>"
- Actor page: https://console.apify.com/actors/NfIkvgP2Og5cscmTE
- MCP endpoint: https://rl1987--spotify-mcp-server.apify.actor/mcp
The Bearer token is your own Apify API token (from your Apify account
settings) - it's how Apify knows who's connecting
and bills your usage. It has nothing to do with your Spotify login. Verify the connection with
claude mcp list or /mcp.
What you can ask for
| Category | What it covers |
|---|---|
| Search & browse | Songs, artists, albums, podcasts, episodes, audiobooks |
| Your library | Save/remove/check tracks, albums, shows, episodes, audiobooks |
| Playlists | Create, edit, reorder tracks, upload cover art, view any playlist |
| Following | See and manage the artists you follow |
| Your profile & taste | Your profile info, top artists/tracks, recently played |
| Playback | Play, pause, skip, seek, volume, shuffle, repeat, queue, switch devices |
Every tool needs spotify_configure done first (your own app credentials). Beyond that, public
search/browse works with just that. Anything tied to your account (library, playlists you own,
playback, profile) also needs the one-time login above.
Cost
Each request your assistant makes through this server costs a small flat fee, billed to your Apify account - you only pay for what you actually use, nothing failed or unused. See .actor/pay_per_event.json for the exact rate.
FAQ
Why do I need to register my own Spotify app instead of it just working? Spotify limits how many end users can authorize a single app before its developer requests (and qualifies for) extended production access - which requires being an established business with a large existing user base. A shared community server like this one can't meet that bar, so instead everyone brings their own free app. It's a two-minute signup with no approval wait, and it's the same thing you'd do to self-host any "connect your Spotify" integration.
Do I need my own Spotify Premium account for playback control? Spotify requires Premium for the play/pause/skip/volume/queue endpoints; free accounts can still search, browse, and manage their library/playlists.
What if Spotify is slow to respond or rate-limits a request? The server automatically retries with backoff and only bothers you if it genuinely can't get through, so you don't need to retry things yourself.
Can I use this with a team? Yes - a shared MCP connection URL can be committed to a team repo; each teammate connects with their own Apify token and logs into their own Spotify account independently.

