Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| SPOTIFY_CLIENT_ID | Yes | Your Spotify Client ID from developer.spotify.com | |
| SPOTIFY_REDIRECT_URI | No | The redirect URI configured in your Spotify app | http://localhost:8888 |
| SPOTIFY_CLIENT_SECRET | Yes | Your Spotify Client Secret from developer.spotify.com |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| playback_control | Control Spotify playback. Args:
action: Action ('get', 'start', 'pause', 'skip')
track_id: Track ID to play (for 'start')
num_skips: Number of tracks to skip |
| search_tracks | Search Spotify for tracks, albums, artists, or playlists. Args:
query: Search query
qtype: Type ('track', 'album', 'artist', 'playlist')
limit: Max results |
| manage_queue | Manage playback queue. Args:
action: Action ('add' or 'get')
track_id: Track ID (for 'add') |
| get_item_info | Get detailed information about a Spotify item. Args:
item_id: Item ID
qtype: Type ('track', 'album', 'artist', 'playlist') |
| create_playlist | Create a new Spotify playlist. Args:
name: Playlist name
description: Playlist description
public: Whether playlist is public |
| add_tracks_to_playlist | Add tracks to a playlist. Args:
playlist_id: Playlist ID
track_uris: List of track URIs (up to 100) |
| get_user_playlists | Get current user's playlists. Args:
limit: Max playlists to return |
| remove_tracks_from_playlist | Remove tracks from a playlist. Args:
playlist_id: Playlist ID
track_uris: List of track URIs to remove |
| modify_playlist_details | Modify playlist details. Args:
playlist_id: Playlist ID
name: New playlist name (optional)
description: New playlist description (optional)
public: Whether playlist should be public (optional) |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| create_mood_playlist | Create a playlist based on mood and preferences. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| current_user | Current user's profile. |
| current_playback_resource | Current playback state. |