cswkim
MCP 服务配置
复制以下 JSON 到 OPClaw 或其他 MCP 客户端的配置文件中即可使用
{
"mcpServers": {
"discogs": {
"args": [
"-y",
"discogs-mcp-server"
],
"command": "npx",
"env": {
"DISCOGS_PERSONAL_ACCESS_TOKEN": "\u003cYOUR_TOKEN\u003e"
}
}
}
}
服务介绍
Discogs MCP 服务器
用于 Discogs API 的 MCP 服务器,支持音乐目录操作、搜索功能等。
快速开始
如果您只想立即使用此 MCP 服务器与 Claude 桌面应用程序,并且不关心开发或自行运行服务器,请确保已安装 Node.js,并准备好您的 Discogs 个人访问令牌,然后直接跳到 Claude 配置部分。使用该部分中的 NPX 方法。
目录
致谢
此 MCP 服务器是使用 FastMCP 构建的,这是一个用于构建 MCP 服务器的 TypeScript 框架。有关 MCP 及如何使用 MCP 服务器的更多信息,请参阅 FastMCP 文档 和 官方 MCP 文档。
可用工具
查看可用工具列表:TOOLS.md
注意事项
- Discogs API 文档 并不完美,某些端点可能没有完全记录或存在不一致之处。
- 由于 API 端点和响应类型数量庞大,无法对每个可能的响应进行类型安全验证。如果您遇到任何类型相关的问题,请报告。
- 此 MCP 服务器允许编辑您在 Discogs 中的收藏数据。请谨慎使用,并在执行前验证您的操作。
- Discogs API 的
per_page默认值为50,这可能对某些客户端来说数据量过大,因此在此项目中将discogs.config.defaultPerPage值设置为5。您可以在提示中请求更多数据,但请注意某些客户端可能难以处理较大的响应。
先决条件
- Node.js(测试版本为 Node.js
20.x.x,但18.x.x也应该可以工作)- 使用以下命令检查您的 Node.js 版本:
node --version
- 使用以下命令检查您的 Node.js 版本:
- Docker(可选,用于在无需处理 Node 或依赖项的情况下运行本地 Docker 镜像)
设置
- 克隆仓库
- 在根目录下基于
.env.example创建一个.env文件 - 在您的
.env文件中设置以下必需的环境变量:DISCOGS_PERSONAL_ACCESS_TOKEN: 您的 Discogs 个人访问令牌
要获取您的 Discogs 个人访问令牌,请转到 Discogs 设置 > 开发者 页面,找到您的令牌或生成一个新的令牌。不要共享您的令牌。将在未来的版本中添加 OAuth 支持。在 .env.example 中的其他环境变量是可选的,并且有合理的默认值,因此除非你有特定需求,否则不需要设置它们。
本地运行服务器
选项 1:本地开发
-
安装依赖项:
bash
pnpm install -
可用命令:
pnpm run dev: 启动带有热重载功能的开发服务器pnpm run dev:stream: 在 HTTP 流模式下启动带有热重载功能的开发服务器pnpm run build: 构建生产版本pnpm run start: 运行生产构建pnpm run inspect: 运行 MCP 检查器(参见检查部分)pnpm run format: 检查代码格式(prettier)pnpm run lint: 运行 linter(eslint)pnpm run test: 运行 vitestpnpm run test:coverage: 运行 vitest v8 覆盖率pnpm run version:check: 检查 package.json 版本和 src/version.ts 是否匹配
选项 2:Docker
-
构建 Docker 镜像:
bash
docker build -t discogs-mcp-server:latest . -
运行容器:
bash
docker run --env-file .env discogs-mcp-server:latest对于 HTTP 流传输模式:
bash端口应与 .env 文件中的配置一致
docker run --env-file .env -p 3001:3001 discogs-mcp-server:latest stream
检查
运行 MCP 检查器以测试你的本地 MCP 服务器:
bash
pnpm run inspect
这将在 http://127.0.0.1:6274 启动 MCP 检查器。在浏览器中访问此 URL 以与你的本地 MCP 服务器交互。
有关 MCP 检查器的更多信息,请访问官方文档。
MCP 客户端
目前,此 MCP 服务器仅使用 Claude Desktop 进行了测试。将来会添加更多客户端示例。
Claude Desktop 配置
在 Claude > 设置 > 开发者 > 编辑配置 中找到你的 claude_desktop_config.json,并根据你的选择,添加以下之一:
NPX
直接从 npm 注册表运行。
json
{
"mcpServers": {
"discogs": {
"command": "npx",
"args": [
"-y",
"discogs-mcp-server"
],
"env": {
"DISCOGS_PERSONAL_ACCESS_TOKEN": "<YOUR_TOKEN>"
}
}
}
}
本地 Node
在使用此方法之前应安装依赖项 (pnpm install)。
json
{
"mcpServers": {
"discogs": {
"command": "npx",
"args": [
"tsx",
"/PATH/TO/YOUR/PROJECT/FOLDER/src/index.ts"
],
"env": {
"DISCOGS_PERSONAL_ACCESS_TOKEN": "<YOUR_TOKEN>"
}
}
}
}
Docker
在使用此方法之前应构建 Docker 镜像。
json
{
"mcpServers": {
"discogs": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"--env-file",
"/PATH/TO/YOUR/PROJECT/FOLDER/.env",
"discogs-mcp-server:latest"
]
}
}
}
对本地代码的任何更改都需要重启 Claude 才能生效。此外,Claude 需要人类参与的交互来允许运行 MCP 工具,因此每次访问新工具时 Claude 都会请求权限。通常每个聊天中每个工具只需要授权一次。如果使用免费版本,在长聊天中尝试运行工具可能会导致更频繁的错误,因为 Claude 限制了单个聊天中的上下文数量。
待办事项
- OAuth 支持
- 缺失的工具:
- 库存上传
许可证
此 MCP 服务器采用 MIT 许可证。这意味着你可以自由使用、修改和分发该软件,但需遵守 MIT 许可证的条款和条件。更多详情,请参阅项目仓库中的 LICENSE 文件。