← 返回目录
S

Spotify Streamable MCP Server

社区
面向 Spotify 的 MCP 服务器,支持搜索、播放控制、播放列表和已保存曲目管理。
GitHub 源仓库 ↗
★ 79 Stars 分类 · 其他 热门 源版本 b79e4d81149c
61FMRS · C
可靠性
8/20
安全与权限
14/20
维护活跃度
9/20
文档质量
17/20
安装易用性
13/20

该服务器为 Spotify 提供了实用的 MCP 集成,具有批量操作和清晰的反馈。但需注意其针对 MCP 候选版本,并需谨慎处理 OAuth 和安全配置。

查看 FMRS 评分方法 →

该服务器通过 MCP 接口提供对 Spotify API 的访问。它允许 AI 助手执行音乐搜索、播放控制(播放、暂停、跳曲、音量等)、设备切换、播放列表创建与编辑、以及保存/取消保存歌曲等操作。它使用 OAuth 2.1 代理进行认证,并支持 Bun 和 Cloudflare Workers 双运行时。注意:该仓库针对 MCP 候选协议(2026-07-28)和 SDK 2.0.0-beta.5 版本,尚未符合最终发布版本。

工具能力

search_catalog
搜索歌曲、艺术家、专辑或播放列表。
player_status
获取当前播放器状态、设备、队列和当前曲目。
spotify_control
批量控制播放(播放、暂停、下一首、上一首、跳转、音量、随机播放、重复、转移、排队)。
spotify_playlist
管理播放列表(列出、获取、项目、创建、更新、添加/删除项目、重新排序)。
spotify_library
管理已保存曲目(获取、添加、删除、检查是否已保存)。

安装接入

  1. 克隆仓库并进入目录。
  2. 运行 bun install 安装依赖。
  3. .env.example 复制 .env 并填写 Spotify 客户端 ID/密钥、OAuth 回调 URI 等。
  4. 在 Spotify Developer Dashboard 中注册重定向 URI。
  5. 运行 bun dev 启动服务器。
  6. 对于 Claude Desktop,使用提供的配置示例。
claude_desktop_config.json
{
  "mcpServers": {
    "spotify": {
      "command": "bunx",
      "args": [
        "mcp-remote",
        "http://127.0.0.1:3000/mcp",
        "--transport",
        "http-only"
      ],
      "env": {
        "NO_PROXY": "127.0.0.1,localhost"
      }
    }
  }
}

选型与风险

适合谁

  • 希望将 Spotify 播放控制集成到 AI 助手或工作流中的开发者
  • 需要语音控制音乐的场景
  • 需要批量处理音乐搜索和播放列表操作的代理

不适合谁

  • 需要稳定、正式 MCP 协议版本的场景(当前针对候选版本)
  • 不希望配置 OAuth 和 Spotify API 凭据的用户
  • 需要精细控制 Spotify API 全部原始功能的开发者

所需权限

  • 读取播放状态,修改播放控制(播放、暂停、跳曲、音量等)
  • 读取和修改播放列表(私有、协作、公开)
  • 读取和修改用户库中的已保存歌曲
  • 访问用户当前播放的曲目和设备信息

风险与副作用

  • OAuth 令牌以文件或 KV 存储,未加密时可能存在安全风险
  • 需要正确的设备 ID,否则播放控制可能失败
  • 播放行为依赖 Spotify 账户类型(免费版可能受限)及其 Premium 服务
  • 由于针对 MCP 候选版本,协议兼容性可能随时间变化

常见排障

  1. 出现“设备未找到”时,检查是否使用了设备 ID 而非名称
  2. 出现“无活动设备”时,确保 Spotify 已在某设备上打开
  3. 出现“未授权”时,重新完成 OAuth 流程或检查令牌是否过期
  4. 出现“请求太频繁”时,等待后重试

使用场景

通过自然语言查找音乐,例如“播放某电影原声带”或“创建符合我心情的播放列表”
通过语音控制播放,如“暂停”“下一首”
批量管理播放列表,如将多首歌曲添加或移除
查看当前播放状态和设备信息

支持客户端

Claude Desktop完整支持