Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
SPOTIFY_CLIENT_IDYesYour Spotify Client ID from the Spotify Developer Dashboard.
SPOTIFY_MCP_TOOLSETSNoComma-separated list of toolsets to load (core, social, discovery, power, all). Useful for clients with tool limits like Cursor.all
SPOTIFY_REDIRECT_URINoThe Redirect URI configured in the Spotify Developer Dashboard. Must match exactly.http://127.0.0.1:8888/callback
SPOTIFY_CLIENT_SECRETNoYour Spotify Client Secret. Optional; if provided, uses traditional OAuth, otherwise uses PKCE.

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
spotify_statusB

Check Spotify connection status, profile info, and current playback.

spotify_now_playingA

Get the currently playing track, playback state, and device info.

spotify_playC

Start or resume playback of a track URI, album/playlist context_uri, or just resume if neither given.

spotify_pauseB

Pause the current playback.

spotify_resumeC

Resume paused playback.

spotify_skip_nextC

Skip to the next track.

spotify_skip_previousC

Skip to the previous track.

spotify_add_to_queueC

Add a track or episode URI to the playback queue.

spotify_get_queueA

Get the current playback queue (now playing + upcoming tracks).

spotify_get_devicesA

List all available Spotify Connect devices.

spotify_set_volumeB

Set playback volume (0-100). Requires Premium.

spotify_seekA

Seek to a position (in milliseconds) in the currently playing track. Requires Premium.

spotify_set_repeatA

Set repeat mode: off, context, or track. Requires Premium.

spotify_toggle_shuffleB

Turn shuffle on or off. Requires Premium.

spotify_transfer_playbackC

Transfer playback to a different device. Requires Premium.

spotify_get_my_playlistsA

List your playlists (up to 50).

spotify_get_playlistA

Get playlist details and its first page of tracks.

spotify_get_playlist_tracksA

Get tracks from a playlist with pagination (limit up to 100, offset for paging).

spotify_create_playlistB

Create a new empty playlist with the given name.

spotify_add_to_playlistA

Add track URIs to a playlist (max 100 per call). Appends by default or inserts at position.

spotify_reorder_playlistB

Move tracks within a playlist (range_start to insert_before, range_length consecutive).

spotify_update_playlistA

Update a playlist's name, description, or public/private visibility.

spotify_follow_playlistD

Follow a playlist.

spotify_get_playlist_coverC

Get a playlist's cover image URLs.

spotify_check_playlist_followersA

Check if specific users follow a playlist (max 5 user IDs).

spotify_searchA

Search Spotify for tracks, artists, albums, or playlists. Supports field filters like artist:, genre:, year: in the query.

spotify_related_artistsB

Get up to 20 artists similar to a given artist.

spotify_discover_by_artistA

Discover tracks from an artist's related artists' recent albums (1-50).

spotify_discover_by_moodB

Discover tracks by mood (happy, sad, energetic, chill, focused, romantic, angry, party).

spotify_genre_explorerC

Explore a genre by finding its tracks and artists.

spotify_discover_deep_cutsB

Find an artist's deep cuts -- album tracks that were not released as singles.

spotify_top_tracksB

Get your top tracks by time range (short_term/medium_term/long_term), up to 50.

spotify_top_artistsA

Get your top artists by time range (short_term/medium_term/long_term), up to 50.

spotify_recently_playedA

Get your recently played tracks in reverse chronological order, up to 50.

spotify_get_saved_tracksA

Get your liked/saved tracks with pagination (limit up to 50, offset for paging).

spotify_save_tracksA

Save tracks to your Liked Songs (max 50 URIs per call).

spotify_get_saved_albumsA

Get your saved albums with pagination (limit up to 50, offset for paging).

spotify_save_albumsB

Save albums to your library (max 50 per call).

spotify_check_saved_tracksC

Check which tracks are in your Liked Songs (max 50 per call).

spotify_check_saved_albumsA

Check which albums are saved in your library (max 50 per call).

spotify_get_saved_episodesA

Get your saved podcast episodes (up to 50).

spotify_follow_artistsB

Follow one or more artists (max 50 per call).

spotify_get_followed_artistsC

Get your followed artists (up to 50).

spotify_check_following_artistsB

Check if you follow specific artists (max 50 per call).

spotify_check_following_usersC

Check if you follow specific Spotify users.

spotify_follow_usersC

Follow one or more Spotify users.

spotify_get_saved_showsB

Get your saved/followed podcasts and shows (up to 50).

spotify_get_showC

Get detailed information about a podcast or show.

spotify_get_show_episodesA

Get episodes of a show, newest first (up to 50).

spotify_save_showsC

Save shows to your library (max 50 per call).

spotify_check_saved_showsC

Check which shows are saved in your library (max 50 per call).

spotify_save_episodesA

Save podcast episodes to your library (max 50 per call).

spotify_get_episodeC

Get detailed information about a podcast episode.

spotify_get_trackC

Get detailed information about a track.

spotify_get_albumC

Get detailed information about an album including its tracklist.

spotify_get_artistC

Get detailed information about an artist.

