BoardGameGeek MCP Server

BoardGameGeek MCP server providing access to BGG API data through standardized tools

OtherGov1.9.2

An MCP server that gives AI assistants access to BoardGameGeek: game details, collections, prices, recommendations and rules answers.

Trust score MCP Registry Go Version License MCP Protocol

BGG MCP provides access to the BoardGameGeek API through the Model Context Protocol, enabling retrieval and filtering of board game data, user collections, and profiles. The server is implemented in Go, using the GoGeek library, which helps ensure robust API interactions.

Price data is provided by BoardGamePrices.co.uk, offering real-time pricing from multiple retailers.

Game recommendations are powered by Recommend.Games, which provides algorithmic similarity recommendations based on BoardGameGeek data.

Powered by BGG

Demo

Claude listing the games rated 10 in a BGG collection, then which of them play best at 2 players from BGG's player count votes

Tools

ToolDescription
bgg-searchSearch for board games with type filtering (base games, expansions, or all)
bgg-detailsGet game details, including best player counts, rank, and optional marketplace listings, editions and user comments
bgg-collectionQuery and filter a user's collection, with their ratings, BGG ratings, rank and plays
bgg-hotGet the current BGG hotness list
bgg-userGet user profile information
bgg-priceGet current prices from multiple retailers using BGG IDs
bgg-trade-finderFind trading opportunities between two BGG users
bgg-recommenderGet game recommendations based on similarity to a specific game
bgg-rulesAnswer rules questions by finding the most relevant threads in a game's BGG rules forum
bgg-thread-detailsGet the full content of a specific BGG forum thread including all posts

[!NOTE] Results link back to their pages on boardgamegeek.com, and the assistant is asked to include those links in its answers.

Resources

BGG MCP exposes resources that AI assistants can access directly for contextual information:

ResourceURIDescription
BGG Hotnessbgg://hotnessCurrent BGG hotness list, always available
My BGG Collectionbgg://my-collectionYour personal BGG collection (only listed when BGG_USERNAME is set)
BGG User Collectionbgg://collection/{username}The owned games in any BGG user's collection
BGG Gamebgg://game/{id}Essential information about a game by its BGG ID
BGG Forum Threadbgg://thread/{id}A BGG forum thread by its ID, with every post as plain text

Prompts

BGG MCP includes pre-configured prompts for common workflows:

PromptArgumentsDescription
trade-sales-postusername, currency, destination, discount, platformGenerate a sales post for your BGG 'for trade' collection, discounted from retail prices
game-recommendationsusername, currency, destinationGet personalized game recommendations based on your BGG collection and preferences
rules-questiongame, questionAnswer a rules question from the game's BGG rules forum

username is optional on both prompts when BGG_USERNAME is set.

Example Prompts

Here are some example prompts you can use to interact with the BGG MCP tools:

πŸ” Search

"Search for Wingspan on BGG"
"How many expansions does Grand Austria Hotel have?"
"Search for Wingspan expansions only"

πŸ“Š Game Details

"Get details for Azul"
"Show me information about game ID 224517"
"What's the BGG rating for Gloomhaven?"
"What is Ark Nova selling for on the BGG marketplace?"
"What expansions does Wingspan have?"

πŸ“š Collection

"Show me ZeeGarcia's game collection"
"Show games rated 9+ in kkjdaniel's collection"
"List unplayed games in rahdo's collection"
"Find games for 6 players in kkjdaniel's collection"
"Show me all the games rated 3 and below in my collection"
"What games in my collection does rahdo want?"
"What games does kkjdaniel have that I want?"
"Which games in my collection play best at 2 players?"

πŸ”₯ Hotness

"Show me the current BGG hotness list"
"What's trending on BGG?"

πŸ‘€ User Profile

"Show me details about BGG user rahdo"
"When did user ZeeGarcia join BGG?"
"How many buddies do I have on bgg?"

πŸ’° Prices

"Get the best price for Wingspan in GBP"
"Show me the best UK price for Ark Nova"
"Compare prices for: Wingspan & Ark Nova"

🎯 Recommendations

"Recommend games similar to Wingspan"
"What games are like Azul but with at least 1000 ratings?"
"Find 5 games similar to Troyes"

πŸ“– Rules

[!TIP] Assistants often answer rules questions from memory. Mention BGG and make it clear you mean a board game so the rules forum gets searched, or use the rules-question prompt.

"Check BGG, in Wingspan do pink powers trigger on my own turn?"
"What does the BGG rules forum say about trading with the bank during another player's turn in Catan?"
"In the board game Root, can the Vagabond attack a player it is allied with? Check BGG"
"Search BGG for how line of sight works in Gloomhaven"

Installation

Authentication Required: Most BGG MCP tools require authentication to access BoardGameGeek's API. See the Configuration section below for setup instructions.

A) Claude Desktop Extension (macOS / Windows)

Download bgg-mcp.mcpb from the latest release and double-click it. Claude Desktop opens an install dialog where you can enter your BGG API key and username, with no Docker or Go needed.

B) Docker

BGG MCP is published to Docker Hub and listed on the MCP Registry. Add the following to your claude_desktop_config.json (Claude Desktop) or settings.json (VS Code / Cursor):

"bgg": {
    "command": "docker",
    "args": ["run", "-i", "--rm", "--pull=always",
        "-e", "BGG_API_KEY",
        "-e", "BGG_USERNAME",
        "kdaniel/bgg-mcp"
    ],
    "env": {
        "BGG_API_KEY": "your_api_key_here",
        "BGG_USERNAME": "your_bgg_username"
    }
}

See Configuration below for details on obtaining a BGG API key and setting up your username.

--pull=always fetches the newest image each time the server starts, so you stay up to date automatically. Remove it if you need to start the server offline.

For more details on connecting MCP servers to your client, see the official MCP guide.

C) Manual Setup

1. Install Go

You will need to have Go installed on your system to build binary. This can be easily downloaded and setup here, or you can use the package manager that you prefer such as Brew.

2. Build

The project includes a Makefile to simplify building and managing the binary.

# Build the application (output goes to build/bgg-mcp)
make build

# Clean build artifacts
make clean

# Both clean and build
make all

Or you can simply build it directly with Go...

go build -o build/bgg-mcp
3. Add MCP Config

In the settings.json (VS Code / Cursor) or claude_desktop_config.json add the following to your list of servers, pointing it to the binary you created earlier, once you load up your AI tool you should see the tools provided by the server connected:

"bgg": {
    "command": "path/to/build/bgg-mcp",
    "args": ["-mode", "stdio"]
}

More details for configuring Claude can be found here.

Configuration

Authentication

BGG MCP uses the GoGeek v3 library, which requires authentication for access to BoardGameGeek's API.

You can configure authentication using either BGG_API_KEY (recommended) or BGG_COOKIE:

Authentication Setup
Option 1: API Key (Recommended)

Get an API key from BoardGameGeek's API application form and add it to your configuration:

"bgg": {
    "env": {
        "BGG_API_KEY": "your_api_key_here"
    }
}
Option 2: Cookie Authentication

Alternatively, you can use cookie-based authentication:

"bgg": {
    "env": {
        "BGG_COOKIE": "bggusername=user; bggpassword=pass; SessionID=xyz"
    }
}

Note: If both are provided, BGG_API_KEY will be used by default.

Username Configuration

You can optionally set your BGG username to enable "me" and "my" references in queries without needing to explicitly state your username.

If you installed the Claude Desktop Extension, enter your username in the extension's settings in Claude Desktop (Settings > Extensions > BGG MCP), where you also set your API key. There is no config file to edit.

For Docker or a manual setup, set the BGG_USERNAME environment variable:

"bgg": {
    "env": {
        "BGG_USERNAME": "your_bgg_username",
        "BGG_API_KEY": "your_api_key_here"
    }
}

This enables:

  • Collection queries: "Show my collection" instead of specifying your username
  • User queries: "Show my BGG profile"
  • AI assistance: The AI can automatically use your username for comparisons and analysis

Note: When you use self-references (me, my, I) without setting your username, you'll get a clear error message.

Update Notifications

When it runs on your machine, BGG MCP checks GitHub once a day for a newer release. If there is one, the assistant mentions it once per conversation with a link to the release. Set BGG_DISABLE_UPDATE_CHECK to true to turn this off. The server never checks when it runs in HTTP mode.

Installation

Source-derived launch command. Check the maintainer’s required arguments and credentials before running:

bash
docker run -i --rm docker.io/kdaniel/bgg-mcp:1.9.2

Set up in your AI client

Merge this template into ~/Library/Application Support/Claude/claude_desktop_config.json. Keep existing servers. Add any arguments, credentials, and permissions required by the maintainer; this template has not been install-tested.

json
{
  "mcpServers": {
    "io-github-kkjdaniel-bgg-mcp": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "docker.io/kdaniel/bgg-mcp:1.9.2"
      ]
    }
  }
}

Restart Claude Desktop completely for changes to take effect. Confirm the server appears connected in the client’s tool list, then try a read-only example from its documentation.

Claude Desktop setup reference

Package

docker.io/kdaniel/bgg-mcp:1.9.2docker

Compatible MCP Clients

BoardGameGeek MCP Server works with any MCP-compatible client. Copy the config snippet from the Configuration section above and add it to the file shown for your client, then restart the application.

  • Claude Desktop~/Library/Application Support/Claude/claude_desktop_config.jsonRestart Claude Desktop completely for changes to take effect.
  • Cursor~/.cursor/mcp.jsonRestart Cursor for changes to take effect.
  • VS Code.vscode/mcp.jsonReload VS Code window for changes to take effect.
  • Windsurf~/.codeium/windsurf/mcp_config.jsonRestart Windsurf for changes to take effect.
  • Claude Code.mcp.jsonSave at the project root, then start Claude Code in that project and review the MCP server approval prompt. Keep real credentials out of shared files.

Learn More