playlist-agent
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@playlist-agentgenerate a playlist for a road trip"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Playlist MCP Agent
Create, manage, and optimize Spotify playlists through natural language using AI and MCP.
Prerequisites
Python 3.12+
Spotify Developer app
Create an app at https://developer.spotify.com/dashboard
Copy the Client ID and Client Secret
Add redirect URI:
http://127.0.0.1:8888/callbackAdd your Spotify account under User Management (required for write operations in Development Mode)
Related MCP server: Personal Assistant MCP Server
Setup
python -m venv .venv
source .venv/bin/activate
pip install -e ".[dev,llm]"
cp .env.example .env
# Edit .env with your Spotify credentialsAuthenticate with Spotify
Run once to save a refresh token locally:
python authenticate.pyTokens are stored at:
~/.playlist_agent/tokens.jsonRun the MCP Server
Streamable HTTP (Recommended)
python server.py --httpServer URL:
http://127.0.0.1:8080/mcpStdio Mode (Claude Desktop)
python server.py --stdioConnect to Claude Desktop
Edit:
~/Library/Application Support/Claude/claude_desktop_config.jsonAdd:
{
"mcpServers": {
"playlistAgent": {
"command": "/absolute/path/to/.venv/bin/python",
"args": [
"/absolute/path/to/server.py",
"--stdio"
]
}
}
}Example:
{
"mcpServers": {
"playlistAgent": {
"command": "/Users/amankumar/Documents/projects/playlistAgent/.venv/bin/python",
"args": [
"/Users/amankumar/Documents/projects/playlistAgent/server.py",
"--stdio"
]
}
}
}Restart Claude Desktop after updating the configuration.
Verify Claude Connection
Check logs:
~/Library/Logs/Claude/Successful startup should show:
Server started and connected successfullyConnect to Cursor
Add an MCP server with:
Type: MCP (Streamable HTTP)
URL:
http://127.0.0.1:8080/mcp
Example Cursor config:
{
"mcpServers": {
"playlist-agent": {
"url": "http://127.0.0.1:8080/mcp"
}
}
}MCP Tools
Tool | Description |
spotify_login | Check Spotify auth status |
search_track | Search Spotify tracks |
create_playlist | Create a new playlist |
add_tracks | Add tracks to a playlist |
get_playlist | Fetch playlist metadata and tracks |
generate_playlist | Generate a playlist from a natural-language prompt |
remove_tracks | Remove tracks from a playlist |
modify_playlist | Edit a playlist using natural language |
analyze_playlist | Analyze mood, energy, and diversity |
recommend_tracks | Recommend tracks based on a playlist |
optimize_playlist | Improve a playlist for energy, calm, or diversity |
Smoke Test (Phase 1)
After authenticating:
python smoke_test.pyTests
pytestIntegration tests:
RUN_INTEGRATION=1 pytest -m integrationRequires a valid Spotify authentication setup.
Environment Variables
See .env.example for all supported options.
LLM generation (Phase 3+) requires:
LLM_PROVIDER=openaior
LLM_PROVIDER=anthropicand the corresponding API key.
Architecture
Claude / Cursor / ChatGPT
│
▼
PlaylistAgent MCP
│
┌───────┼────────┐
▼ ▼ ▼
Spotify LLM Recommendation
API Provider EngineRoadmap
Phase 1
Spotify OAuth
Search tracks
Create playlists
Add tracks
Phase 2
MCP integration
Claude Desktop support
Cursor support
Phase 3
AI playlist generation
Mood and genre understanding
Phase 4
Playlist editing
Playlist optimization
Recommendation engine
Phase 5
Taste profile engine
Personalized playlist memory
Advanced music discovery
This server cannot be deployed
Maintenance
Related MCP Connectors
Manage Superlist tasks and lists in plain language from any MCP-compatible AI agent.
AI playlist engine that turns music prompts into real YouTube playlists and filters bad versions.
Generate AI music via the Lacuna Music API from MCP clients like Claude Desktop & Code.
YouTube transcripts, search, channel browsing, and playlists for AI agents via MCP.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables interaction with Todoist through the MCP interface, providing full CRUD operations for tasks and projects including creating, updating, completing, and filtering tasks with natural language commands.6 npmMIT
- FlicenseNot gradedqualityDmaintenanceEnables users to manage tasks with priorities, perform calculations with history, generate secure passwords, and analyze text, all through MCP tools, resources, and prompts.1-
- AlicenseNot gradedqualityDmaintenanceEnables natural language interaction with MySQL databases through MCP, supporting SQL execution, schema exploration, and database management via tools, resources, and prompts.5MIT
- AlicenseNot gradedqualityDmaintenanceDynamically generates MCP tools from any OData or OpenAPI spec, enabling natural-language queries via SAP AI Core.MIT