BoardGameGeek MCP Server

by attilad
Verified

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Integrations

  • Integrates with BoardGameGeek's XML API to search for board games, retrieve game details, get hot games, access user collections and play history, and find similar games.

BoardGameGeek MCP サーバー

これは、BoardGameGeek XML API と統合されたモデル コンテキスト プロトコル (MCP) サーバーであり、Claude がボード ゲームを検索したり、ゲームの詳細を取得したり、ユーザー コレクションを取得したりできるようになります。

特徴

このサーバーは次のツールを提供します。

  1. search-games : ボードゲームを名前で検索
  2. get-game-details : 特定のボードゲームに関する詳細情報を取得する
  3. get-hot-games : BoardGameGeekで現在最も人気のボードゲームを入手
  4. get-user-collection : フィルタリングオプションを使用してユーザーのボードゲームコレクションを取得する
  5. sync-user-collection : BoardGameGeek からユーザーのコレクションを同期する
  6. get-user-plays : ユーザーの最近のボードゲームプレイを取得する
  7. sync-user-plays : BoardGameGeek からユーザーのプレイを同期する
  8. get-similar-games : 指定したゲームに類似したゲームを取得する

機能チェックリスト

  • [x] 検索
  • [x] ゲームの詳細を見る
  • [x] 人気ゲーム
  • [ ] ユーザープレイ数を獲得
  • [ ] 同期ユーザープレイ
  • [ ] ユーザーコレクションを取得
  • [ ] ユーザーコレクションを同期
  • [ ] 類似ゲームを入手

前提条件

  • Node.js 22.5.0 以上(実験的な SQLite サポートに必要)
  • npm(依存関係管理用)

構築と実行

サーバーを構築するには:

# Install dependencies npm install # Build the TypeScript code npm run build

サーバーを直接実行するには:

# The --experimental-sqlite flag is required node --experimental-sqlite build/index.js

Docker で実行するには:

# Build the Docker image docker build -t bgg-mcp-server . # Run the container docker run --rm -i bgg-mcp-server

テスト

サーバーが正しく動作していることを確認するには:

# Make sure the server is built first npm run build # Run the test script with the experimental SQLite flag node --experimental-sqlite test-mcp.js

テスト スクリプトは次の処理を実行します。

  1. MCPサーバーを起動する
  2. 検索ゲーム機能をテストする
  3. ホットゲーム機能をテストする
  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 "$(pwd)/data:/app/data"オプションは、ローカルdataディレクトリを Docker コンテナ内の/app/dataディレクトリにマウントし、SQLite データベースがコンテナ外部に永続化されることを保証します。

  1. デスクトップ版のClaudeを再起動する

例題

Claude に接続すると、次のような質問をすることができます。

  • 「Boardgamegeekで人気の新しいゲームは何ですか?」
  • 「boardgamegeekでMolly Houseというゲームを検索してください」

データストレージ

サーバーはデータの永続化にSQLiteを使用しています。取得したゲームデータ、ユーザーコレクション、プレイ履歴はすべてdata/bgg.sqliteデータベースファイルに保存されます。これは以下のようになります。

  • BoardGameGeekへのAPI呼び出しを削減
  • 繰り返しのクエリに対する応答時間を改善
  • サーバーの再起動間でデータを維持する

データベースが存在しない場合は自動的に作成され、サーバーの使用時にデータが入力されます。

-
security - not tested
F
license - not found
-
quality - not tested

BoardGameGeek XML API と統合された MCP サーバー。これにより、Claude はボードゲームを検索し、ゲームの詳細を取得し、ユーザー コレクションにアクセスできるようになります。

  1. Features
    1. Feature Checklist
  2. Prerequisites
    1. Building and Running
      1. To build the server:
      2. To run the server directly:
      3. To run with Docker:
    2. Testing
      1. Using with Claude for Desktop
        1. Example Questions
          1. Data Storage
            ID: 0nb148v11x