返回 MCP 目录
public公开dns本地运行

bgg-mcp-server

这是一个与BoardGameGeek XML API集成的MCP服务器,提供桌游搜索、详情获取、热门游戏查询、用户收藏同步等功能,支持SQLite数据存储和Docker部署。

article

README

🚀 BoardGameGeek MCP 服务器

这是一个集成了 BoardGameGeek XML API 的模型上下文协议 (MCP) 服务器,它能让 Claude 搜索桌游、获取游戏详细信息、检索用户收藏等。

🚀 快速开始

此服务器提供了一系列工具,让你可以轻松与 BoardGameGeek 上的桌游数据进行交互。下面将为你介绍如何构建、运行和测试该服务器,以及如何与 Claude for Desktop 集成。

✨ 主要特性

此服务器提供以下工具:

  1. search-games:按名称搜索桌游。
  2. get-game-details:获取特定桌游的详细信息。
  3. get-hot-games:获取 BoardGameGeek 上当前最热门的桌游。
  4. get-user-collection:获取用户的桌游收藏,还带有过滤选项。
  5. get-user-plays:获取用户的近期桌游游玩记录。
  6. get-similar-games:获取与指定游戏相似的桌游。
  7. sync-user-collection:同步用户从 BoardGameGeek 的收藏。
  8. sync-user-plays:同步用户从 BoardGameGeek 的游玩记录。

功能清单

  • [x] 搜索
  • [x] 获取游戏详细信息
  • [x] 热门游戏
  • [ ] 获取用户游玩记录
  • [ ] 同步用户游玩记录
  • [ ] 获取用户收藏
  • [ ] 同步用户收藏
  • [ ] 获取相似游戏

📦 安装指南

先决条件

  • Node.js 22.5.0 或更高版本(用于实验性 SQLite 支持)
  • npm(用于依赖管理)

构建服务器

# 安装依赖项
npm install

# 构建 TypeScript 代码
npm run build

直接运行服务器

# 需要 --experimental-sqlite 标志
node --experimental-sqlite build/index.js

使用 Docker 运行

# 构建 Docker 镜像
docker build -t bgg-mcp-server .

# 运行容器
docker run --rm -i bgg-mcp-server

💻 使用示例

配置示例

{
  "mcpServers": {
    "boardgamegeek": {
      "command": "node",
      "args": ["--experimental-sqlite", "/path/to/bgg-mcp-server/build/index.js"]
    }
  }
}

命令示例

# 构建项目
npm install && npm run build

# 运行测试脚本
node --experimental-sqlite test-mcp.js

# 使用 Docker 运行
docker build -t bgg-mcp-server . && docker run --rm -i bgg-mcp-server

📚 详细文档

测试

要验证服务器是否正常运行:

# 确保服务器已构建
npm run build

# 使用实验性 SQLite 标志运行测试脚本
node --experimental-sqlite test-mcp.js

测试脚本将:

  1. 启动 MCP 服务器。
  2. 测试 search-games 功能。
  3. 测试 get-hot-games 功能。
  4. 显示结果和任何错误。

与 Claude for Desktop 使用

  1. 打开你的 Claude for Desktop 配置文件:
    • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
    • Windows: %APPDATA%\Claude\claude_desktop_config.json
  2. 添加直接通过 Node.js 执行的服务器配置:
{
  "mcpServers": {
    "boardgamegeek": {
      "command": "node",
      "args": ["--experimental-sqlite", "/path/to/bgg-mcp-server/build/index.js"]
    }
  }
}
  1. 或使用 Docker(推荐):
{
  "mcpServers": {
    "boardgamegeek": {
      "command": "bash",
      "args": ["-c", "cd /path/to/bgg-mcp-server && docker build -t bgg-mcp-server . && docker run --rm -i -v \"$(pwd)/data:/app/data\" bgg-mcp-server"]
    }
  }
}

注意:-v 标志用于挂载数据目录,确保数据持久化。 4. 重启或重新加载 Claude 应用程序以应用配置。

⚠️ 注意事项

⚠️ 重要提示

  • 确保 Node.js 和 npm 已正确安装。
  • 在使用 Docker 时,可能需要调整挂载路径以确保数据持久化。
  • 测试脚本可能会生成额外的日志或输出,请检查控制台以获取更多信息。

通过以上步骤,您可以成功设置和运行 BoardGameGeek MCP 服务器,并与 Claude 集成。

help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端