关于 Spotify Playlist Curator MCP Server
面向 Spotify 用户的 MCP 服务,可分析播放列表的音频特征,并借助 Claude 推荐歌曲,也支持搜索和编辑播放列表。
主要功能
- 01分析播放列表音频特征
- 02汇总情绪、能量与节奏
- 03获取 Claude 歌曲推荐
- 04搜索 Spotify 曲目
- 05添加曲目并创建播放列表
适用场景
- 01了解播放列表的情绪与节奏
- 02寻找符合现有播放列表的歌曲
- 03将推荐曲目加入播放列表
- 04创建新的 Spotify 播放列表
MCP 相关
向 MCP 客户端提供播放列表查询与分析、Claude 推荐、曲目搜索及播放列表创建和编辑工具。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
暂未收录安装方式
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
还没有获取到工具列表
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Spotify 播放列表策展 MCP 服务
一个 MCP 服务,可通过分析现有曲目,并使用 Claude AI 根据心情、氛围、BPM 和其他音乐属性推荐歌曲,帮助你策展 Spotify 播放列表。
功能
- 连接你的 Spotify 账户并访问播放列表
- 分析播放列表中曲目的音频特征
- 生成播放列表心情、能量、节奏和其他特征的摘要
- 根据播放列表分析结果获取 Claude AI 推荐的歌曲
- 在 Spotify 上搜索曲目
- 将推荐曲目添加到播放列表
- 创建新的播放列表
设置
前提条件
- Node.js(v14 或更高版本)
- Spotify 开发者账户和已注册的应用
- 通过 MCP(Machine Conversation Protocol)访问 Claude
安装
-
克隆此代码库:
git clone https://github.com/lechiffre1/Spotify-Playlist-Curator-MCP-Server.git cd Spotify-Playlist-Curator-MCP-Server -
安装依赖项:
npm install -
根据提供的
.env.example创建.env文件:cp .env.example .env -
设置你的 Spotify 开发者凭据:
- 前往 Spotify 开发者控制台
- 创建一个新应用
- 将
http://localhost:3000/callback添加为 Redirect URI - 将 Client ID 和 Client Secret 复制到
.env文件中
-
启动服务:
npm start
使用方法
身份验证
启动服务后,你需要先通过 Spotify 进行身份验证:
- 在浏览器中访问
http://localhost:3000/login - 使用你的 Spotify 账户登录并授权该应用
- 身份验证成功后,你可以关闭浏览器窗口并返回 MCP 客户端
MCP 方法
以下 MCP 方法可用:
getPlaylists
返回你的 Spotify 播放列表。
const response = await client.getPlaylists();
getPlaylistDetails
获取特定播放列表的详细信息,包括曲目分析。
const response = await client.getPlaylistDetails({
playlistId: "your_playlist_id"
});
getClaudeRecommendations
根据播放列表分析结果获取 Claude AI 推荐的歌曲。
const response = await client.getClaudeRecommendations({
playlistId: "your_playlist_id",
count: 10 // Optional, defaults to 10
});
addRecommendationsToPlaylist
将推荐曲目添加到播放列表。
const response = await client.addRecommendationsToPlaylist({
playlistId: "your_playlist_id",
trackUris: ["spotify:track:id1", "spotify:track:id2", ...]
});
searchTracks
在 Spotify 上搜索曲目。
const response = await client.searchTracks({
query: "search query",
limit: 10 // Optional, defaults to 10
});
createPlaylist
创建新的 Spotify 播放列表。
const response = await client.createPlaylist({
name: "My New Playlist",
description: "Created by Spotify Playlist Curator", // Optional
isPublic: false // Optional, defaults to false
});
客户端使用示例
import { createClient } from '@anthropic-ai/mcp-client';
async function main() {
// Create MCP client
const client = createClient({
serverUrl: 'http://localhost:3000',
anthropicApiKey: 'your_anthropic_api_key' // Required for Claude integration
});
// 1. Get user playlists
const playlists = await client.getPlaylists();
console.log('Your playlists:', playlists);
// 2. Select a playlist and get its details
const playlistId = playlists.playlists[0].id;
const playlistDetails = await client.getPlaylistDetails({ playlistId });
console.log('Playlist summary:', playlistDetails.summary);
// 3. Get recommendations from Claude
const recommendations = await client.getClaudeRecommendations({ playlistId });
console.log('Claude recommendations:', recommendations.claudeRecommendations);
// 4. Add recommendations to the playlist
const trackUris = recommendations.claudeRecommendations
.filter(track => track.matched)
.map(track => track.uri);
if (trackUris.length > 0) {
const result = await client.addRecommendationsToPlaylist({ playlistId, trackUris });
console.log('Added recommendations:', result);
}
}
main().catch(console.error);
许可证
MIT
评论
支持 Markdown
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。