使用说明
Spotify MCP 服务器(WebSocket + JSON-RPC,已准备好渲染)
这是一个 极简风格,MCP风格 会说话的Spotify服务器 通过WebSocket的JSON-RPC
(at /mcp) 并提供一个HTTP OAuth流程 (/auth, /callback) 以获取Spotify令牌。
它旨在部署到支持WebSockets的平台(例如。, 渲染, 铁路, Fly.io)。
一旦获得授权,您就可以指示ChatGPT的 自定义MCP服务器 at: (这个短语在中文里通常不单独翻译,因为它是一个介词短语的一部分,需要根据上下文来确定具体含义。如果直接翻译,可以理解为“在……”或者“关于……”,但具体翻译需结合上下文。)
wss://YOUR-RENDER-DOMAIN/mcp
代币模型为了简化,这个演示程序存储 一个全球通用的Spotify令牌 (在您访问之后
/auth(仅)一次。 所有MCP工具调用都使用此令牌。如有需要,请替换为每个用户的存储(如Redis、数据库等)。
特点/特性
- 通过 WebSocket 的 JSON-RPC 2.0 在
/mcp(使用)方法:initialize→ 返回服务器名称/版本tools/list→ 返回可用工具tools/call→{ name, args }调用一个工具
- 工具:
search(q) → 搜索曲目play(上下文URI?,URIs?)pause,next,prevcreate_playlist(名称,公开=false,追踪URI?)
- OAuth 端点:
/auth,/callback
快速部署(渲染)
- 在 https://developer.spotify.com/dashboard 创建一个Spotify应用
- 添加重定向URI(在您了解您的Render域名后):
https://YOUR-RENDER-DOMAIN/callback
- 添加重定向URI(在您了解您的Render域名后):
- 在渲染中,创建一个 网络服务 来自这个仓库(Node 18+)。
- 构建命令:
npm install - 启动命令:
node server.js - 环境变量 (制作):
SPOTIFY_CLIENT_IDSPOTIFY_CLIENT_SECRETSPOTIFY_REDIRECT_URI→https://YOUR-RENDER-DOMAIN/callbackSESSION_SECRET→ 任何随机字符串
- 构建命令:
- 部署后,请访问:
https://YOUR-RENDER-DOMAIN/auth并完成Spotify的授权。 - 在ChatGPT → 设置 → 连接器 → 添加MCP服务器:
- 服务器URL:
wss://YOUR-RENDER-DOMAIN/mcp - 认证: 未进行身份验证
- 服务器URL:
- 在ChatGPT中测试:“搜索一首lo-fi歌曲并播放”。
本地开发
- 创建一个带有重定向URI的Spotify应用程序
http://localhost:8888/callback - 复制
.env.example到;向;对于;为了.env,填充值。 npm install && npm run dev- 访问
http://localhost:8888/auth先连接一次,然后(继续)连接ws://localhost:8888/mcp来自测试MCP客户端。
备注
- 需要Spotify高级会员才能进行播放/暂停/下一首/上一首操作,并且需要设备处于活跃状态。
- 在多用户场景中,将内存中的全局令牌替换为持久化存储。
- 这是一个 最小的;最少的 MCP;根据需要适应您客户的MCP架构。