项目简介
Discogs MCP 服务器是一个基于 Model Context Protocol (MCP) 构建的应用后端,旨在为大型语言模型(LLM)客户端提供访问 Discogs 音乐数据库和用户数据的功能。它允许用户通过 LLM 客户端以自然语言指令操作 Discogs 平台上的音乐数据,例如搜索唱片信息、管理个人收藏和愿望单等。
主要功能点
- 数据访问能力: 提供对 Discogs 数据库中 Releases, Artists, Labels, Master Releases 等资源的访问能力。
- 用户数据管理: 支持访问和管理用户的 Discogs 收藏库和愿望单,包括浏览、添加、删除和评价唱片等操作。
- 用户身份验证: 通过 Discogs Personal Access Token 进行身份验证,安全访问用户 Discogs 账户数据。
- 可扩展工具: 提供一系列预定义的工具 (Tools),例如搜索 Discogs 数据库、获取唱片信息、管理用户收藏和愿望单等,方便 LLM 客户端调用。
- 易于配置: 支持多种运行方式,包括本地开发、Docker 容器和 NPX 快速启动,方便用户快速部署和使用。
安装步骤
-
克隆仓库
git clone https://github.com/cswkim/discogs-mcp-server.git cd discogs-mcp-server -
配置环境变量
- 复制 '.env.example' 文件并重命名为 '.env'。
- 在 '.env' 文件中设置 'DISCOGS_PERSONAL_ACCESS_TOKEN' 环境变量,填入您的 Discogs 个人访问令牌。您可以在 Discogs Settings > Developers 页面获取。
-
安装依赖 如果选择本地 Node.js 运行,请确保已安装 Node.js 和 pnpm。然后运行:
pnpm install -
启动服务器
- 本地开发模式 (推荐):
或使用 SSE 模式:pnpm run devpnpm run dev:sse - Docker 运行:
或使用 SSE 模式:docker build -t discogs-mcp-server:latest . docker run --env-file .env discogs-mcp-server:latestdocker run --env-file .env -p 3001:3001 discogs-mcp-server:latest sse
- 本地开发模式 (推荐):
服务器配置 (MCP 客户端)
以下是 Claude 桌面应用的 MCP 服务器配置示例 (使用 NPX 方式启动):
{ "mcpServers": { "discogs": { "command": "npx", "args": [ "-y", "discogs-mcp-server" ], "env": { "DISCOGS_PERSONAL_ACCESS_TOKEN": "<YOUR_TOKEN>" // 替换为您的 Discogs 个人访问令牌 } } } }
- '"discogs"': 服务器名称,可以自定义。
- '"command": "npx"': 启动服务器的命令,这里使用 'npx' 直接运行 npm 包。
- '"args": [...]': 传递给 'npx' 命令的参数,'-y' 表示自动确认安装,'discogs-mcp-server' 是要运行的 npm 包名。
- '"env": { ... }': 环境变量配置,'DISCOGS_PERSONAL_ACCESS_TOKEN' 用于身份验证,请替换 '<YOUR_TOKEN>' 为您实际的令牌。
注意: 其他 MCP 客户端的配置方式可能略有不同,但核心配置思路类似,都需要指定服务器启动命令及其参数。
基本使用方法
-
配置 MCP 客户端(如 Claude 桌面应用),添加上述服务器配置。
-
在 MCP 客户端中,即可通过自然语言指令调用 Discogs MCP 服务器提供的工具,例如:
- 'Search Discogs for releases by artist "The Beatles"' (调用 'search' 工具搜索 Beatles 的唱片)
- 'Get release information for release ID 123456' (调用 'get_release' 工具获取指定 Release ID 的详细信息)
- 'Show me my Discogs collection folders' (调用 'get_user_collection_folders' 工具查看个人收藏夹)
- 'Add release ID 789012 to my "Favorites" collection folder' (调用 'add_release_to_user_collection_folder' 工具添加唱片到指定收藏夹)
更多工具和使用方法请参考仓库中的 TOOLS.md 文件。
信息
分类
网页与API