Spotify Mcp Server 4ox

Spotify Mcp Server 4ox

🚀 Spotify MCP 服务器

Spotify MCP(媒体控制协议)服务器是一款用于管理和控制 Spotify 音乐播放的工具。它提供了多种交互方式,如 Web 界面、命令行界面和语音控制,极大地提升了用户管理音乐播放的便捷性。

🚀 快速开始

先决条件

  • 安装 Node.js 和 npm
  • 注册 Spotify 开发者账号并获取 Client ID 和 Secret

设置步骤

  1. 安装依赖项
npm install
  1. 创建配置文件 在项目根目录下创建 .env 文件,添加以下内容:
PORT=8000
BRIDGE_PORT=9000
VOICE_PORT=8001
CLIENT_ID=your_spotify_client_id
CLIENT_SECRET=your_spotify_client_secret
  1. 启动服务器
npm start

✨ 主要特性

  • Web 界面:通过浏览器访问服务器,轻松控制音乐播放。
  • 命令行界面:在终端中使用命令灵活操作 Spotify 播放。
  • AI 助手集成:支持与 AI 助手(如 Claude)集成,实现语音控制。
  • 语音控制:通过麦克风输入指令,便捷控制音乐播放。
  • API 接口:提供 RESTful API,方便开发者扩展功能。

📦 安装指南

安装依赖

npm install

配置环境

在项目根目录创建 .env 文件,并按如下内容配置:

PORT=8000
BRIDGE_PORT=9000
VOICE_PORT=8001
CLIENT_ID=your_spotify_client_id
CLIENT_SECRET=your_spotify_client_secret

启动服务

npm start

💻 使用示例

基础用法

Web 界面

打开浏览器访问 http://localhost:8000,按照提示完成 Spotify 认证。

命令行界面

  • 播放音乐:
npm run play
  • 暂停播放:
npm run pause
  • 切换歌曲:
npm run next

高级用法

使用 curl 发送请求

  • 获取当前播放信息:
curl http://localhost:8000/api/currently-playing
  • 播放音乐:
curl -X POST http://localhost:8000/api/play
  • 暂停播放:
curl -X POST http://localhost:8000/api/pause

📚 详细文档

API 端点

  • 获取当前播放信息:
GET /api/currently-playing
  • 播放音乐:
POST /api/play
  • 暂停播放:
POST /api/pause

AI 助手集成

设置触发词

在语音控制界面中,进入设置菜单,输入您喜欢的触发词(例如“小爱同学”),然后保存。

语音控制

  1. 在终端中启动语音服务器:
node speech/voice-server.js
  1. 打开浏览器访问 http://localhost:8001,进入语音控制界面。
  2. 点击麦克风按钮,开始录音并输入指令(例如“小爱同学,播放音乐”)。

运行所有服务

创建一个名为 start-all.js 的文件:

const { spawn } = require('child_process');

const mcp = spawn('npm', ['start'], { stdio: 'inherit' });
setTimeout(() => {
const bridge = spawn('node', ['bridge/claude-spotify-bridge.js'], { stdio: 'inherit' });
const voice = spawn('node', ['speech/voice-server.js'], { stdio: 'inherit' });
}, 1000);

运行:

node start-all.js

🔧 技术细节

开发模式

npm run dev

故障排除

端口已使用错误

  • 检查是否有其他程序占用目标端口。
  • 修改 .env 文件中的端口号。

认证失败问题

  • 确保 Client ID 和 Secret 正确。
  • 重新登录 Spotify 账号。

📄 许可证

本项目遵循 MIT 协议,代码可以自由使用和修改。

  • 0 关注
  • 0 收藏,8 浏览
  • system 提出于 2025-09-28 00:21

相似服务问题