Command Palette

Search for a command to run...

UnylyUnyly
Browse all

Warhammer Oracle

FreeMaintained

Warhammer Oracle is an MCP server that gives AI assistants accurate Warhammer 40K, Combat Patrol, and Kill Team rules, unit stats, and game flow - so they stop

GitHubEmbed

About

Warhammer Oracle is an MCP server that gives AI assistants accurate Warhammer 40K, Combat Patrol, and Kill Team rules, unit stats, and game flow - so they stop hallucinating rules mid-game. It contains 6 tools (lookup, search, compare units, keywords, phases) covering 2,642 40K units and 506 Kill Team operatives across 48 factions.

README

Warhammer Oracle

Warhammer 40K rules, unit stats, and game flow. An MCP server.

npm version npm downloads MIT Licence Node.js 18+ MCP Compatible Sponsor warhammer-oracle MCP server


Ask your AI assistant about datasheets, stratagems, detachments, enhancements, keywords, phase sequences, wound math, and more. Covers Warhammer 40,000 (10th and 11th Edition), Combat Patrol, and Kill Team.

warhammer-oracle MCP server

Editions: 40K unit/detachment/enhancement lookups default to 11th Edition. Pass game_mode: "40k_10e" to any tool for 10th Edition data instead — 10th Edition support isn't going away. Turn sequences/phases, core keywords, and Core Stratagems are hand-curated from the 11th Edition Core Rules. Detachment-specific stratagems are hand-curated per faction, layered the same way the tabletop rules are layered: an 11th Edition Faction Pack detachment overrides the base Codex where the pack details it in full, and the unrevised Codex baseline applies everywhere else.

Installation

npx warhammer-oracle

Or install globally:

npm install -g warhammer-oracle

Configuration

Claude Desktop

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "warhammer-oracle": {
      "command": "npx",
      "args": ["-y", "warhammer-oracle"]
    }
  }
}

Claude Code

claude mcp add warhammer-oracle -- npx -y warhammer-oracle

Tools

lookup_unit

Look up a unit datasheet by name. Returns stat profiles, unit size (model count), ranged and melee weapons, abilities, and keywords.

"Look up the Intercessor Squad datasheet"
"What are the stats for a Leman Russ Battle Tank?"

Parameters: unit_name (required), faction (optional), game_mode (optional: 40k/40k_11e (default, 11th Edition), 40k_10e, combat_patrol, kill_team)

lookup_keyword

Look up a keyword or rule. Returns the official definition, a plain English explanation, examples, and which game modes it applies to.

"What does Devastating Wounds do?"
"Explain the Feel No Pain keyword"

Parameters: keyword (required), game_mode (optional)

lookup_phase

Look up a game phase by name. Returns step-by-step instructions and tips.

"Walk me through the Shooting phase"
"How does the Firefight phase work in Kill Team?"

Parameters: phase_name (required), game_mode (optional, default: 40k)

search_units

Search units by name, faction, keywords, or ability text. Returns a compact list (max 10 results) with faction, points, and keywords.

"Find all Necron units under 100 points"
"Search for units with the Fly keyword"
"Show me units with Deep Strike"

Parameters: query (required), faction (optional), ability (optional), max_points (optional), game_mode (optional: 40k/40k_11e (default), 40k_10e, combat_patrol, kill_team)

compare_units

Compare 2-4 units side by side. Shows full datasheets for each unit in a single response.

"Compare Intercessors vs Tactical Marines"
"Compare the Leman Russ, Predator, and Hammerhead side by side"

Parameters: units (required, array of 2-4 unit names), game_mode (optional: 40k/40k_11e (default), 40k_10e, combat_patrol, kill_team)

game_flow

Show the full turn sequence for a game mode, or highlight where you are in the turn and what comes next.

"Show me the 40K turn sequence"
"I'm in the Shooting phase — what's next?"
"Show the Kill Team turn sequence"

Parameters: current_phase (optional), game_mode (optional, default: 40k)

lookup_stratagem

Look up a Warhammer 40,000 stratagem by name. Returns CP cost, phase timing, target, and effect.

"What does Fire Overwatch do?"
"Show me the Command Re-roll stratagem"

Parameters: name (required), faction (optional), phase (optional), detachment (optional)

search_stratagems

Search stratagems by name, faction, phase, or detachment. Returns a compact list (max 10).

"What stratagems can I use in the Fight phase?"
"Show me Gladius Task Force stratagems"

Parameters: query (required), faction (optional), phase (optional), detachment (optional)

lookup_detachment

Look up a detachment by name. Returns the detachment ability, available enhancements, and associated stratagems.

"Show me the Gladius Task Force detachment"
"What does the Warhost detachment do for Aeldari?"

Parameters: name (required), faction (optional), game_mode (optional: 40k/40k_11e (default), 40k_10e)

lookup_enhancement

Look up a character enhancement by name. Returns points cost, detachment, and effect.

"What does Adept of the Codex do?"
"Show me Aeldari enhancements"

