Skip to main content
Glama
suhajdab

Spotify Playlist MCP

by suhajdab

Spotify Playlist MCP

Un servidor MCP STDIO local para curar de forma segura listas de reproducción de Spotify desde tareas programadas del escritorio de Codex. Puede inspeccionar listas de reproducción propias, buscar pistas de Spotify, actualizar metadatos de listas y añadir o eliminar pistas mediante un flujo de trabajo acotado de plan/aplicación.

Modelo de seguridad

  • Lee las credenciales de Spotify y los ajustes de seguridad solo del .env ignorado de este proyecto, con anulaciones opcionales a nivel de proceso.

  • Almacena el token OAuth en ~/.config/spotify-playlist-mcp/token.json con modo de archivo 0600.

  • Rechaza cualquier escritura a menos que el ID de la lista aparezca en SPOTIFY_ALLOWED_PLAYLIST_IDS.

  • Verifica que el usuario autenticado sea el propietario de la lista.

  • Limita cada plan con SPOTIFY_MAX_CHANGES_PER_PLAN, por defecto 10 pistas afectadas.

  • Vincula los planes al snapshot_id actual de Spotify, los expira después de 10 minutos y permite una sola aplicación.

  • Consume un plan antes de la primera escritura para que una operación parcialmente aplicada no pueda reintentarse accidentalmente.

Los tokens de actualización de Spotify actualmente expiran seis meses después de la autorización. spotify_auth_status informa del tiempo restante para que una tarea programada pueda avisar antes de que se requiera una nueva autorización. Consulta la guía de tokens de actualización de Spotify.

Related MCP server: MCP Spotify Server

Herramientas

Herramienta

Tipo

Propósito

spotify_auth_status

Lectura

Informar sobre la autorización y la antigüedad del token de actualización sin devolver credenciales

spotify_list_owned_playlists

Lectura

Listar listas propias, visibilidad, recuentos, instantáneas y enlaces

spotify_search_tracks

Lectura

Buscar pistas candidatas, máximo 10 resultados por solicitud

spotify_get_playlist

Lectura

Devolver metadatos actuales de la lista y elementos de pistas reproducibles

spotify_plan_playlist_changes

Lectura

Validar y previsualizar adiciones, eliminaciones, cambios de nombre, descripción o visibilidad

spotify_apply_playlist_plan

Escritura

Aplicar un plan exacto, no expirado y de un solo uso

Las adiciones de pistas se añaden al final. Las eliminaciones por URI eliminan todas las coincidencias, y el recuento de impacto refleja ese comportamiento. El servidor no expone intencionadamente reemplazo masivo, solicitudes arbitrarias, eliminación de listas ni escrituras no planificadas.

Instalación y verificación

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

Autorización única de Spotify

El URI de redirección en .env debe coincidir exactamente con el ajuste del panel de Spotify. La devolución de llamada de bucle local actual es http://127.0.0.1:3000/auth/callback.

npm run auth

Abre la URL de Spotify impresa y aprueba los ámbitos. El comando recibe la devolución de llamada de bucle local y guarda el token de forma privada. Comprueba el estado sin revelar credenciales:

node dist/auth-cli.js --status

Spotify actualmente requiere una nueva autorización cada seis meses porque renovar un token de acceso no extiende la vida útil del token de actualización.

Configuración del escritorio de Codex

La aplicación de escritorio, la CLI y la extensión del IDE comparten ~/.codex/config.toml. Una tarea programada de escritorio puede lanzar este servidor STDIO directamente:

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

Reinicia la aplicación de escritorio de ChatGPT después de cambiar la configuración de MCP. Mantén el ordenador encendido y la aplicación en ejecución cuando una tarea programada necesite el servidor local. Consulta la documentación oficial de configuración de MCP de Codex y de tareas programadas.

Deja SPOTIFY_ALLOWED_PLAYLIST_IDS vacío hasta que exista la lista pública prevista y se haya revisado su ID exacto. Se pueden separar varios IDs con comas.

Prompt sugerido para tareas programadas

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.

Prueba este prompt manualmente antes de programarlo. Las ejecuciones programadas no están supervisadas, por lo que la herramienta de mutación no debe configurarse para solicitar aprobación.

Desarrollo

npm test
npm run typecheck
npm run build

Las pruebas utilizan simulaciones de Spotify en memoria y un transporte MCP en memoria. Ninguna prueba llama a Spotify ni lee el archivo de token real.

Licencia

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