Skip to main content
Glama
panuhen

Spotify MCP Server

by panuhen

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
SPOTIPY_CLIENT_IDNoYour Spotify app client ID. Required for write operations (add_to_playlist, save_tracks, remove_saved_tracks). If not set, bundled client ID is used which only allows read and playback control.

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": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
playA

Play or resume music. No arguments: resume. A track: give uri. An album, playlist or artist: give context_uri. One of the user's playlists: give playlist. Use URIs from search.

play_likedB

Play the user's Liked Songs (their favourites), shuffled unless shuffle=false.

pauseC

Pause playback.

nextB

Skip to the next track.

previousC

Go back to the previous track.

seekC

Jump to a position in the current track. Needs position_ms.

set_volumeC

Set the volume. Needs volume, 0 to 100.

shuffleC

Turn shuffle on or off. Needs state.

repeatC

Set repeat mode. Needs state.

get_current_trackB

The track playing now.

get_playback_stateB

Player state: device, volume, shuffle, repeat, track.

get_queueC

The next tracks in the queue.

get_devicesA

List Spotify devices: id, name, active, volume.

searchA

Search Spotify. Needs query. Returns URIs for play and add_to_queue.

add_to_queueC

Add a track to the queue. Needs uri.

get_playlistsC

List the user's playlists.

get_playlist_tracksC

List a playlist's tracks. Needs playlist_id.

add_to_playlistC

Add tracks to a playlist. Needs playlist_id and uris.

save_tracksC

Add tracks to Liked Songs. Needs track_ids.

remove_saved_tracksB

Remove tracks from Liked Songs. Needs track_ids.

get_saved_tracksB

List Liked Songs, newest first.

like_currentA

Save the playing track to Liked Songs. Changes the user's library.

add_current_to_playlistA

Add the playing track to one of the user's playlists. Needs playlist. Skipped if already there. Changes the user's library.

find_playlistA

Find the user's playlists by name. Needs query. Returns id and uri.

remove_from_playlistA

Remove a track from one of the user's playlists. Needs playlist and track. Destructive: changes the user's library.

create_playlistA

Create a playlist. Needs name. Private unless public=true. Changes the user's library.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

B3.1/5.0

Scored across 26 tools

Disambiguation4/5

Most tools target a distinct resource or action, and descriptions specify required inputs (uri, track_ids, playlist_id). The main overlap is get_current_track vs get_playback_state, plus several convenience wrappers (like_current, add_current_to_playlist) that duplicate broader tools, but inputs make them distinguishable.

Naming Consistency4/5

All names use snake_case and are readable. Playback controls use bare verbs (play, pause, next, seek) while most others follow verb_noun (get_devices, add_to_queue), a minor deviation that does not impair predictability.

Tool Count3/5

26 tools is borderline heavy for a Spotify integration. Playback, queue, search, playlist, and library operations are broad, but several convenience wrappers (like_current, add_current_to_playlist) duplicate functionality of more general tools, so the set could be trimmed.

Completeness4/5

Core playback, queue, search, Liked Songs, and playlist creation/addition/removal are well covered. Gaps include playlist update/delete and explicit device transfer, but the main workflows are supported without dead ends.

Maintenance

ActivityMaintained
ResponsivenessNo issues