
Spotify MCP Server with AI Integration

2025.03.14
0
Python音乐服务AI 集成娱乐功能
Spotify MCP Server 是一个基于 Flask 的 MCP(Modular Control Protocol)服务器,集成了 Spotify 和 Google 的 Gemini AI,用于音乐命令的自然语言处理。该服务器提供了 Spotify 的播放列表管理功能,并通过 AI 进行自然语言处理,支持 OAuth2 认证流程和 MCP 协议。
View on GitHub
Overview
基本能力
产品定位
Spotify MCP Server 是一个集成了 Spotify 和 Google Gemini AI 的 MCP 服务器,主要用于音乐播放列表的管理和自然语言处理命令的执行。
核心功能
- 🎵 Spotify 集成,用于播放列表管理
- 🤖 AI 驱动的自然语言处理
- 🔒 OAuth2 认证流程
- 📜 MCP 协议兼容
- 🚀 REST API 端点,包括:
- 曲目搜索
- 播放列表创建
- 播放列表修改
- AI 辅助命令处理
适用场景
- 通过自然语言命令创建和管理 Spotify 播放列表
- 自动化音乐播放列表的生成和修改
- 集成到其他应用中以提供音乐相关的 AI 功能
工具列表
- Spotify Developer Dashboard:用于获取 Spotify API 的客户端 ID 和密钥
- Google AI Studio:用于获取 Gemini API 密钥
常见问题解答
- Invalid Access Token:清除缓存的凭证并重新认证
- Port Conflicts:修改
app.py
中的端口号 - API Errors:检查
.env
文件中的凭证和 Spotify 开发者仪表板设置
使用教程
使用依赖
- Python 3.9+
- Spotify 开发者账户
- Google Gemini API 密钥
- 基本的命令行知识
安装教程
- 克隆仓库:
git clone https://github.com/yourusername/spotify-mcp-server.git
cd spotify-mcp-server
- 创建并激活虚拟环境:
python -m venv venv
source venv/bin/activate # Linux/MacOS
venv\Scripts\activate # Windows
- 安装依赖:
pip install -r requirements.txt
配置
- 创建
.env
文件:
SPOTIPY_CLIENT_ID=your_spotify_client_id
SPOTIPY_CLIENT_SECRET=your_spotify_secret
SPOTIPY_REDIRECT_URI=http://localhost:5001/callback
SPOTIPY_SCOPE=playlist-modify-public playlist-modify-private
GEMINI_API_KEY=your_gemini_api_key
调试方式
- 启动服务器:
python app.py
- 使用 API 端点:
curl -X POST http://localhost:5001/mcp/chat \
-H "Content-Type: application/json" \
-d '{"prompt": "Create a workout playlist with rock songs"}'
API 端点
端点 | 方法 | 描述 |
---|---|---|
/auth |
GET | 启动 Spotify 认证 |
/mcp/status |
GET | 服务器健康检查 |
/mcp/actions |
GET | 列出可用操作 |
/mcp/execute |
POST | 执行直接命令 |
/mcp/chat |
POST | 处理自然语言请求 |