Token导航 LogoToken导航TokenDH.com
Spotify Playlist Generator MCP Server logo
搜索检索未说明官方级别未说明来源级核验

Spotify Playlist Generator MCP Server

MCP Server

一个基于Spotify Web API的MCP服务器,支持AI应用搜索音乐曲目和管理播放列表。

工具数

10

提示词数

0

GitHub Stars

2

资源数

0
TypeScriptClaude搜索Claude DesktopClaudeVS Code

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

danisss9

提供方

danisss9

最后核验

2026/5/17 20:19

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

Spotify播放列表生成器MCP服务器

模型上下文协议(MCP)服务器,使人工智能应用程序能够使用官方Spotify Web API搜索音乐曲目并管理播放列表。

特性

  • 搜索音乐曲目:使用可自定义的搜索参数在Spotify上查找音乐曲目
  • 获取曲目详细信息:检索有关特定曲目的全面信息
  • 获取播放列表曲目:列出播放列表中的曲目
  • 播放列表管理:完整的播放列表管理,包括创建、编辑和管理播放列表(需要OAuth设置)

设置

先决条件

  • Node.js 18或更高版本
  • Spotify开发者帐户
  • Spotify应用程序凭据(客户端ID和客户端密码)

安装

  1. 克隆此存储库:
git clone https://github.com/danisss9/spotify-playlist-generator-mcp-server
  1. 安装依赖项:
npm install
  1. 创建Spotify应用程序:

- 转到 Spotify开发者仪表板 - 创建新应用程序 - 记下你的客户ID和客户密码 - 添加 http://localhost:8888/callback 重定向URI

  1. 设置环境变量:
# Create a .env file
echo "SPOTIFY_CLIENT_ID=your_client_id_here" > .env
echo "SPOTIFY_CLIENT_SECRET=your_client_secret_here" >> .env
  1. 构建TypeScript代码:
npm run build

运行服务器

对于自动重建的开发:

npm run dev

生产:

npm start

与MCP客户端一起使用

此服务器使用stdio传输,因此它可以与任何支持stdio的MCP客户端一起使用。

Claude桌面配置

添加到您的Claude Desktop配置文件中:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json 视窗: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "spotify-playlist-generator": {
      "command": "node",
      "args": ["/absolute/path/to/spotify-playlist-generator/build/index.js"],
      "env": {
        "SPOTIFY_CLIENT_ID": "your_client_id_here",
        "SPOTIFY_CLIENT_SECRET": "your_client_secret_here"
      }
    }
  }
}

Visual Studio代码与GitHub副本配置

要在Visual Studio Code中将此MCP服务器与GitHub Copilot一起使用,您需要在VS Code设置中对其进行配置:

  1. 打开VS代码设置:新闻 Ctrl+, (Windows/Linux)或 Cmd+, (macOS)
  1. 搜索MCP:在搜索栏中键入“mcp”
  1. 添加MCP服务器配置:将以下内容添加到您的VS代码设置JSON中:
{
  "github.copilot.chat.mcp.servers": {
    "spotify-playlist-generator": {
      "command": "node",
      "args": ["/absolute/path/to/spotify-playlist-generator/build/index.js"],
      "env": {
        "SPOTIFY_CLIENT_ID": "your_client_id_here",
        "SPOTIFY_CLIENT_SECRET": "your_client_secret_here"
      }
    }
  }
}

替代方案:使用设置UI

  1. 首选 文件>首选项>设置 (或使用 Ctrl+,)
  2. 搜索“GitHub Copilot MCP”
  3. 点击“Github›Copilot \\8250 Chat:Mcp服务器”旁边的“在settings.json中编辑”
  4. 添加如上所示的服务器配置

环境变量设置

为了安全起见,您还可以在系统范围内设置环境变量,而不是在配置中设置:

Windows(PowerShell):

[Environment]::SetEnvironmentVariable("SPOTIFY_CLIENT_ID", "your_client_id_here", "User")
[Environment]::SetEnvironmentVariable("SPOTIFY_CLIENT_SECRET", "your_client_secret_here", "User")

Windows(命令提示符):

setx SPOTIFY_CLIENT_ID "your_client_id_here"
setx SPOTIFY_CLIENT_SECRET "your_client_secret_here"

macOS/Linux:

export SPOTIFY_CLIENT_ID="your_client_id_here"
export SPOTIFY_CLIENT_SECRET="your_client_secret_here"
# Add to ~/.bashrc, ~/.zshrc, or ~/.profile to persist
echo 'export SPOTIFY_CLIENT_ID="your_client_id_here"' >> ~/.bashrc
echo 'export SPOTIFY_CLIENT_SECRET="your_client_secret_here"' >> ~/.bashrc

然后移除 env VS代码配置中的部分:

{
  "github.copilot.chat.mcp.servers": {
    "spotify-playlist-generator": {
      "command": "node",
      "args": ["/absolute/path/to/spotify-playlist-generator/build/index.js"]
    }
  }
}

VS代码中的用法

配置后,您可以通过GitHub Copilot Chat使用MCP服务器:

  1. 打开Copilot聊天(Ctrl+Alt+I 或点击聊天图标)
  2. 使用自然语言与Spotify互动:

- “搜索爵士乐曲目” - “创建一个名为“我的收藏夹”的新播放列表” - “将这些曲目添加到我的播放列表” - “显示此Spotify曲目的详细信息”

可用工具

OAuth必需工具(所有功能都需要身份验证)

authenticate_spotify

使用Spotify OAuth进行身份验证,以启用音乐搜索和播放列表管理功能。

参数:

  • getAuthUrl (boolean,默认值:false):设置为true以获取授权URL
  • authCode (字符串,可选):来自OAuth流的授权代码

