使用说明
Spotify API MCP
模型上下文协议(MCP)服务器,使MCP兼容的应用程序(如Claude Desktop、IDE和其他人工智能工具)能够与Spotify API交互,包括用于播放列表管理的认证端点。
特性
- 搜索:搜索曲目、艺术家、专辑和播放列表
- 认证:OAuth 2.0流与PKCE用于安全身份验证
- 用户档案:获取当前用户信息
- 播放列表管理:创建播放列表并添加曲目
- 许可证管理:自动令牌刷新
设置
1.安装依赖项
npm install
2.创建Spotify应用程序
- 首选 Spotify开发者仪表板
- 创建新应用程序
- 添加
http://127.0.0.1:3000/callback作为重定向URI - 记下您的客户端ID和客户端密码
3.设置身份验证(可选)
您可以通过多种方式提供您的Spotify凭据:
选项A:环境变量
export SPOTIFY_CLIENT_ID="your_client_id_here"
export SPOTIFY_CLIENT_SECRET="your_client_secret_here"
选项B:配置文件
创建一个 .env 项目根目录中的文件:
SPOTIFY_CLIENT_ID=your_client_id_here
SPOTIFY_CLIENT_SECRET=your_client_secret_here
选项C:手动身份验证
如果没有预先配置凭据,则可以使用 spotify_authenticate 工具,在需要时提供。
4.建设项目
npm run build
5.配置您的MCP客户端
将以下内容添加到MCP客户端设置中(以Claude Desktop为例):
{
"mcpServers": {
"spotify": {
"command": "node",
"args": ["/path/to/spotify-api-mcp/dist/index.js"]
}
}
}
对于其他MCP客户端,请参阅客户端的文档以获取适当的配置格式。
Claude Desktop用户注意事项: 当您第一次尝试使用任何Spotify功能时,Claude会通过询问您的Spotify应用程序的客户端ID和客户端密码来自动提示您进行身份验证。您不需要在上面的配置中提供这些凭据。
可用工具
spotify_authenticate
使用OAuth 2.0通过Spotify进行身份验证。在使用经过身份验证的端点之前需要。
参数:
client_id(字符串,可选):您的Spotify应用程序的客户端ID(可以通过环境变量设置)client_secret(string,可选):您的Spotify应用程序的客户端密码(可以通过环境变量设置)
spotify_search
在Spotify上搜索内容。
参数:
query(string):搜索查询type(string):内容类型(track,artist,album,playlist)limit(数字,可选):结果数量(1-50,默认值:10)
spotify_get_user_profile
获取经过身份验证的用户的个人资料信息。
spotify_create_playlist
为经过身份验证的用户创建新的播放列表。
参数:
name(string):播放列表名称description(字符串,可选):播放列表描述public(布尔值,可选):播放列表是否为公共(默认值:false)
spotify_add_tracks_to_playlist
将曲目添加到播放列表。
参数:
playlist_id(字符串):播放列表IDtrack_uris(array):Spotify曲目URI数组
spotify_get_user_playlists
获取经过身份验证的用户的播放列表。
参数:
limit(数字,可选):要返回的播放列表数量(1-50,默认值:20)
用法示例
- 首先,通过Spotify进行身份验证:
Use the spotify_authenticate tool with your client ID and secret
对于Claude Desktop用户: 只需让克劳德搜索音乐或创建播放列表。Claude将自动处理身份验证过程,并在需要时要求您提供Spotify凭据。
- 搜索曲目:
Use spotify_search with query "Bohemian Rhapsody" and type "track"
- 创建播放列表:
Use spotify_create_playlist with name "My New Playlist"
- 将曲目添加到播放列表:
Use spotify_add_tracks_to_playlist with the playlist ID and track URIs from search results
注意:使用这些工具的确切语法取决于您的MCP客户端。上述示例展示了一般方法。
发展
在开发模式下运行:
npm run dev
生产建设:
npm run build
安全说明
- 客户端机密得到安全处理,不会被记录
- OAuth 2.0和PKCE用于身份验证
- 需要时,令牌会自动刷新
- 本地服务器仅在身份验证期间临时运行
许可证
麻省理工学院