spotify_get_userC

Get a Spotify user's public profile and public playlists.

spotify_get_artist_albumsC

List all albums, singles, and compilations for an artist.

spotify_deduplicate_playlistA

Find and optionally remove duplicate tracks from a playlist. Set dry_run=False to remove.

spotify_merge_playlistsC

Merge multiple playlists into one new playlist, removing duplicates by default.

spotify_split_playlist_by_artistA

Split a playlist into per-artist sub-playlists. Artists with fewer than 3 tracks go into a "Various" playlist.

spotify_playlist_diffB

Compare two playlists, showing tracks unique to each and tracks they share.

spotify_export_playlistC

Export a playlist as a formatted text list with artist, album, and duration for each track.

spotify_find_playlist_overlapsB

Scan all your playlists and find which pairs share tracks, ranked by overlap.

spotify_find_playlist_subsetsA

Scan all your playlists and find ones where one playlist is a near-subset of another. Threshold is the percentage of the smaller playlist's tracks that must exist in the larger.

spotify_absorb_playlistA

Merge unique tracks from a source playlist into a target playlist. Tracks already in target are skipped. Set dry_run=False to apply.

spotify_listening_reportB

Generate a listening report combining top tracks, top artists, genre breakdown, and recent activity.

spotify_playlist_analysisC

Analyze a playlist's composition including top artists, genre distribution, decades, and duration.

spotify_taste_evolutionB

Compare your top artists and genres across short, medium, and long term to identify taste trends.

spotify_smart_shuffleB

Reorder a playlist using a smart strategy: variety, alphabetical_artist, chronological, genre_variety, energy_arc, or reverse_chronological.

spotify_artist_deep_diveB

Get a comprehensive artist profile including genres, full discography, and related artists.

spotify_create_radioA

Create a radio-style playlist from a seed track or artist by sampling related artists' catalogs.

spotify_time_capsuleC

Snapshot your current top tracks into a private playlist as a musical time capsule.

spotify_vibe_playlistB

Create a playlist matching a mood (happy, sad, energetic, chill, focused, romantic, angry, party).

spotify_era_playlistC

Create a playlist of tracks from a specific decade (1960s through 2020s).

spotify_sort_playlistB

Sort a playlist by track_name, artist_name, album_name, duration, or date_added.

spotify_cleanup_playlistC

Find and optionally remove unavailable and duplicate tracks from a playlist. Set dry_run=False to apply.

spotify_interleave_playlistsA

Create a new playlist by round-robin interleaving tracks from 2-5 source playlists.

spotify_playlist_radioB

Generate a radio playlist from an existing playlist's top artists and their related artists, excluding existing tracks.

spotify_build_queueB

Add multiple tracks (max 50) to the playback queue in order. Requires an active device.

spotify_queue_from_playlistC

Queue tracks from a playlist, optionally shuffled. Requires an active device.

spotify_playlist_vibeB

Analyze a playlist's vibe, energy, and genre makeup using artist genre data.

spotify_find_vibe_matchesA

Find tracks that match a playlist's vibe by searching its top genres, excluding existing tracks.

spotify_listening_patternsA

Analyze recent listening patterns: time-of-day, day-of-week, sessions, and repeat plays.

spotify_taste_profileA

Build a genre taste profile with diversity score and niche artist detection from your top artists.

spotify_playlist_compareC

Compare 2-5 playlists side by side: shared tracks, shared artists, unique tracks, and size/duration.

spotify_playlist_freshnessA

Scan all your playlists and show when each was last updated, sorted by staleness (oldest first).

spotify_artist_timelineA

Map an artist's full release timeline grouped by year, with career span and release type counts.

spotify_artist_networkC

Map an artist's network of related artists. Depth 2 reveals bridge artists connecting different parts of the network.

spotify_find_songA

Find songs using a natural-language description. Parses quoted titles, "by artist", decade refs, and genre keywords.

spotify_sync_libraryA

Sync your Spotify library to a local index for AI-powered playlist curation.

Fetches all liked songs and tracks from playlists you created (skips followed/saved playlists by others). Run periodically to keep fresh.

Args: include_liked: Sync liked/saved songs. Default True. include_playlists: Sync your created playlists. Default True. force: Re-sync even if synced recently. Default False.

spotify_library_statsA

Get a summary of your synced library — artist counts, playlist names, and dates.

Returns your full artist landscape (compact) so the AI can reason about vibes, genres, and groupings without loading every track.

spotify_query_libraryA

Query your synced library with filters. Returns matching tracks with URIs.

All filters are combined with AND logic. All text matching is case-insensitive and supports partial matches.

Args: artists: Filter by artist names (partial match, case-insensitive). playlist_name: Filter to tracks from a specific playlist (partial match). added_after: Only tracks added after this date (YYYY-MM-DD). added_before: Only tracks added before this date (YYYY-MM-DD). source: "liked", "playlists", or "all" (default "all"). track_name: Filter by track name (partial match). album_name: Filter by album name (partial match). limit: Max results (default 200, max 500).

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/gupta-kush/spotify-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server