Skip to main content
Glama
seenws

spotify-mcp

by seenws

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
SPOTIFY_CLIENT_IDYesYour Spotify app Client ID, obtained from the Spotify Developer Dashboard.
SPOTIFY_CLIENT_SECRETYesYour Spotify app Client Secret, obtained from the Spotify Developer Dashboard.
SPOTIFY_MCP_TOKEN_FILENoOptional. Override the default token file location (default is ~/.config/spotify-mcp/token.json).

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
search_tracksA

Find tracks on Spotify and get their URIs. This is how you turn an artist/title you have in mind into something you can add to a playlist. Supports Spotify query syntax: artist:Portishead, year:1990-1999, genre:trip-hop, album:Dummy, and quoted phrases. Search one track at a time for precision. Spotify's recommendation and audio-feature endpoints no longer exist for this app. Pick the music yourself from your own knowledge, then use search_tracks to resolve each pick to a URI. Use get_my_taste to ground picks in what this user actually listens to.

get_my_tasteA

The user's actual listening history — the best available signal for what they like. Read this before building a playlist described in terms of the user's own taste ("music like what I listen to", "more of this vibe"), then choose similar music yourself. Spotify's recommendation and audio-feature endpoints no longer exist for this app. Pick the music yourself from your own knowledge, then use search_tracks to resolve each pick to a URI. Use get_my_taste to ground picks in what this user actually listens to.

list_my_playlistsA

The user's playlists, with IDs. Use this to find an existing playlist to edit when the user names one ("add these to my Focus playlist") instead of creating a new one.

get_playlistA

Full track listing of a playlist, with each track's URI and its 0-based position. Read this before editing so you know what is already there — it prevents duplicate adds and lets you remove exactly the right tracks.

create_playlistA

Create a new empty playlist, then fill it with add_tracks. Give it a name and a short description that reflects what the user asked for. Returns the playlist ID and its URL.

add_tracksA

Append tracks to a playlist (or insert at a position). Pass as many URIs as you like — they are batched automatically. Get URIs from search_tracks; do not invent them.

remove_tracksA

Remove every occurrence of the given tracks from a playlist. Batched automatically. Call get_playlist first to confirm the exact URIs present.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A4.3/5.0

Scored across 7 tools

Disambiguation5/5

Each tool targets a clearly distinct action: searching tracks, reading listening history, listing playlists, reading a playlist's contents, creating playlists, adding tracks, and removing tracks. The descriptions further reinforce boundaries, so an agent should not confuse them.

Naming Consistency5/5

All tool names follow a consistent verb_noun snake_case pattern: search_tracks, get_my_taste, list_my_playlists, get_playlist, create_playlist, add_tracks, remove_tracks. There are no mixed conventions or vague verbs.

Tool Count5/5

Seven tools is well-scoped for a Spotify playlist-management server. Each tool covers a necessary step in the core workflow without redundancy or bloat.

Completeness4/5

The playlist workflow is well covered: discover via search/taste, list/read playlists, create playlists, and add/remove tracks. Minor gaps like renaming or deleting playlists are missing, but they are not central to the apparent purpose.

Maintenance

ActivityMaintained
ResponsivenessNo issues