spotify-mcp
Control Spotify from Claude, Cursor, or any MCP client. 100+ tools for playback, playlists, discovery, and curation.
Install / Use
claude mcp add gupta-kush -- npx -y github:gupta-kush/spotify-mcpIf the server publishes to npm under a different name, use that package instead — check the repo README.
MCP Server
Model Context Protocol server
Quality Score
Category
AI & Machine LearningSupported Platforms
Our assessment of spotify-mcp
spotify-mcp scores 77/100 on our quality scale, 823rd of 966 AI & Machine Learning skills we index.
Its MCP Server is 17 KB long, well organised into 24 sections with 7 code examples: a thorough specification that gives an agent plenty to work with.
It has 10 GitHub stars, so there is little community track record yet; judge it on its content.
Maintenance, license and trust
- The repository was last updated about 7 months ago. That is recent enough to be usable, but agent tooling moves fast, so check the instructions against your agent's current version.
- It is released under the MIT license, a permissive license that allows use, modification and commercial use with attribution.
- Its trust signals score 91/100, with 1 caution from licensing, adoption, age or documentation. These come from repository metadata, not a code audit — read the skill file before letting an agent act on it.
spotify-mcp compared with similar skills
All 4 of these similar skills score higher than spotify-mcp; compare them before choosing.
| Skill | Score | Stars | Updated | Format |
|---|---|---|---|---|
| spotify-mcp (this skill)by gupta-kush | 77 | 10 | 7mo ago | MCP Server |
| claude-memby thedotmack | 100 | 101.6k | today | CLAUDE.md |
| Agent-Reachby Panniantong | 100 | 99.0k | 3d ago | CLAUDE.md |
| Understand-Anythingby Egonex-AI | 100 | 86.9k | 6d ago | CLAUDE.md |
| headroomby headroomlabs-ai | 100 | 75.9k | 1d ago | CLAUDE.md |
Frequently asked questions
- How do I install spotify-mcp?
- Run
claude mcp add gupta-kush -- npx -y github:gupta-kush/spotify-mcp. The install tabs above show the steps for each supported agent. - Which AI agents does spotify-mcp work with?
- It is written for Claude Code, Claude Desktop and Cursor, as a MCP Server file. Other agents that read the same format can often use it too.
- Is spotify-mcp safe to use?
- It is MIT-licensed and scores 91/100 on trust signals. Skills are instructions an agent will follow, so read the file before installing it and do not approve commands you do not understand.
- Is spotify-mcp still maintained?
- The repository was last updated about 7 months ago. That is recent enough to be usable, but agent tooling moves fast, so check the instructions against your agent's current version.
Skill content
View source on GitHubSpotify MCP Server
Control Spotify from Claude, Cursor, or any MCP client. 100+ tools for playback, search, playlist management, smart shuffle, vibe analysis, natural language song search, artist exploration, and library indexing. Just uvx spotify-mcp to get started.
Quick Start
1. Get a Spotify Client ID
Go to the Spotify Developer Dashboard, create an app, set the redirect URI to http://127.0.0.1:8888/callback, check Web API, and copy your Client ID. No client secret needed (PKCE auth).
2. Install and Configure
Claude Code (one command):
claude mcp add spotify -- uvx spotify-mcp
Then set your client ID: claude mcp add spotify -e SPOTIFY_CLIENT_ID=your_client_id -- uvx spotify-mcp
Claude Desktop (add to claude_desktop_config.json):
{
"mcpServers": {
"spotify": {
"command": "uvx",
"args": ["spotify-mcp"],
"env": {
"SPOTIFY_CLIENT_ID": "your_client_id"
}
}
}
}
Cursor / VS Code (same config, but load only core tools to stay under the 40-tool limit):
{
"mcpServers": {
"spotify": {
"command": "uvx",
"args": ["spotify-mcp", "--toolsets=core"],
"env": {
"SPOTIFY_CLIENT_ID": "your_client_id"
}
}
}
}
Or install with pip: pip install spotify-mcp
3. Authorize
The first time you use a Spotify tool, your browser opens for OAuth. Grant access and the token is cached locally.
Why this one?
There are 30+ Spotify MCP servers out there. Most have 10-15 tools covering play, pause, and search.
| | spotify-mcp | Typical server | |---|---|---| | Tools | 100+ | 5-15 | | Smart shuffle (6 strategies incl. energy arcs) | Yes | No | | Vibe engine (mood analysis without audio-features) | Yes | No | | Natural language song search | Yes | No | | Artist network mapping (100 related artists) | Yes | No | | Taste evolution tracking | Yes | No | | Library index (AI playlists from your own songs) | Yes | No | | Destructive tools stripped by default | Yes | No | | Merge / diff / deduplicate playlists | Yes | No | | Works after Feb 2026 API changes | Yes | Most broke | | PKCE auth (no client secret needed) | Yes | Rare |
What can you do with it?
Some things you can ask:
- "Play Bohemian Rhapsody"
- "Make my playlist start chill and build to high energy"
- "Find that sad song with strings by Pink Floyd from the 90s"
- "How has my music taste changed over time?"
- "Map Radiohead's related artist network"
- "Compare my Gym and Running playlists"
- "Clean up my old playlist" (removes unavailable tracks and duplicates)
- "What's the vibe of my Summer playlist?"
- "Create a radio playlist based on Radiohead"
- "When do I listen to music the most?"
Toolsets
All tools load by default, minus destructive tools (see Safety). For clients with tool limits, use --toolsets:
spotify-mcp --toolsets=core # ~27 tools: playback, playlists, search, library, browse, stats
spotify-mcp --toolsets=core,discovery # Add music discovery
spotify-mcp --toolsets=core,power # Add power tools (smart shuffle, vibe engine, etc.)
spotify-mcp --toolsets=all # All tools (default, destructive excluded)
spotify-mcp --toolsets=all,destructive # All tools including remove/unfollow
Or via environment variable: SPOTIFY_MCP_TOOLSETS=core,power
Available toolsets: core, social, discovery, power, destructive, all
Safety
Destructive tools (remove tracks, unfollow artists, delete content) are not loaded unless you opt in with --toolsets=all,destructive. Safe for auto-accept mode since the AI cannot call tools that don't exist.
Affected tools: spotify_remove_from_playlist, spotify_remove_saved_tracks, spotify_remove_saved_albums, spotify_remove_saved_shows, spotify_unfollow_playlist, spotify_unfollow_artists, spotify_unfollow_users
Even when enabled, destructive tools default to dry_run=True, showing a preview without executing. Pass dry_run=False to perform the action.
Tool Reference
<details> <summary><strong>Playback (15 tools)</strong></summary>| Tool | Description |
|------|-------------|
| spotify_status | Connection status and current playback |
| spotify_now_playing | Currently playing track details |
| spotify_play | Start playback (track, album, or playlist) |
| spotify_pause | Pause playback |
| spotify_resume | Resume playback |
| spotify_skip_next | Skip to next track |
| spotify_skip_previous | Skip to previous track |
| spotify_add_to_queue | Add a track to the queue |
| spotify_get_queue | View the playback queue |
| spotify_get_devices | List available Spotify Connect devices |
| spotify_set_volume | Set volume (0-100) |
| spotify_seek | Seek to a position in the current track |
| spotify_set_repeat | Set repeat mode (off/context/track) |
| spotify_toggle_shuffle | Toggle shuffle on or off |
| spotify_transfer_playback | Transfer playback to another device |
| Tool | Description |
|------|-------------|
| spotify_get_my_playlists | List your playlists |
| spotify_get_playlist | Get playlist details and tracks |
| spotify_get_playlist_tracks | Get playlist tracks with pagination |
| spotify_create_playlist | Create a new playlist |
| spotify_add_to_playlist | Add tracks to a playlist |
| spotify_remove_from_playlist | Remove tracks from a playlist |
| spotify_reorder_playlist | Move tracks within a playlist |
| spotify_update_playlist | Update name, description, or visibility |
| spotify_follow_playlist | Follow a playlist |
| spotify_unfollow_playlist | Unfollow a playlist |
| spotify_get_playlist_cover | Get the playlist's cover image URL |
| spotify_check_playlist_followers | Check if users follow a playlist |
| Tool | Description |
|------|-------------|
| spotify_search | Search for tracks, artists, albums, or playlists |
| spotify_related_artists | Find artists similar to a given artist |
| spotify_discover_by_artist | Discover tracks via related artists |
| spotify_discover_by_mood | Find tracks matching a mood |
| spotify_genre_explorer | Explore tracks and artists in a genre |
| spotify_discover_deep_cuts | Find album-only tracks (not singles) |
| Tool | Description |
|------|-------------|
| spotify_top_tracks | Your top tracks by time range |
| spotify_top_artists | Your top artists by time range |
| spotify_recently_played | Recent listening history |
| spotify_listening_patterns | When you listen (hour and day distributions) |
| spotify_taste_profile | Genre diversity and niche artist analysis |
| spotify_playlist_compare | Compare multiple playlists side by side |
| spotify_playlist_freshness | When each playlist was last updated, sorted by staleness |
| Tool | Description |
|------|-------------|
| spotify_get_saved_tracks | Your liked/saved tracks |
| spotify_save_tracks | Save tracks to Liked Songs |
| spotify_remove_saved_tracks | Remove tracks from Liked Songs |
| spotify_get_saved_albums | Your saved albums |
| spotify_save_albums | Save albums to library |
| spotify_remove_saved_albums | Remove albums from library |
| spotify_check_saved_tracks | Check if tracks are in Liked Songs |
| spotify_check_saved_albums | Check if albums are in your library |
| spotify_get_saved_episodes | Your saved podcast episodes |
| Tool | Description |
|------|-------------|
| spotify_follow_artists | Follow artists |
| spotify_unfollow_artists | Unfollow artists |
| spotify_get_followed_artists | List your followed artists |
| spotify_check_following_artists | Check if you follow specific artists |
| spotify_check_following_users | Check if you follow specific users |
| spotify_follow_users | Follow Spotify users |
| spotify_unfollow_users | Unfollow Spotify users |
| Tool | Description |
|------|-------------|
| spotify_get_saved_shows | Your saved podcasts and shows |
| spotify_get_show | Get show details |
| spotify_get_show_episodes | List episodes of a show |
| spotify_save_shows | Save shows to your library |
| spotify_remove_saved_shows | Remove shows from your library |
| spotify_check_saved_shows | Check if shows are in your library |
| spotify_save_episodes | Save individual episodes |
| spotify_get_episode | Get episode details (duration, resume point) |
| Tool | Description |
|------|-------------|
| spotify_get_track | Full track details (popularity, ISRC, preview URL) |
| spotify_get_album | Album details with full tracklist |
| spotify_get_artist | Artist profile (followers, popularity, genres) |
| spotify_get_artist_albums | List an artist's albums, singles, and compilations |
| spotify_get_user | User profile with public playlists |
| Tool | Description |
|------|-------------|
| spotify_merge_playlists | Merge multiple playlists into one |
| spotify_split_playlist_by_artist | Split a playlist by artist |
| spotify_deduplicate_playlist | Remove duplicate tracks |
| spotify_export_playlist | Export playlist data |
| spotify_playlist_diff | Compare track differences between playlists |
| spotify_find_playlist_overlaps | Scan all playlists for shared tracks |
| spotify_find_playlist_subsets | Find playlists that are subsets of others |
| spotify_absorb_playlist | Merge unique tracks from one playlist into another |
| Tool | Description |
|------|-------------|
| spotify_listening_report | Full listening profile with genres and stats |
| spotify_playlist_analysis | Analyze playlist composition |
| spotify_taste_evolution | How your taste has changed over time |
| Tool | Description |
|------|-------------|
| spotify_smart_shuffle | Reorder a playlist: variety, alphabetical_artist, chronological, genre_variety, energy_arc, reverse_chronological |
| Tool | Description |
|------|-------------|
| spotify_create_radio | Create a radio playlist from a seed track or artist |
| spotify_time_capsule | Snapshot your current top tracks into a playlist |
| spotify_vibe_playlist | C
Truncated for display — read the full file on GitHub.
Related Skills
claude-mem
101.6kPersistent Context Across Sessions for Every Agent – Captures everything your agent does during sessions, compresses it with AI, and injects relevant context back into future sessions. Works with Claude Code, OpenClaw, Codex, Gemini, Hermes, Copilot, OpenCode + More
Agent-Reach
99.0kGive your AI agent eyes to see the entire internet. Read & search Twitter, Reddit, YouTube, GitHub, Bilibili, XiaoHongShu — one CLI, zero API fees.
Understand-Anything
86.9kGraphs that teach > graphs that impress. Turn any code into an interactive knowledge graph you can explore, search, and ask questions about. Works with Claude Code, Codex, Cursor, Copilot, Gemini CLI, and more.
headroom
75.9kCompress tool outputs, logs, files, and RAG chunks before they reach the LLM. 20% fewer tokens for coding agents, 60-95% fewer tokens for JSON, same answers. Library, proxy, MCP server.
Languages
Trust signals
From repository metadata: license, adoption, age and documentation. Not a code audit — see the Safety scan above for what the skill file itself contains.
