Navigation
Spotify MCP: AI-Powered Curation & Control - MCP Implementation

Spotify MCP: AI-Powered Curation & Control

Empower your LLM to play, control, and curate Spotify like a music genius—seamless AI integration for endless personalized soundscapes. 🎵" )

Research And Data
4.2(176 reviews)
264 saves
123 comments

82% of users reported increased productivity after just one week

About Spotify MCP

What is Spotify MCP: AI-Powered Curation & Control?

Spotify MCP is an open-source server implementation designed to integrate the Claude AI platform with Spotify's music streaming ecosystem. Leveraging the Spotipy API framework, this tool empowers developers to automate and enhance music playback experiences through programmatic control. The system enables dynamic interaction with Spotify's core features, bridging AI-driven decision-making with real-time audio streaming capabilities.

How to use Spotify MCP: AI-Powered Curation & Control?

To operationalize Spotify MCP, developers must first configure Spotify API credentials via the developer dashboard. This involves creating an application with localhost redirect URI and specifying Web Playback SDK usage. The project is executed locally by cloning the repository and modifying the Claude configuration file to reference the server's execution path. Environment variables for client authentication are required to establish secure API connections.

Spotify MCP Features

Key Features of Spotify MCP: AI-Powered Curation & Control?

  • Programmatic playback control (start/pause/skip)
  • Granular content discovery with search APIs for tracks/albums/artists/playlists
  • Metadata extraction for audio content analysis
  • Dynamic queue management with real-time updates
  • Integration hooks for future AI-driven recommendation systems

Use cases of Spotify MCP: AI-Powered Curation & Control?

This framework enables scenarios such as:

  • Automated playlist curation based on AI-generated preferences
  • Context-aware music transitions during voice assistant interactions
  • Multi-device playback coordination through API orchestration
  • Custom recommendation engines leveraging Spotify's catalog
  • Error-handling workflows for streaming interruptions

Spotify MCP FAQ

FAQ from Spotify MCP: AI-Powered Curation & Control?

How do I handle API deprecation risks? The project team monitors Spotify API changes closely. Current development focuses on maintaining core functionality despite recent endpoint retirements.

Can this run in cloud environments? Official ephemeral deployment support is pending, but local Docker configurations are a viable interim solution.

What debugging tools are recommended? The MCP Inspector provides end-to-end visibility by attaching to the server's STDIO stream for real-time API call tracing.

Are there security safeguards? OAuth2 flow implementation and environment variable encryption practices mitigate credential exposure risks.

Content

spotify-mcp MCP server

MCP project to connect Claude with Spotify. Built on top of spotipy-dev's API.

Features

  • Start, pause, and skip playback
  • Search for tracks/albums/artists/playlists
  • Get info about a track/album/artist/playlist
  • Manage the Spotify queue

Demo

Make sure to turn on audio

https://github.com/user-attachments/assets/20ee1f92-f3e3-4dfa-b945-ca57bc1e0894

Configuration

Getting Spotify API Keys

Create an account on developer.spotify.com. Navigate to the dashboard. Create an app with redirect_uri as http://localhost:8888. (You can choose any port you want but you must use http and localhost). I set "APIs used" to "Web Playback SDK".

Run this project locally

This project is not yet set up for ephemeral environments (e.g. uvx usage). Run this project locally by cloning this repo

bash git clone https://github.com/modelcontextprotocol/servers.git

Add this tool as a mcp server.

On MacOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json On Windows: %APPDATA%/Claude/claude_desktop_config.json

json "spotify": { "command": "uv", "args": [ "--directory", "/path/to/spotify_mcp", "run", "spotify-mcp" ], "env": { "SPOTIFY_CLIENT_ID": YOUR_CLIENT_ID, "SPOTIFY_CLIENT_SECRET": YOUR_CLIENT_SECRET, "SPOTIFY_REDIRECT_URI": "http://localhost:8888" } }

TODO

Unfortunately, a bunch of cool features have now been deprecated from the Spotify API. Most new features will be relatively minor or for the health of the project:

  • tests.
  • adding API support for managing playlists.
  • adding API support for paginated search results/playlists/albums.

Deployment

(todo)

Building and Publishing

To prepare the package for distribution:

  1. Sync dependencies and update lockfile: bash uv sync

  2. Build package distributions: bash uv build

This will create source and wheel distributions in the dist/ directory.

  1. Publish to PyPI: bash uv publish

Note: You'll need to set PyPI credentials via environment variables or command flags:

  • Token: --token or UV_PUBLISH_TOKEN
  • Or username/password: --username/UV_PUBLISH_USERNAME and --password/UV_PUBLISH_PASSWORD

Debugging

Since MCP servers run over stdio, debugging can be challenging. For the best debugging experience, we strongly recommend using the MCP Inspector.

You can launch the MCP Inspector via npm with this command:

bash npx @modelcontextprotocol/inspector uv --directory /Users/varun/Documents/Python/spotify_mcp run spotify-mcp

Upon launching, the Inspector will display a URL that you can access in your browser to begin debugging.

Related MCP Servers & Clients