🎵 SpotiMCP(注:SpotiMCP可能是一个特定应用或服务的名称,在中文中直接保留原名,若需具体翻译需更多上下文信息)
     ](https://github.com/astral-sh/uv)   
使用模型上下文协议(MCP)实现AI驱动的Spotify集成
连接Claude Desktop与Spotify Web API的MCP服务器
🎯 它的作用
这个项目在Claude Desktop和Spotify之间搭建了一座桥梁,使您能够通过自然语言指令来控制音乐。
特点/特性
- 搜索 对于歌曲、专辑、艺术家和播放列表
- 获取信息 关于音乐项目
- 控制播放 (播放,暂停,跳过) - *需要Spotify高级会员*
- 管理播放列表 (创建,添加/删除轨道,修改细节)
- 排队管理 - *需要Spotify高级会员*
🚀 快速入门
先决条件
- Python 3.12及以上版本
- 紫外线(UV)包管理器
- Spotify高级会员账户(用于播放功能)
- Claude Desktop(可译为“Claude桌面版”或根据具体语境简化为“Claude桌面”)
设置
- 获取Spotify API凭据 来自 Spotify 开发者仪表板
- 创建一个带有重定向URI的应用程序: http://127.0.0.1:8080/callback
- 安装依赖项
uv sync- 设置环境变量
export SPOTIFY_CLIENT_ID="your_client_id"
export SPOTIFY_CLIENT_SECRET="your_client_secret"
export SPOTIFY_REDIRECT_URI="http://127.0.0.1:8080/callback"- 运行MCP服务器
uv run spotify-mcp- 配置Claude桌面版
在你的Claude桌面配置中添加:
{
"mcpServers": {
"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://127.0.0.1:8080/callback"
}
}
}
}💬 使用示例
配置完成后,您可以在Claude桌面版中使用自然语言命令:
"Search for songs by The Beatles"
"Play 'Here Comes the Sun'"
"Create a playlist called 'My Favorites'"
"Show me my playlists"
"Add this song to my queue"🛠 技术细节
建筑
Claude Desktop → MCP Protocol → Python Server → Spotify Web API关键组件
server.py- 带有工具定义的MCP服务器spotify_api.py带OAuth处理的Spotify API客户端utils.py- 数据解析和验证工具
可用工具
- 搜索 - 查找曲目、专辑、艺术家、播放列表
- 获取信息 - 获取音乐项目的详细信息
- 回放 - 控制音乐播放(需订阅高级服务)
- 队列 - 管理播放队列(需订阅高级服务)
- 播放列表 - 创建和管理播放列表
🔧 开发
项目结构
src/spotify_mcp/
├── __init__.py # Package entry point
├── server.py # MCP server implementation
├── spotify_api.py # Spotify API client
└── utils.py # Utility functions依赖项
mcp==1.3.0- 模型上下文协议spotipy==2.24.0Spotify Web API 客户端python-dotenv>=1.0.1- 环境变量加载
🐛 故障排除
常见问题
认证失败:
- 检查您的Spotify应用重定向URI是否完全匹配
- 确保环境变量设置正确
- 尝试重启Claude桌面版
无活动设备:
- 确保Spotify已打开且正在播放
- 检查您是否拥有Spotify高级会员(播放所需)
MCP连接问题:
- 验证服务器是否正在运行:
uv run spotify-mcp - 检查 Claude Desktop 的日志以查找连接错误
调试模式
使用MCP检查器进行调试:
npx @modelcontextprotocol/inspector uv --directory . run spotify-mcp______________________________________________________________________
*人工智能与音乐控制之间的简洁、流畅集成*
