MCP Spotify Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| clientId | Yes | Your Spotify client ID from the Spotify Developer Dashboard | |
| redirectUri | Yes | Your redirect URI (e.g., http://127.0.0.1:8088/callback) | |
| clientSecret | Yes | Your Spotify client secret from the Spotify Developer Dashboard |
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
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| searchSpotifyB | Search for tracks, albums, artists, or playlists on Spotify |
| getNowPlayingA | Get information about the currently playing track on Spotify |
| getMyPlaylistsB | Get a list of the current user's playlists on Spotify |
| getPlaylistTracksB | Get a list of tracks in a Spotify playlist |
| getRecentlyPlayedB | Get a list of recently played tracks on Spotify |
| playMusicB | Start playing a Spotify track, album, artist, or playlist |
| pausePlaybackA | Pause Spotify playback on the active device |
| skipToNextA | Skip to the next track in the current Spotify playback queue |
| skipToPreviousA | Skip to the previous track in the current Spotify playback queue |
| createPlaylistB | Create a new playlist on Spotify |
| addTracksToPlaylistC | Add tracks to a Spotify playlist |
| resumePlaybackB | Resume Spotify playback on the active device |
| addToQueueA | Adds a track, album, artist or playlist to the playback queue |
| getAccessTokenA | Fetches a valid Spotify access token and refresh token using the clientId and clientSecret from spotify-config.json, and updates spotify-config.json. |
| refreshAccessTokenA | Attempts to refresh the Spotify access token using the refresh token from spotify-config.json. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 15 tools
Each tool targets a distinct resource and action, from search and playback control to playlist management and auth. There is no functional overlap that would cause an agent to choose the wrong tool for a given intent.
All tools follow a consistent camelCase verb-noun pattern (e.g., searchSpotify, getNowPlaying, createPlaylist, addTracksToPlaylist). Even the auth tools fit the pattern, making the set predictable and easy to navigate.
With 15 tools, the server is well-scoped for a Spotify integration covering search, playback, playlists, and authentication. Every tool has a clear purpose, and the count remains within the ideal range without unnecessary redundancy.
The server covers core workflows like searching, playing, pausing, and managing playlists, but notable gaps exist such as removing tracks from a playlist, deleting playlists, or controlling volume. These missing operations will require agents to work around limitations for full lifecycle management.