Parameters: name (required), faction (optional), detachment (optional), game_mode (optional: 40k/40k_11e (default), 40k_10e)

lookup_ploy

Look up a Kill Team ploy by name. Returns type (strategic/tactical), CP cost, timing, and effect.

"What does the Bolster ploy do in Kill Team?"
"Show me Legionaries ploys"

Parameters: name (required), faction (optional), type (optional: strategic, tactical)

wound_calculator

Calculate expected damage output for an attack profile against a target. Handles re-rolls, weapon keywords (Lethal Hits, Devastating Wounds, Sustained Hits, Torrent), invulnerable saves, and Feel No Pain.

"Calculate damage: 10 attacks, BS3+, S5 AP-1 D2 vs T4 Sv3+"
"How much damage does a lascannon do to a Leman Russ?"

Parameters: attacks, hit_skill, strength, toughness, armour_save, damage (all required); armour_penetration, invulnerable_save, feel_no_pain, reroll_hits, reroll_wounds, weapon_keywords, wounds_per_model, game_mode (all optional)

determine_primary_mission

Determine each player's Primary Mission from their Force Dispositions (11th Edition Matched Play). Each player's mission is looked up from their opponent's Force Disposition — in a non-mirror matchup, the two players get different missions. Returns mission names only, not full scoring/objective text.

"I picked Take and Hold, my opponent picked Purge the Foe — what are our missions?"
"What's my Primary Mission if I'm Reconnaissance and they're Priority Assets?"

Parameters: your_disposition, opponent_disposition (both required, one of: Take and Hold, Purge the Foe, Reconnaissance, Priority Assets, Disruption)

lookup_crusade

Look up Crusade content (narrative play). Returns Crusade rules, relics, battle traits, and upgrades.

"What Crusade relics can Space Marines take?"
"Show me the Crusade battle traits"

Parameters: query (required), faction (optional)

Data

All data is embedded at build time — no network calls at runtime. Data is synced daily from BSData via GitHub Actions.

Category Count Source
40K unit datasheets (11th Edition, default) 2,695 BSData/wh40k-11e
40K unit datasheets (10th Edition) 2,666 BSData/wh40k-10e
Kill Team operatives 519 BSData/wh40k-killteam
Detachments (11th / 10th Edition) 259 / 208 BSData (auto-extracted)
Enhancements (11th / 10th Edition) 895 / 827 BSData (auto-extracted)
Stratagems 1,316 Hand-curated (Core Rules + detachment-specific per faction)
Kill Team ploys 14 Hand-curated (universal + popular factions)
Shared rules (11th / 10th Edition) 35 / 33 BSData
Shared rules (Kill Team) 22 BSData
Curated keywords 25 Hand-written, plain English, 11th Edition Core Rules
Game mode sequences 3 Hand-curated (40K, Combat Patrol, Kill Team)
Force Disposition mission matchups 15 Hand-curated (5 dispositions, full grid)

Game modes

  • Warhammer 40,000 (40k / 40k_11e, default) — full-scale battles, 11th Edition rules
  • Warhammer 40,000, 10th Edition (40k_10e) — full-scale battles, 10th Edition rules (permanently supported)
  • Combat Patrol (combat_patrol) — smaller, starter-friendly format
  • Kill Team (kill_team) — squad-level skirmish game

10th Edition support isn't going away when a newer edition is added — every game_mode value, once added, keeps working.

Development

npm install
npm run build
npm test

To refresh unit data from BSData:

npm run fetch-data
npm run build

License

MIT (for the MCP server code).

Unit data sourced from the BSData community project — wh40k-10e, wh40k-11e, and wh40k-killteam. Game rules and army rules are the intellectual property of Games Workshop. This tool provides reference data for personal use during gameplay.

from github.com/gregario/warhammer-oracle

Install Warhammer Oracle in Claude Desktop, Claude Code & Cursor

Recommended · one command, every IDE
unyly install warhammer-oracle

Installs into Claude Desktop, Claude Code, Cursor & VS Code — handles npx, uvx and build-from-source repos for you.

First time? Get the CLI: curl -fsSL https://unyly.org/install | sh

Or configure manually

Run in your terminal:

claude mcp add warhammer-oracle -- npx -y warhammer-oracle

Step-by-step: how to install Warhammer Oracle

FAQ

Is Warhammer Oracle MCP free?

Yes, Warhammer Oracle MCP is free — one-click install via Unyly at no cost.

Does Warhammer Oracle need an API key?

No, Warhammer Oracle runs without API keys or environment variables.

Is Warhammer Oracle hosted or self-hosted?

A hosted option is available: Unyly runs the server in the cloud, no local setup required.

How do I install Warhammer Oracle in Claude Desktop, Claude Code or Cursor?

Open Warhammer Oracle on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.

Changes

Versions and requested access over time.

  • New version published
  • New version published

Related MCPs

Compare Warhammer Oracle with

Not sure what to pick?

Find your stack in 60 seconds

Author?

Embed badge for your README

Browse similar

All ai MCPs