mcpField
S
Spotify MCP Server (Express.js)

Spotify MCP Server (Express.js)

本地服务
github.com/addy07s开发工具085 周前更新

关于 Spotify MCP Server (Express.js)

这是一个基于 Express.js 的 Spotify MCP 服务,让 AI 助手通过 Spotify API 搜索音乐、查询艺人和播放列表,并在授权后访问用户数据。它还提供 Spotify OAuth 登录和令牌刷新接口。

主要功能

  1. 01搜索曲目、艺人和专辑
  2. 02查询艺人、曲目和播放列表
  3. 03读取用户热门曲目与收藏
  4. 04Spotify OAuth 授权与令牌刷新

适用场景

  1. 01搜索 Spotify 音乐内容
  2. 02查看艺人或曲目详情
  3. 03访问已授权账户的播放列表
  4. 04读取用户热门曲目和收藏曲目

MCP 相关

该服务通过 MCP 端点向 AI 助手提供 Spotify 搜索、详情查询及经授权的个性化数据访问,并处理 OAuth 登录与令牌刷新。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

Spotify MCP 服务(Express.js)

这是一个模型上下文协议(MCP)服务实现,可让 AI 助手与 Spotify 的 API 交互。该服务提供用于搜索曲目、获取艺人信息和管理播放列表的端点。

设置

  1. 创建 Spotify 开发者账号,并在 Spotify Developer Dashboard 中创建一个新应用。
  2. 从 Spotify 应用中获取 Client ID 和 Client Secret。
  3. 在根目录中创建一个 .env 文件,内容如下:
SPOTIFY_CLIENT_ID=your_client_id
SPOTIFY_CLIENT_SECRET=your_client_secret
SPOTIFY_REDIRECT_URI=http://localhost:3000/callback
  1. 安装依赖:
npm install
  1. 运行服务:
npm start

可用端点

该服务实现了以下 MCP 端点:

  • POST /mcp/search - 搜索曲目、艺人或专辑。
  • GET /mcp/artist/{artistId} - 获取艺人的详细信息。
  • GET /mcp/track/{trackId} - 获取曲目的详细信息。
  • GET /mcp/playlist/{playlistId} - 获取播放列表信息。
  • GET /mcp/me/top-tracks - 获取用户的热门曲目(需要身份验证)。
  • GET /mcp/me/playlists - 获取用户的播放列表(需要身份验证)。
  • GET /mcp/me/tracks - 获取用户已收藏的曲目(需要身份验证)。
  • GET /mcp/auth/login - 生成 Spotify 登录 URL,用于用户身份验证。
  • GET /callback - 处理 Spotify OAuth 回调,并将授权码交换为访问令牌。
  • POST /mcp/auth/refresh - 刷新用户的访问令牌。

使用示例

以下是 AI 助手与该服务交互的示例:

// Search for a track
const searchResponse = await fetch('http://localhost:3000/mcp/search', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    query: 'Bohemian Rhapsody',
    type: 'track'
  })
});
const searchData = await searchResponse.json();

// Get artist information
const artistResponse = await fetch('http://localhost:3000/mcp/artist/1dfeR4HaWDbWqJHLk5g1d1');
const artistData = await artistResponse.json();

MCP 协议实现

该服务实现了模型上下文协议,使 AI 助手能够:

  1. 使用 Spotify 进行身份验证。
  2. 搜索音乐内容。
  3. 获取艺人、曲目和播放列表的详细信息。
  4. 访问个性化用户数据(需正确进行身份验证)。

安全提示

请确保妥善保管 .env 文件,切勿将其提交到版本控制系统。该服务使用环境变量管理敏感凭据。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。