c

cswkim

@cswkim/discogs-mcp-server
0 Stars 323 次浏览 cswkim 更新于 2026-08-23

MCP 服务配置

复制以下 JSON 到 OPClaw 或其他 MCP 客户端的配置文件中即可使用

{
  "mcpServers": {
    "discogs": {
      "args": [
        "-y",
        "discogs-mcp-server"
      ],
      "command": "npx",
      "env": {
        "DISCOGS_PERSONAL_ACCESS_TOKEN": "\u003cYOUR_TOKEN\u003e"
      }
    }
  }
}

服务介绍

License
GitHub Release
GitHub Actions Workflow Status
NPM Downloads
Sponsor

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
  • Docker(可选,用于在无需处理 Node 或依赖项的情况下运行本地 Docker 镜像)

设置

  1. 克隆仓库
  2. 在根目录下基于 .env.example 创建一个 .env 文件
  3. 在您的 .env 文件中设置以下必需的环境变量:
    • DISCOGS_PERSONAL_ACCESS_TOKEN: 您的 Discogs 个人访问令牌

要获取您的 Discogs 个人访问令牌,请转到 Discogs 设置 > 开发者 页面,找到您的令牌或生成一个新的令牌。不要共享您的令牌。将在未来的版本中添加 OAuth 支持。在 .env.example 中的其他环境变量是可选的,并且有合理的默认值,因此除非你有特定需求,否则不需要设置它们。

本地运行服务器

选项 1:本地开发

  1. 安装依赖项:
    bash
    pnpm install

  2. 可用命令:

    • 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: 运行 vitest
    • pnpm run test:coverage: 运行 vitest v8 覆盖率
    • pnpm run version:check: 检查 package.json 版本和 src/version.ts 是否匹配

选项 2:Docker

  1. 构建 Docker 镜像:
    bash
    docker build -t discogs-mcp-server:latest .

  2. 运行容器:
    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 文件。

相关 MCP 服务