Spotify MCP服务器
本项目是一个基于 Model Context Protocol (MCP) 构建的服务器,旨在将您的 Spotify 账户与支持 MCP 协议的 LLM 客户端(如 Claude)连接起来,使您可以通过自然语言指令控制 Spotify 音乐播放,进行音乐搜索,管理播放队列,以及获取音乐信息。
主要功能点:
- 音乐播放控制: 开始、暂停、跳过 Spotify 上的音乐播放。
- 音乐搜索: 根据关键词搜索 Spotify 曲库中的歌曲、专辑、艺术家和播放列表。
- 播放队列管理: 查看当前播放队列,向队列中添加歌曲。
- 音乐信息查询: 获取歌曲、专辑、艺术家和播放列表的详细信息。
- 用户音乐偏好: 获取用户最常听的艺术家和歌曲。
- 播放列表管理: 创建播放列表和向播放列表添加歌曲。
安装步骤:
-
克隆仓库: 首先,将 GitHub 仓库 'spotify_mcp' 克隆到您的本地计算机。
git clone https://github.com/Naunau75/spotify_mcp cd spotify_mcp -
安装依赖: 建议使用 'uv' 或 'pip' 等包管理器安装项目依赖。
uv sync # 推荐使用 uv # 或 pip install -r requirements.txt # 如果使用 pip确保您的环境中已安装 Python 和 'uv' (或 'pip')。
-
配置 Spotify API 密钥:
- 访问 Spotify Developer Dashboard 并创建一个应用。
- 在应用设置中,将 'Redirect URIs' 设置为 'http://localhost:8888' (或您选择的端口,但必须是 'http' 和 'localhost')。
- 获取您的 'Client ID' 和 'Client Secret'。
-
配置环境变量: 您需要将 Spotify API 密钥配置为环境变量。在项目根目录下创建 '.env' 文件(如果不存在),并添加以下内容,替换为您自己的密钥:
SPOTIFY_CLIENT_ID=YOUR_CLIENT_ID SPOTIFY_CLIENT_SECRET=YOUR_CLIENT_SECRET SPOTIFY_REDIRECT_URI=http://localhost:8888 # 与您在 Spotify 应用中设置的 Redirect URIs 一致
服务器配置 (MCP 客户端配置):
要将此 MCP 服务器添加到 MCP 客户端(例如 Claude),您需要配置客户端的配置文件。以 Claude Desktop 客户端为例,您需要编辑配置文件 'claude_desktop_config.json',该文件通常位于:
- MacOS: '~/Library/Application\ Support/Claude/claude_desktop_config.json'
- Windows: '%APPDATA%/Claude/claude_desktop_config.json'
在配置文件中,添加如下 JSON 配置到 '"servers"' 字段下 (如果不存在 '"servers"' 字段,请自行创建)。 假设您的 'spotify_mcp' 项目位于 '/path/to/spotify_mcp' 目录。
{ "spotify": { "command": "uv", "args": [ "--directory", "/path/to/spotify_mcp", // 替换为您的 spotify_mcp 项目的实际路径 "run", "spotify_mcp" ], "env": { "SPOTIFY_CLIENT_ID": "YOUR_CLIENT_ID", // 替换为您的 Spotify Client ID "SPOTIFY_CLIENT_SECRET": "YOUR_CLIENT_SECRET", // 替换为您的 Spotify Client Secret "SPOTIFY_REDIRECT_URI": "http://localhost:8888" } } }
基本使用方法:
配置完成后,启动您的 MCP 客户端(如 Claude)。客户端应该能够检测到并连接到 Spotify MCP 服务器。您可以通过自然语言指令指示客户端使用 Spotify 工具,例如:
- "让 Spotify 播放 Drake 的新歌"
- "暂停 Spotify"
- "Spotify 播放队列里有什么?"
- "搜索 Taylor Swift 的专辑"
- "创建一个名为 '放松音乐' 的播放列表"
具体的指令格式取决于您的 MCP 客户端的自然语言理解能力。
注意事项:
- 确保您拥有 Spotify Premium 账户,因为 Spotify Developer API 需要 Premium 账户才能完整使用。
- 首次运行 MCP 服务器时,可能需要进行 Spotify 账户授权,请按照提示在浏览器中完成授权流程。
- 您可以通过查看日志文件 ('~/Library/Logs/Claude' on Mac 或 其他平台日志位置) 来排查问题。
信息
分类
网页与API