获取auth_status

检查当前的Spotify身份验证状态。

参数:

搜索轨迹

在Spotify上搜索音乐曲目。

参数:

  • query (string):搜索曲目查询
  • limit (数字,1-50,默认值:20):最大结果数
  • market (字符串,可选):用于过滤结果的ISO 3166-1 alpha-2国家代码

get_track_details

获取特定Spotify曲目的详细信息。

参数:

  • trackId (字符串):Spotify曲目ID
  • market (字符串,可选):市场的ISO 3166-1 alpha-2国家代码

创建播放列表

创建新的Spotify播放列表(需要身份验证)。

参数:

  • name (string):播放列表名称
  • description (字符串,可选):播放列表描述
  • public (boolean,默认值:false):播放列表是否应公开
  • collaborative (boolean,默认值:false):播放列表是否应该是协作的

edit_playlist

编辑现有播放列表信息(需要身份验证)。

参数:

  • playlistId (string):要编辑的播放列表的ID
  • name (字符串,可选):播放列表的新名称
  • description (字符串,可选):播放列表的新描述
  • public (布尔值,可选):新建公共设置
  • collaborative (布尔值,可选):新的协作设置

注: 必须至少提供一个字段(名称、描述、公开或协作)才能更新。

add_to_playlist

将曲目添加到Spotify播放列表(需要身份验证)。

参数:

  • playlistId (string):目标播放列表ID
  • trackUris (字符串数组):要添加的Spotify曲目URI数组
  • position (数字,可选):插入轨迹的位置(从0开始的索引)

list_playlists

列出用户的Spotify播放列表(需要身份验证)。

参数:

  • limit (数字,1-50,默认值:20):播放列表的最大数量
  • offset (数字,最小值:0,默认值:0):分页的索引偏移量

get_playlist_tracks

从Spotify播放列表中获取曲目(需要身份验证)。

参数:

  • playlistId (string):要从中获取曲目的播放列表的ID
  • limit (数字,1-100,默认值:50):要返回的最大曲目数
  • offset (数字,最小值:0,默认值:0):分页的索引偏移量

remove_from_playlist

从Spotify播放列表中删除曲目(需要身份验证)。

参数:

  • playlistId (string):要从中删除曲目的播放列表的ID
  • trackUris (字符串数组):要删除的Spotify曲目URI数组
  • snapshotId (字符串,可选):用于版本控制的播放列表快照ID

OAuth身份验证设置

对于所有功能,您需要在Spotify上设置OAuth 2.0:

1.Spotify开发者仪表板设置

  1. 首选 Spotify开发者仪表板
  2. 使用您的Spotify帐户登录
  3. 点击“创建应用程序”
  4. 填写应用程序名称和描述
  5. 添加 http://localhost:8888/callback 重定向URI
  6. 复制您的客户端ID和客户端密码

2.环境配置

将您的OAuth凭据添加到 .env 文件:

SPOTIFY_CLIENT_ID=your_client_id_here
SPOTIFY_CLIENT_SECRET=your_client_secret_here

3.身份验证流程

  1. 使用 authenticate_spotify 工具与 getAuthUrl: true
  2. 在浏览器中打开提供的URL
  3. 登录您的Spotify帐户并授予权限
  4. 从回调URL复制授权码
  5. 使用 authenticate_spotify 再次使用工具 authCode 参数

4.使用经过身份验证的功能

一旦通过身份验证,您可以:

  • 搜索音乐曲目
  • 获取详细的赛道信息
  • 创建新播放列表
  • 编辑现有播放列表信息(名称、描述、隐私)
  • 将曲目添加到播放列表
  • 列出您的播放列表
  • 从播放列表中获取曲目
  • 从播放列表中删除曲目

API限制

  • 速率限制:Spotify API有费率限制(因端点而异)
  • OAuth令牌:访问令牌在1小时后过期,需要刷新
  • 市场限制:某些市场可能无法提供某些曲目
  • 权限:OAuth作用域决定可用操作

发展

建筑

npm run build

发展模式

npm run dev

项目结构

src/
└── index.ts          # Main server implementation

build/                # Compiled JavaScript output

贡献

  1. 分叉存储库
  2. 创建要素分支
  3. 进行更改
  4. 彻底测试
  5. 提交拉取请求

许可证

MIT许可证-有关详细信息,请参阅许可证文件

故障排除

常见问题

  1. “SPOTIY_LIENT_ID和SPOTIF_LIENT_SECRET环境变量是必需的”

- 确保您已设置了两个环境变量 - 验证您的Spotify应用程序中的凭据是否有效

  1. “需要身份验证”错误

- 使用 authenticate_spotify 首先进行身份验证的工具 - 检查您的访问令牌是否已过期并重新进行身份验证

  1. “超出速率限制”错误

- 等待速率限制重置 - 降低API调用频率

  1. 构建错误

- 请确保您已安装Node.js 18+ - 跑 npm install 确保所有依赖项都已安装 - 检查TypeScript编译 npm run build

  1. “轨道不可用”错误

- 某些曲目可能在您的市场上不可用 - 尝试指定其他市场参数

安全考虑

  • 永远不要将API密钥提交到版本控制
  • 使用环境变量进行敏感配置
  • 验证所有用户输入
  • 实施适当的错误处理和日志记录
  • 注意Spotify的API服务条款

______________________________________________________________________

*此项目是使用GitHub Copilot创建的*

目录标签

目录标签

TypeScriptClaude搜索音乐搜索本地部署播放列表管理AI集成SpotifyAPI

支持客户端

Claude DesktopClaudeVS Code

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

oauth

工具数量(toolCount,工具数)

10

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明oauth部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP