Suggest a server AI tools directory →

Spotify MCP server

Last verified: 2026-09

Search tracks and control playback.

Community Chat, mail & docs Needs a secret Claude Desktop, Cursor, Windsurf, Claude Code

What it does

Spotify Web API MCP: search, playback, playlists. Needs a Spotify developer app (client id/secret) and a user OAuth login. Confirm the repo is still live.

It sits in Chat, mail & docs: These servers act as the bot or the integration you install.

Good for

  • Search a track or album without opening Spotify.
  • Start playback on a device that already has Spotify open.
  • Edit a throwaway playlist, not the shared office one.
  • Skip it for research that is actually YouTube or docs.

Tools

  • search — Tracks, albums, playlists.
  • playback / playlists — Control the active device and edit playlists when scopes allow.

Config (Claude Desktop / Cursor / Windsurf)

Paste the JSON below. Same mcpServers shape. Replace placeholder paths and secrets. Windows paths look like C:\\Users\\you\\project, not /path/to. Host-side steps →

Claude Desktop

OSConfig file
macOS~/Library/Application Support/Claude/claude_desktop_config.json
Windows%APPDATA%\Claude\claude_desktop_config.json (usually C:\Users\<you>\AppData\Roaming\Claude\)
Linux~/.config/Claude/claude_desktop_config.json

Cursor

ScopemacOS / LinuxWindows
This project.cursor/mcp.json in the repo root
This user~/.cursor/mcp.json %USERPROFILE%\.cursor\mcp.json

Windsurf

OSConfig file
macOS / Linux~/.codeium/windsurf/mcp_config.json
Windows%USERPROFILE%\.codeium\windsurf\mcp_config.json
{
  "mcpServers": {
    "spotify": {
      "command": "npx",
      "args": [
        "-y",
        "spotify-mcp"
      ],
      "env": {
        "SPOTIFY_CLIENT_ID": "...",
        "SPOTIFY_CLIENT_SECRET": "..."
      }
    }
  }
}

Windsurf remote MCP: use serverUrl instead of url if the block below is HTTP.

One-liner: npx -y spotify-mcp

Secrets it wants: SPOTIFY_CLIENT_ID, SPOTIFY_CLIENT_SECRET

Source repo →

How to get started

  1. Create a Spotify app. Complete the OAuth redirect the README describes.
  2. Ask it to search a track before touching playback.
  3. Playback only works if a Spotify client is open on a device.

Access risk

Playlist writes and playback on a shared speaker. Client secret is the app, OAuth is the user.

When to skip it

Skip it for YouTube research or for local files.

Instead: YouTube, Fetch.

Vs alternatives

ServerOfficial?Needs a secret?Best for
SpotifyNoYesSearch tracks and control playback.
YouTubeNoYesSearch and summarize YouTube videos.
FetchYesYesFetch a URL and turn the page into readable text.

More in Chat, mail & docs

All 18 in this category →

FAQ

Repo 404?

Confirm the package still exists before putting client id/secret in env.

Why isn't playback working?

A Spotify client must be open on a device. The API cannot spawn the app from nothing.

User OAuth?

Yes — developer app + user login. Client secret is the app; OAuth is the user.

Can it follow people or buy Premium?

Assume playlist writes are on. Do not grant scopes you do not need.