Spotify Playlist MCP
Spotify Playlist MCP
Локальный MCP-сервер STDIO для безопасного управления плейлистами Spotify из запланированных задач Codex desktop. Он может просматривать принадлежащие плейлисты, искать треки Spotify, обновлять метаданные плейлиста, а также добавлять или удалять треки через ограниченный рабочий процесс «план/применение».
Модель безопасности
Читает учетные данные Spotify и настройки безопасности только из игнорируемого
.envэтого проекта, с возможными переопределениями на уровне процесса.Хранит токен OAuth в
~/.config/spotify-playlist-mcp/token.jsonс правами доступа к файлу0600.Отказывает в любой записи, если идентификатор плейлиста отсутствует в
SPOTIFY_ALLOWED_PLAYLIST_IDS.Проверяет, что аутентифицированный пользователь владеет плейлистом.
Ограничивает каждый план параметром
SPOTIFY_MAX_CHANGES_PER_PLAN, по умолчанию10затронутых треков.Привязывает планы к текущему
snapshot_idSpotify, истекает через 10 минут и разрешает только одно применение.Потребляет план перед первой записью, чтобы частично примененная операция не могла быть случайно повторена.
Срок действия токенов обновления Spotify в настоящее время истекает через шесть месяцев после авторизации. spotify_auth_status сообщает оставшееся время, чтобы запланированная задача могла предупредить до того, как потребуется повторная авторизация. См. руководство по обновлению токенов Spotify.
Related MCP server: MCP Spotify Server
Инструменты
Инструмент | Тип | Назначение |
| Чтение | Сообщает статус авторизации и возраст токена обновления без возврата учетных данных |
| Чтение | Перечисляет принадлежащие плейлисты, видимость, количество, снимки и ссылки |
| Чтение | Ищет кандидатов на треки, максимум 10 результатов на запрос |
| Чтение | Возвращает текущие метаданные плейлиста и доступные для воспроизведения элементы |
| Чтение | Проверяет и предварительно просматривает добавления, удаления, имя, описание или изменения видимости |
| Запись | Применяет один точный, не истекший, одноразовый план |
Добавления треков добавляются в конец. Удаления по URI удаляют каждое совпадающее вхождение, и количество воздействий отражает это поведение. Сервер намеренно не предоставляет массовую замену, произвольные запросы, удаление плейлистов или незапланированные записи.
Установка и проверка
source ~/.nvm/nvm.sh
nvm use 24.14.0
npm install
npm test
npm run typecheck
npm run build
npm auditОдноразовая авторизация Spotify
URI перенаправления в .env должен точно совпадать с настройкой панели управления Spotify. Текущий обратный вызов loopback — http://127.0.0.1:3000/auth/callback.
npm run authОткройте напечатанный URL Spotify и одобрите области доступа. Команда получает обратный вызов loopback и сохраняет токен конфиденциально. Проверьте статус, не раскрывая учетные данные:
node dist/auth-cli.js --statusSpotify в настоящее время требует повторную авторизацию каждые шесть месяцев, поскольку обновление токена доступа не продлевает срок действия токена обновления.
Конфигурация Codex desktop
Настольное приложение, CLI и расширение IDE используют общий ~/.codex/config.toml. Запланированная задача на рабочем столе может запускать этот STDIO-сервер напрямую:
[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"Перезапустите настольное приложение ChatGPT после изменения конфигурации MCP. Держите компьютер включенным и приложение запущенным, когда запланированной задаче нужен локальный сервер. См. официальную документацию по конфигурации Codex MCP и документацию по запланированным задачам.
Оставьте SPOTIFY_ALLOWED_PLAYLIST_IDS пустым, пока не будет создан предполагаемый публичный плейлист и не проверен его точный идентификатор. Несколько идентификаторов можно разделять запятыми.
Предлагаемый запрос для запланированной задачи
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.Протестируйте этот запрос вручную перед планированием. Запланированные запуски выполняются без присмотра, поэтому инструмент изменения не должен быть настроен на запрос подтверждения.
Разработка
npm test
npm run typecheck
npm run buildВ тестах используются имитации Spotify в памяти и транспорт MCP в памяти. Ни один тест не вызывает Spotify и не читает реальный файл токена.
Лицензия
This server cannot be installed
Maintenance
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
- AlicenseAqualityCmaintenanceAn 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.332MIT
- FlicenseAqualityDmaintenanceA lightweight MCP server that enables AI assistants like Cursor and Claude to control Spotify playback, playlists, and manage tokens via OAuth.152
- AlicenseAqualityBmaintenanceMCP server to control Spotify conversationally from Claude, Cursor, and other AI clients.1160MIT
- FlicenseNot gradedqualityCmaintenanceA lightweight MCP server that enables AI assistants to control Spotify playback and manage playlists.
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
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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