Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
SPOTIFY_CLIENT_IDNoYour Spotify app's Client ID. Overrides the one stored in the config file.
SPOTIFY_REDIRECT_PORTNoPort for the OAuth callback redirect. Default is 8888. Must match the registered redirect URI.

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
authenticateA

Connects the user's Spotify account via OAuth. Opens a browser on this machine for approval and stores tokens locally. Use when other tools report you are not authenticated, or to switch accounts.

playA

Plays music by free-text query (searches and starts the best match) or by Spotify URI. Handles "play some Radiohead", "play the album Kind of Blue", "play my Discover Weekly". Reports what it picked — relay that to the user so they can correct it.

playbackB

Transport controls for the active playback: pause, resume, next, previous, seek (value = seconds), volume (value = 0-100), shuffle (value = on/off), repeat (value = off/context/track).

now_playingA

Current track, artist, album, progress, device, and shuffle/repeat state.

queueC

action=add queues a track by query or URI; action=list shows what's playing and up next.

devicesA

action=list shows available Spotify devices; action=transfer moves playback to a device by name or id.

searchA

Searches the Spotify catalog. Use when the user wants options to choose from; for a direct 'play X' request, prefer the play tool. Results include URIs usable with play, queue, playlists, and library. Max 10 results per type (API limit).

get_playlistsB

Lists the user's playlists with item counts and URIs.

get_playlist_itemsA

Lists the tracks in one of the user's own or collaborative playlists (Spotify no longer exposes other users' playlist contents). Accepts a playlist id, URI, or URL.

modify_playlistA

action=create makes a new playlist (private by default); action=add_items appends track URIs to an existing playlist. Does not delete or remove anything.

libraryA

Saves, removes, or checks items in the user's Spotify library ('liked'). Works with any content URI: tracks, albums, artists (follow), shows, episodes. To save the current song, get its URI from now_playing first.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.8/5.0

Scored across 11 tools

Disambiguation5/5

Each tool has a clearly distinct purpose: authentication, device management, playlist operations, library management, playback control, queue management, and search. There is no overlap or ambiguity.

Naming Consistency3/5

Names are a mix of single verbs (play, search), nouns (devices, library, queue), and verb_noun patterns (get_playlists, now_playing). While readable, the lack of a consistent pattern reduces predictability.

Tool Count5/5

With 11 tools covering authentication, playback, library, playlists, queue, and search, the scope is well-balanced for a music streaming service. Each tool earns its place.

Completeness4/5

Most core workflows are covered: authentication, playback control, library management (save/remove/check), playlist creation and addition, queue, and search. Minor gaps include lack of playlist item removal or reordering.

Maintenance

ActivityStale
ResponsivenessNo issues