Spotify MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| HTTP_BRIDGE_PORT | No | The port for the HTTP bridge server | 3001 |
| SPOTIFY_CLIENT_ID | Yes | Your Spotify Client ID from the Spotify Developer Dashboard | |
| HTTP_BRIDGE_API_KEY | No | Optional API key for authenticating HTTP bridge requests | |
| SPOTIFY_REDIRECT_URI | No | The redirect URI configured in your Spotify app settings | http://localhost:3000/callback |
| SPOTIFY_CLIENT_SECRET | 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
Server capabilities have not been inspected yet.
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| play_playlistC | Play a Spotify playlist by name |
| play_albumC | Play a Spotify album by name and optional artist |
| play_trackC | Play a specific track by name and optional artist |
| play_random_songC | Play a random song from Spotify |
| search_musicC | Search for music (tracks, albums, artists) on Spotify |
| control_playbackA | Control Spotify playback (play, pause, skip, volume). Note: skip-next and skip-previous will only skip once per call. |
| get_current_playingB | Get information about the currently playing track |
| set_sleep_timerB | Set a sleep timer to automatically pause playback after specified minutes |
| cancel_sleep_timerC | Cancel an active sleep timer |
| get_active_timersB | Get list of active sleep timers |
| get_devicesA | Get list of available Spotify devices and the current default device |
| set_default_deviceB | Set the default Spotify device ID to use for all playback operations |
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 12 tools
Most tools have distinct purposes, but there is some potential overlap between playback control tools. The 'control_playback' tool handles play/pause/skip/volume, while 'play_track', 'play_album', 'play_playlist', and 'play_random_song' are all specific play initiation tools that could potentially be confused with the play function within 'control_playback'. However, the descriptions clarify their specific use cases well enough to avoid major confusion.
All tool names follow a consistent verb_noun pattern with snake_case throughout. The naming is highly predictable and readable, with clear action-object pairs like 'get_current_playing', 'set_sleep_timer', 'play_album', and 'search_music'. There are no deviations from this consistent convention.
With 12 tools, this server is well-scoped for Spotify control functionality. The count is appropriate for covering playback control, device management, search capabilities, and sleep timer features. Each tool appears to serve a distinct purpose that justifies its inclusion in the set.
The tool set provides excellent coverage of core Spotify functionality including playback control, device management, search, and sleep timers. The only minor gap is the lack of tools for playlist/library management (creating playlists, adding/removing tracks) and user profile operations, but the existing tools cover the most essential workflows for music playback and control.