Spotify媒体控制平台
一个将克劳德与Spotify连接起来的服务器,允许用户控制播放、搜索内容、获取有关曲目/专辑/艺术家/播放列表的信息以及管理Spotify队列。
服务介绍
spotify-mcp MCP 服务器
连接 Claude 与 Spotify 的 MCP 项目。基于 spotipy-dev 的 API 构建。
功能
- 开始、暂停和跳过播放
- 搜索曲目/专辑/艺术家/播放列表
- 获取关于曲目/专辑/艺术家/播放列表的信息
- 管理 Spotify 队列
演示
请确保已开启音频
配置
获取 Spotify API 密钥
在 developer.spotify.com 创建一个账户。导航至 仪表板。
创建一个应用程序,重定向 URI 为 http://localhost:8888。(你可以选择任何端口,但必须使用 http 和 localhost)。
我将 "APIs used" 设置为 "Web Playback SDK"。
在本地运行此项目
此项目尚未设置用于临时环境(例如 uvx 使用)。通过克隆此仓库来在本地运行此项目
git clone https://github.com/varunneal/spotify-mcp.git
将此工具添加为 MCP 服务器。
在 MacOS 上:~/Library/Application\ Support/Claude/claude_desktop_config.json
在 Windows 上:%APPDATA%/Claude/claude_desktop_config.json
"spotify": {
"command": "uv",
"args": [
"--directory",
"/path/to/spotify_mcp",
"run",
"spotify-mcp"
],
"env": {
"SPOTIFY_CLIENT_ID": YOUR_CLIENT_ID,
"SPOTIFY_CLIENT_SECRET": YOUR_CLIENT_SECRET,
"SPOTIFY_REDIRECT_URI": "http://localhost:8888"
}
}
故障排除
如果你无法使这个 MCP 正常工作,请打开一个问题。这里有一些建议:
- 确保
uv已更新。我建议使用版本>=0.54。 - 确保 claude 对该项目有执行权限:
chmod -R 755。 - 确保你拥有 Spotify 会员资格(需要运行开发人员 API)。
该 MCP 将日志输出到标准错误(如 MCP 规范中所述)。在 Mac 上,Claude Desktop 应用程序应将这些日志输出到 ~/Library/Logs/Claude。
在其他平台上你可以在这里找到日志。
你可以通过以下命令使用 npm 启动 MCP Inspector:
npx @modelcontextprotocol/inspector uv --directory /path/to/spotify_mcp run spotify-mcp
启动后,Inspector 将显示一个 URL,你可以在浏览器中访问该 URL 来开始调试。
待办事项
不幸的是,许多酷炫的功能已经从 Spotify API 中被弃用。
大多数新功能将是相对较小的或为了项目的健康:
- 测试。
- 添加支持管理播放列表的 API。
- 添加支持分页搜索结果/播放列表/专辑的 API。
欢迎提交 PR!
部署
(待定)
构建和发布
准备包以进行分发:
- 同步依赖项并更新锁文件:
uv sync
- 构建包发行版:
uv build
这将在 dist/ 目录中创建源码和 wheel 发行版。
- 发布到 PyPI:
uv publish
注意:你需要通过环境变量或命令标志设置 PyPI 凭据:
- 令牌:
--token或UV_PUBLISH_TOKEN - 或用户名/密码:
--username/UV_PUBLISH_USERNAME和--password/UV_PUBLISH_PASSWORD