Spotify MCP Server

Control Spotify playback using natural language commands directly from your code editor or other MCP-compatible applications.

Local serverstdio 1

What is the Spotify MCP server?

Most developer tooling work still happens through a UI a human drives. Spotify MCP server moves it into the conversation instead. Control Spotify playback using natural language commands directly from your code editor or other MCP-compatible applications.

The short version

Create a file named .env in the root of the project directory. Add the following, replacing the placeholders with your actual Spotify credentials:

  • play: Play a track, album, or playlist, or resume playback
  • pause: Pause playback
  • next: Skip to the next track
  • previous: Skip to the previous track
  • get_current_track: Get information about the currently playing track
  • search: Search for tracks, albums, artists, or playlists

Getting it running

Setup follows the usual MCP pattern — install or clone the server, register it in your client's configuration file, restart the client.

What it needs from you

Configuration is passed through the environment: SPOTIFY_CLIENT_ID, SPOTIFY_CLIENT_SECRET, SPOTIFY_REDIRECT_URI, SPOTIFY_ACCESS_TOKEN, SPOTIFY_REFRESH_TOKEN. Treat anything key-shaped as a real credential — scope it to the minimum the server needs, and rotate it if it ever lands in a shared config.

  • Bun (version 1.0.0 or later) * A Spotify Premium account. * A Spotify Developer application: * Create one at the Spotify Developer Dashboard. * Obtain your Client ID and Client Secret. * Add http://localhost:8888/callback to the Redirect URIs in your app's settings. * An MCP client (e.g., Cursor or Claude for Desktop).

Things to watch

  • It runs with your machine's permissions. That is convenient and also the reason to think about what you point it at before you approve a tool call.
  • Missing credentials fail quietly in some clients — if no tools show up, check the environment block first.
  • Keep per-call confirmation enabled while you learn its behaviour; it is the cheapest safeguard you have.

How it compares

Plenty of developer tooling servers cover similar ground. The differences that matter in practice are scope of access and how much setup stands between you and a working tool call. It is maintained by obre10off; worth a glance at recent repository activity before you build anything load-bearing on it.

SyncDev reviews every entry in this directory against the project's own documentation before publishing, and revisits them as servers change.

Configuration

  • Bun (version 1.0.0 or later) * A Spotify Premium account. * A Spotify Developer application: * Create one at the Spotify Developer Dashboard. * Obtain your Client ID and Client Secret. * Add http://localhost:8888/callback to the Redirect URIs in your app's settings. * An MCP client (e.g., Cursor or Claude for Desktop).
VariableDescriptionRequired
SPOTIFY_CLIENT_IDConfiguration value read at startup.Optional
SPOTIFY_CLIENT_SECRETCredential the server authenticates with.Yes
SPOTIFY_REDIRECT_URIFilesystem location the server is allowed to use.Optional
SPOTIFY_ACCESS_TOKENCredential the server authenticates with.Yes
SPOTIFY_REFRESH_TOKENCredential the server authenticates with.Yes

Frequently asked questions

You need Bun (v1.0.0+), a Spotify Premium account, a Spotify Developer application with your Client ID and Secret, and an MCP client like Cursor or Claude.