Spotify MCP 服务器
该项目实现了一个模型上下文协议 (MCP)服务器,允许您通过 MCP 客户端(例如Cursor或Claude for Desktop (仅限 macOS 和 Windows))使用自然语言控制 Spotify 播放。
特征
该服务器公开以下工具:
play:播放曲目、专辑或播放列表,或者继续播放。pause:暂停播放。next:跳至下一曲目。previous:跳至上一曲目。get_current_track:获取有关当前播放曲目的信息。search:搜索曲目、专辑、艺术家或播放列表。
Related MCP server: Spotify MCP Server
先决条件
Bun (1.0.0 或更高版本)
Spotify Premium 帐户。
Spotify 开发者应用程序:
在Spotify 开发者仪表板上创建一个。
获取您的客户端 ID 和客户端密钥。
将
http://localhost:8888/callback添加到应用程序设置中的重定向 URI。
MCP 客户端(例如 Cursor 或 Claude for Desktop)。
安装和设置
克隆存储库:
git clone https://github.com/obre10off/spotify-mcp.git cd spotify-mcp安装依赖项:
bun install创建
在项目根目录下创建一个名为
.env的文件。添加以下内容,将占位符替换为你实际的 Spotify 凭据:SPOTIFY_CLIENT_ID=your_spotify_client_id SPOTIFY_CLIENT_SECRET=your_spotify_client_secret SPOTIFY_REDIRECT_URI=http://localhost:8888/callback # These will be filled in after running the auth script: SPOTIFY_ACCESS_TOKEN= SPOTIFY_REFRESH_TOKEN=运行授权脚本:
该脚本将打开您的浏览器,提示您登录 Spotify 并授予权限,然后检索您的初始访问和刷新令牌。
bun run auth该脚本会将
SPOTIFY_ACCESS_TOKEN和SPOTIFY_REFRESH_TOKEN打印到控制台。请将这些值复制到您的.env文件中。配置您的 MCP 客户端:
光标:
打开光标的设置(Cmd+, 或 Ctrl+,)。
搜索“模型上下文协议”。
点击“在settings.json中编辑”。
将以下内容添加到
mcp.servers数组(将/absolute/path/to/your/spotify-mcp替换为spotify-mcp目录的绝对路径):{ "mcp.servers": [ { "spotify": { "command": "bun", "args": ["/absolute/path/to/your/spotify-mcp/src/index.ts"], "env": { "SPOTIFY_CLIENT_ID": "your_spotify_client_id", "SPOTIFY_CLIENT_SECRET": "your_spotify_client_secret", "SPOTIFY_REDIRECT_URI": "http://localhost:8888/callback", "SPOTIFY_ACCESS_TOKEN": "your_spotify_access_token", "SPOTIFY_REFRESH_TOKEN": "your_spotify_refresh_token" } } } ] }建议使用
.env文件并仅将与 Spotify 相关的环境变量放在那里,而不是将值添加到 settings.json 文件中。
桌面版 Claude(macOS/Windows):
打开 Claude for Desktop 配置文件:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.json
将以下内容添加到
mcpServers对象(将/absolute/path/to/your/spotify-mcp替换为spotify-mcp目录的绝对路径):GXP6
**重要提示:**在客户端配置中始终使用绝对路径。
重启 MCP 客户端
确保重新启动 MCP 客户端(Cursor/Claude)以应用设置。