普林斯顿AI x CBC Workshop - 2025年10月31日
构建一个真正的MCP服务器,连接Claude到Spotify!搜索歌曲,分析音乐收藏,并使用自然语言创建播放列表。 注意:你需要你的Spotify API客户端和密钥才能运行这个服务器,所以只需跟随代码并稍后进行测试!
克隆此仓库
git clone <your-repo-url>
cd claude-mcp-workshop
安装依赖项
pip install -r requirements.txt
设置Spotify凭证
.env.example到.env并填写你的凭证配置Claude桌面
启动服务器并尝试一下!
python music_server_updated_2025.py
然后重启Claude桌面并开始聊天!
一旦连接,你可以问Claude一些事情,比如:
基本发现:
收藏分析:
播放列表创建: 🎯
search_tracks通过名称、艺术家或关键词在Spotify上搜索歌曲。返回曲目详情、流行度和Spotify链接。
get_recommendations根据种子曲目、艺术家或流派获取歌曲推荐。非常适合发现与你喜欢的音乐相似的新音乐。
get_artist_info获取关于艺术家的详细信息,包括他们的热门曲目、流派、流行度和粉丝数量。
create_playlist从一组歌曲创建真实的Spotify播放列表!提供歌曲名称和艺术家,它会搜索它们并在你的账户上创建播放列表。
generate_balanced_playlist从较大的收藏中创建平衡的播放列表。平衡方式:
analyze_playlist分析任何Spotify播放列表,获取流行度统计、显性内容百分比和曲目详情。
analyze_explicitness检查你的歌曲收藏中的显性内容 - 找出含有显性歌词的比例并获得家庭友好评级。
analyze_collection_diversity分析你的音乐收藏有多多样化:
get_top_artists_from_collection找出哪些艺术家在你的收藏中最频繁出现,并查看他们的贡献比例。完美用于理解你的收听习惯。
analyze_genres_in_collection获取完整的流派分解 - 主导风格、流派多样性评分以及带有每首歌流派标签的详细分布百分比。
重要API更新:Spotify在2024年11月弃用了其音频特性端点。此MCP服务器已更新为无需它也能工作!
有什么不同:
这意味着什么:
┌─────────────┐
│ Claude │ 提问:“找欢快的歌曲”
│ Desktop │
└──────┬──────┘
│ MCP协议
│
┌──────▼──────────┐
│ MCP服务器 │ 转换为:search_tracks("upbeat")
│ (此代码!) │
└──────┬──────────┘
│ Spotify API
│
┌──────▼──────────┐
│ Spotify Web │ 返回:歌曲数据
│ API │
└─────────────────┘
如何工作:
工作坊结束后,尝试构建你自己的MCP服务器!一些想法:
加入AI@普林斯顿Discord以获得挑战期间的支持!
“ModuleNotFoundError: 没有名为'spotipy'的模块”
pip install -r requirements.txt“无法连接到Spotify”
.env文件是否具有正确的凭证“Claude看不到工具”
更多问题? 查看TROUBLESHOOTING.md
想添加更多功能?查看CONTRIBUTING.md以了解:
MIT许可证 - 详见LICENSE文件。
为AI@普林斯顿的MCP工作坊系列而建。特别感谢:
准备好构建了吗? 从QUICKSTART.md开始,或跳转至SETUP.md!
⭐ 如果这对你有帮助,请在GitHub上给它一个星!