Spotify MCP Server

A local Python MCP server for searching Spotify, controlling playback, and managing playlists and Liked Songs from your MCP client. Runs over stdio with your Spotify account. Its 28 documented tools cover tracks, playlist, saved, playback.

People who work with tracks, playlist and saved and want it reachable from Claude, Cursor, VS Code, or another MCP client. The project is written in Python.

VERIFIED ACTIVE

LAST COMMIT 2026-09-20 · ★ 11 · #60 OF 292 MAINTAINED API INTEGRATION · VERIFIED 2026-09-30

MIT · Python servers · how we verify → /methodology

01 · Install Spotify

before you install - you'll need

Set SPOTIFY_CLIENT_ID, SPOTIFY_CLIENT_SECRET, SPOTIFY_REDIRECT_URI before connecting.

Claude Code

claude mcp add jamiew-spotify-mcp -- uvx spotify-mcp-jamiew

Claude Desktop / Cursor / VS Code - add to config

{
  "mcpServers": {
    "jamiew-spotify-mcp": {
      "command": "uvx",
      "args": [
        "spotify-mcp-jamiew"
      ]
    }
  }
}

Same JSON for Cursor. For VS Code, rename the top-level key from `mcpServers` to `servers`.

Using another client? Same JSON, different key

Claude Desktop · mcpServers

Cursor · mcpServers

VS Code · servers

Windsurf · mcpServers

Zed · context_servers

Cline · mcpServers

Roo Code · mcpServers

Continue · mcpServers

LibreChat · mcpServers

Gemini CLI · mcpServers

Codex CLI · mcp_servers

Full setup guides: every client.

02 · Evidence

Security posture

What to check before giving this server access to your agent - from the registry, GitHub, and our own probes. We don't score safety; we show what's verifiable.

runs as local process (stdio) - runs on your machine with your user's permissions

repository a fork of another project - check the upstream repo before trusting releases

license MIT - declared in the repository

pypi package spotify-mcp-jamiew - check the name against the project README before installing (PyPI has no namespace ownership)

registry namespace io.github.jamiew is GitHub-verified and matches the repo owner

03 · What Spotify can do

Prose above is summarized from the project's README and registry record - no invented capabilities.

What you can build

With this server connected, an agent can read your profile, search tracks, albums, artists, or playlists with filters and pagination, read up to 50 tracks, and read up to 50 artists.

Capability map

Tools grouped from the project's README - what Spotify lets an agent do.

read & search

9 tools - e.g. Read your profile; Search tracks, albums, artists, or playlists with filters and pagination; Read up to 50 artists; top tracks for a single artist

get_me · search_music · get_artist · get_album · get_playback_state · list_devices…

Tracks

8 tools - e.g. Read up to 50 tracks; individual reads when batching is unavailable; Read playlist tracks with pagination; Add up to 100 tracks

get_tracks · get_playlist_tracks · add_tracks_to_playlist · remove_tracks_from_playlist · get_saved_tracks · save_tracks…

Playlist

5 tools - e.g. Read playlist metadata without tracks; Create a private playlist; set public=true to publish; Change name, description, or visibility

get_playlist · create_playlist · update_playlist_details · reorder_playlist · unfollow_playlist

Queue

2 tools - e.g. Read now playing and upcoming tracks; Queue a track

get_queue · add_to_queue

Control

1 tool - e.g. Play, pause, skip, seek, volume, shuffle, and repeat

control_playback

Transfer

1 tool - e.g. Move playback to another device

transfer_playback

Saved

1 tool - e.g. Check up to 20 saved albums

check_saved_albums

Check

1 tool - e.g. Check up to 50 followed artists

check_following_artists

Latest releases

v0.7.0 · 2026-09-20

Fix library requests and followed-artist permission checks. · Create new playlists as private by default. · Simplify setup docs and add a new header.

v0.6.1 · 2026-09-17

Batch reads, library membership checks, and a library-write fix. · get_artist reads up to 50 artists per request, get_album up to 20; a withheld · batch route degrades per kind instead of disabling batching everywhere…

v0.6.0 · 2026-09-17

Tool renames for parity with the Cloudflare server. · Seven tools are renamed, with no aliases. Update any saved prompts or client · config that names them: · get_track_info -> get_tracks · get_artist_info ->…

04 · Who maintains Spotify

Spotify is maintained by jamiew. We track 2 MCP servers from jamiew - 2 actively maintained, 35 combined GitHub stars, oldest repo from Jan 2025. Full record: all servers from jamiew.

  1. Monarch MCP Server Query and update Monarch Money accounts, transactions, and budgets ★ 24

05 · Facts

category
API integration - ranked #60 of 292 actively-maintained API integration servers as of 2026-09-30.
release cadence
6 releases in the last 90 days (latest 2026-09-20)
registry
io.github.jamiew/spotify-mcp (active, first published 2026-05-29 · 7 versions)
packages
pypi:spotify-mcp-jamiew

06 · Spotify FAQ

Is Spotify still maintained?

Yes - as of 2026-09-30, its last commit was 2026-09-20 and it shipped 6 releases in the last 90 days. We re-verify nightly.

What can Spotify do?

With this server connected, an agent can read your profile, search tracks, albums, artists, or playlists with filters and pagination, read up to 50 tracks, and read up to 50 artists.

How do I install Spotify?

Run `uvx spotify-mcp-jamiew`. The README documents 3 environment variables (SPOTIFY_CLIENT_ID, SPOTIFY_CLIENT_SECRET, SPOTIFY_REDIRECT_URI) to set first. Set SPOTIFY_CLIENT_ID, SPOTIFY_CLIENT_SECRET, SPOTIFY_REDIRECT_URI before connecting. You can also paste the ready-made client config above.

Does Spotify run locally?

Yes - it's a stdio server: it runs on your machine (via uvx) with your user's permissions. Your data stays local unless the server itself calls external APIs.

07 · Alternatives to Spotify