Spotify Integration
STDIOMCP server that lets you interact with Spotify through Claude.
MCP server that lets you interact with Spotify through Claude.
A simple Model Context Protocol (MCP) server that lets you interact with Spotify through Claude. This server enables Claude to search for songs, create playlists, get recommendations, and more using your Spotify account.
Tool Name | Description |
---|---|
set-spotify-credentials | Set your Spotify authentication credentials |
check-credentials-status | Check if your credentials are valid and who is logged in |
search-tracks | Search for tracks by name, artist, or keywords |
get-current-user | Get your Spotify profile information |
create-playlist | Create a new playlist on your account |
add-tracks-to-playlist | Add tracks to an existing playlist |
get-recommendations | Get recommendations based on seed tracks |
http://localhost:8888/callback
as a Redirect URI# Clone or download the project first cd spotify-mcp-server # Install dependencies npm install
Edit the spotify-auth.js
file to include your Client ID and Client Secret:
// Replace these with your Spotify app credentials const CLIENT_ID = "your_client_id_here"; const CLIENT_SECRET = "your_client_secret_here";
Then run the authentication script:
node spotify-auth.js
This will:
secrets.json
npm run build
Edit your Claude Desktop configuration file:
~/Library/Application Support/Claude/claude_desktop_config.json
%APPDATA%\Claude\claude_desktop_config.json
Add the following configuration:
{ "mcpServers": { "spotify": { "command": "node", "args": ["/full/path/to/spotify-mcp-server/build/spotify-mcp-server.js"] } } }
Replace /full/path/to/spotify-mcp-server
with the actual path to your project directory.
Close and reopen Claude Desktop to load the new configuration.
When you start a conversation with Claude, you'll first need to set your Spotify credentials:
secrets.json
file to get your credentialsset-spotify-credentials
tool to authenticateI want to connect to my Spotify account. Here are my credentials from secrets.json:
Tool: set-spotify-credentials
Parameters:
{
"clientId": "your_client_id",
"clientSecret": "your_client_secret",
"accessToken": "your_access_token",
"refreshToken": "your_refresh_token"
}
Check your account:
Can you check who I'm logged in as on Spotify?
Tool: get-current-user
Parameters: {}
Search for tracks:
Search for songs by Weekend
Tool: search-tracks
Parameters:
{
"query": "Taylor Swift",
"limit": 5
}
Create a playlist:
Create a new playlist called "My Pretty pretty girlfriend"
Tool: create-playlist
Parameters:
{
"name": "My Pretty pretty girlfriend",
"description": "For my girlfriend. Created with Claude and the Spotify MCP server"
}
Creating a playlist with songs:
I want to create a workout playlist with energetic songs. First, search for some high-energy songs. Then create a playlist called "Workout Mix" and add those songs to it.
Getting recommendations based on favorites:
I like the song "Blinding Lights" by The Weeknd. Can you search for it, then find similar songs, and create a playlist with those recommendations?
set-spotify-credentials
tool