Skip to main content
Glama
suhajdab

Spotify Playlist MCP

by suhajdab

Spotify Playlist MCP

Ein lokaler STDIO-MCP-Server zum sicheren Kuratieren von Spotify-Playlists aus geplanten Codex-Desktop-Aufgaben. Er kann eigene Playlists einsehen, Spotify-Titel suchen, Playlist-Metadaten aktualisieren und Titel über einen begrenzten Plan/Anwenden-Workflow hinzufügen oder entfernen.

Sicherheitsmodell

  • Liest Spotify-Anmeldedaten und Sicherheitseinstellungen nur aus der ignorierten .env dieses Projekts, mit optionalen Prozessebenen-Überschreibungen.

  • Speichert das OAuth-Token unter ~/.config/spotify-playlist-mcp/token.json mit Dateimodus 0600.

  • Verweigert jeden Schreibvorgang, es sei denn, die Playlist-ID erscheint in SPOTIFY_ALLOWED_PLAYLIST_IDS.

  • Überprüft, dass der authentifizierte Benutzer die Playlist besitzt.

  • Begrenzt jeden Plan mit SPOTIFY_MAX_CHANGES_PER_PLAN, Standard: 10 betroffene Titel.

  • Bindet Pläne an die aktuelle Spotify-snapshot_id, lässt sie nach 10 Minuten ablaufen und erlaubt nur eine einzige Anwendung.

  • Verbraucht einen Plan vor dem ersten Schreibvorgang, sodass ein teilweise angewendeter Vorgang nicht versehentlich wiederholt werden kann.

Spotify-Refresh-Tokens laufen derzeit sechs Monate nach der Autorisierung ab. spotify_auth_status meldet die verbleibende Zeit, damit eine geplante Aufgabe vor der erneuten Autorisierung warnen kann. Siehe Spotifys Leitfaden für Refresh-Tokens.

Related MCP server: MCP Spotify Server

Tools

Tool

Typ

Zweck

spotify_auth_status

Lesen

Autorisierung und Alter des Refresh-Tokens melden, ohne Anmeldedaten zurückzugeben

spotify_list_owned_playlists

Lesen

Eigene Playlists, Sichtbarkeit, Anzahl, Snapshots und Links auflisten

spotify_search_tracks

Lesen

Nach Kandidatentiteln suchen, maximal 10 Ergebnisse pro Anfrage

spotify_get_playlist

Lesen

Aktuelle Playlist-Metadaten und abspielbare Titelobjekte zurückgeben

spotify_plan_playlist_changes

Lesen

Hinzufügungen, Entfernungen, Name, Beschreibung oder Sichtbarkeitsänderungen validieren und in der Vorschau anzeigen

spotify_apply_playlist_plan

Schreiben

Einen genauen, nicht abgelaufenen, einmaligen Plan anwenden

Titelhinzufügungen werden angehängt. URI-Entfernungen entfernen jedes passende Vorkommen, und die Auswirkungsanzahl spiegelt dieses Verhalten wider. Der Server setzt absichtlich keine Massenersetzung, beliebige Anfragen, Playlist-Löschung oder ungeplante Schreibvorgänge aus.

Installation und Überprüfung

source ~/.nvm/nvm.sh
nvm use 24.14.0
npm install
npm test
npm run typecheck
npm run build
npm audit

Einmalige Spotify-Autorisierung

Die Redirect-URI in .env muss exakt mit der Einstellung im Spotify-Dashboard übereinstimmen. Der aktuelle Loopback-Callback ist http://127.0.0.1:3000/auth/callback.

npm run auth

Öffnen Sie die gedruckte Spotify-URL und genehmigen Sie die Berechtigungen. Der Befehl empfängt den Loopback-Callback und speichert das Token privat. Überprüfen Sie den Status, ohne Anmeldedaten preiszugeben:

node dist/auth-cli.js --status

Spotify erfordert derzeit alle sechs Monate eine erneute Autorisierung, da das Aktualisieren eines Access-Tokens die Lebensdauer des Refresh-Tokens nicht verlängert.

Codex-Desktop-Konfiguration

Die Desktop-App, die CLI und die IDE-Erweiterung teilen sich ~/.codex/config.toml. Eine geplante Desktop-Aufgabe kann diesen STDIO-Server direkt starten:

[mcp_servers.spotify-playlists]
command = "/absolute/path/to/node"
args = ["/absolute/path/to/spotify-playlist-mcp/dist/index.js"]
cwd = "/absolute/path/to/spotify-playlist-mcp"
enabled = true
required = true
default_tools_approval_mode = "auto"
tool_timeout_sec = 60

[mcp_servers.spotify-playlists.env]
SPOTIFY_ALLOWED_PLAYLIST_IDS = "replace-with-owned-playlist-id"
SPOTIFY_MAX_CHANGES_PER_PLAN = "10"

[mcp_servers.spotify-playlists.tools.spotify_apply_playlist_plan]
approval_mode = "approve"

Starten Sie die ChatGPT-Desktop-App nach der Änderung der MCP-Konfiguration neu. Lassen Sie den Computer eingeschaltet und die App laufen, wenn eine geplante Aufgabe den lokalen Server benötigt. Siehe die offizielle Codex-MCP-Konfiguration und die Dokumentation zu geplanten Aufgaben.

Lassen Sie SPOTIFY_ALLOWED_PLAYLIST_IDS leer, bis die gewünschte öffentliche Playlist existiert und ihre genaue ID überprüft wurde. Mehrere IDs können durch Kommas getrennt werden.

Vorgeschlagener Prompt für geplante Aufgaben

Use the Spotify playlist MCP to curate only the configured allowlisted playlist.
First check spotify_auth_status and stop with a warning when authorization is missing or due within 14 days.
Inspect the current playlist before searching for candidates.
Follow the playlist's stated audience and description.
Do not remove protected anchor tracks unless the task prompt explicitly names them.
Make no more than the configured change cap.
Create a playlist change plan, report its additions, removals, metadata updates, and warnings, then apply that exact plan only when it matches these rules.
Report the final snapshot ID and Spotify link.

Testen Sie diesen Prompt manuell, bevor Sie ihn planen. Geplante Ausführungen laufen unbeaufsichtigt, daher darf das Mutationswerkzeug nicht so konfiguriert sein, dass es um Genehmigung fragt.

Entwicklung

npm test
npm run typecheck
npm run build

Tests verwenden In-Memory-Spotify-Fakes und einen In-Memory-MCP-Transport. Kein Test ruft Spotify auf oder liest die echte Token-Datei.

Lizenz

MIT

A
license - permissive license
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    A
    quality
    C
    maintenance
    An MCP server for bulk Spotify operations enabling batch playlist creation, library exports, and large-scale library management with confidence scoring and human-in-the-loop for uncertain matches.
    33
    2
    MIT
  • F
    license
    A
    quality
    D
    maintenance
    A lightweight MCP server that enables AI assistants like Cursor and Claude to control Spotify playback, playlists, and manage tokens via OAuth.
    15
    2
  • F
    license
    Not graded
    quality
    C
    maintenance
    A lightweight MCP server that enables AI assistants to control Spotify playback and manage playlists.

View all related MCP servers

Related MCP Connectors

  • MCP server for interacting with the Supabase platform

  • MCP server for managing Prisma Postgres.

  • MCP server for Producer/Riffusion AI music generation

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/suhajdab/spotify-playlist-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server