Spotify MCP Server

Integrations

  • Enables searching for tracks, viewing Spotify profiles, creating and managing playlists, adding tracks to playlists, and getting personalized music recommendations using a Spotify account.

Spotify MCP Server

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.

Features

  • Search for tracks on Spotify
  • View your Spotify profile
  • Create playlists
  • Add tracks to playlists
  • Get personalized music recommendations

Tools Available

Tool NameDescription
set-spotify-credentialsSet your Spotify authentication credentials
check-credentials-statusCheck if your credentials are valid and who is logged in
search-tracksSearch for tracks by name, artist, or keywords
get-current-userGet your Spotify profile information
create-playlistCreate a new playlist on your account
add-tracks-to-playlistAdd tracks to an existing playlist
get-recommendationsGet recommendations based on seed tracks

Setup Instructions

1. Prerequisites

  • Node.js v16 or higher
  • npm
  • A Spotify account
  • A registered Spotify Developer application

2. Create a Spotify Developer App

  1. Go to Spotify Developer Dashboard
  2. Log in with your Spotify account
  3. Click "Create an App"
  4. Fill in the app name and description
  5. Add http://localhost:8888/callback as a Redirect URI
  6. Note your Client ID and Client Secret

3. Install the Project

# Clone or download the project first cd spotify-mcp-server # Install dependencies npm install

4. Get Your Spotify Tokens

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:

  1. Open a URL in your browser
  2. Prompt you to log in to Spotify
  3. Ask for your permission to access your account
  4. Save the tokens to secrets.json

5. Build the MCP Server

npm run build

6. Configure Claude Desktop

Edit your Claude Desktop configuration file:

  • On macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • On Windows: %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.

7. Restart Claude Desktop

Close and reopen Claude Desktop to load the new configuration.

Usage

When you start a conversation with Claude, you'll first need to set your Spotify credentials:

  1. Look at your secrets.json file to get your credentials
  2. Use the set-spotify-credentials tool to authenticate
  3. Then use any of the other Spotify tools

Example Prompts

Setting Up Credentials

I 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" }

Basic Commands

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" }

Multi-Step Tasks

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?

Troubleshooting

  • Error: No access token available: You need to set your credentials first using the set-spotify-credentials tool
  • Authentication failures: Your tokens may have expired. Run the auth script again to get fresh tokens
  • Invalid credentials: Double check that you're using the correct Client ID and Client Secret

Notes

  • The server stores credentials in memory only
  • You'll need to set credentials each time you start a new conversation
  • If Claude Desktop restarts, you'll need to set credentials again

You must be authenticated.

A
security – no known vulnerabilities
F
license - not found
A
quality - confirmed to work

local-only server

The server can only run on the client's local machine because it depends on local resources.

Enables Claude to interact with Spotify by searching songs, creating playlists, getting recommendations, and managing your music through your Spotify account.

  1. Features
    1. Tools Available
      1. Setup Instructions
        1. 1. Prerequisites
        2. 2. Create a Spotify Developer App
        3. 3. Install the Project
        4. 4. Get Your Spotify Tokens
        5. 5. Build the MCP Server
        6. 6. Configure Claude Desktop
        7. 7. Restart Claude Desktop
      2. Usage
        1. Example Prompts
          1. Setting Up Credentials
          2. Basic Commands
          3. Multi-Step Tasks
        2. Troubleshooting
          1. Notes

            Related MCP Servers

            • A
              security
              F
              license
              A
              quality
              A server that connects Claude with Spotify, allowing users to control playback, search content, get information about tracks/albums/artists/playlists, and manage the Spotify queue.
              Last updated -
              4
              273
              Python
              • Apple
            • A
              security
              F
              license
              A
              quality
              Connects Claude with Spotify, allowing users to control playback, search for content, get music information, and manage the Spotify queue.
              Last updated -
              8
              1
              Python
              • Apple
            • -
              security
              F
              license
              -
              quality
              Connects Claude with Spotify, enabling playback control, search functionality, and queue management through Spotify's API.
              Last updated -
              Python
              • Apple
            • -
              security
              F
              license
              -
              quality
              Connects Claude with Spotify to control playback, search music, get track information, and manage the queue through conversation.
              Last updated -
              Python

            View all related MCP servers

            ID: ho9epeqejw