The full upstream README, mirrored here for reference. Install config, tool schemas, adoption signals, and an original overview live on the Warhammer Oracle listing page.
Warhammer 40K rules, unit stats, and game flow. An 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.
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.
Or install globally:
Add to your claude_desktop_config.json:
lookup_unitLook up a unit datasheet by name. Returns stat profiles, unit size (model count), ranged and melee weapons, abilities, and keywords.
Parameters: unit_name (required), faction (optional), game_mode (optional: 40k/40k_11e (default, 11th Edition), 40k_10e, combat_patrol, kill_team)
lookup_keywordLook up a keyword or rule. Returns the official definition, a plain English explanation, examples, and which game modes it applies to.
Parameters: keyword (required), game_mode (optional)
lookup_phaseLook up a game phase by name. Returns step-by-step instructions and tips.
Parameters: phase_name (required), game_mode (optional, default: 40k)
search_unitsSearch units by name, faction, keywords, or ability text. Returns a compact list (max 10 results) with faction, points, and keywords.
Parameters: query (required), faction (optional), ability (optional), max_points (optional), game_mode (optional: 40k/40k_11e (default), 40k_10e, combat_patrol, kill_team)
compare_unitsCompare 2-4 units side by side. Shows full datasheets for each unit in a single response.
Parameters: units (required, array of 2-4 unit names), game_mode (optional: 40k/40k_11e (default), 40k_10e, combat_patrol, kill_team)
game_flowShow the full turn sequence for a game mode, or highlight where you are in the turn and what comes next.
Parameters: current_phase (optional), game_mode (optional, default: 40k)
lookup_stratagemLook up a Warhammer 40,000 stratagem by name. Returns CP cost, phase timing, target, and effect.
Parameters: name (required), faction (optional), phase (optional), detachment (optional)
search_stratagemsSearch stratagems by name, faction, phase, or detachment. Returns a compact list (max 10).
Parameters: query (required), faction (optional), phase (optional), detachment (optional)
lookup_detachmentLook up a detachment by name. Returns the detachment ability, available enhancements, and associated stratagems.
Parameters: name (required), faction (optional), game_mode (optional: 40k/40k_11e (default), 40k_10e)
lookup_enhancementLook up a character enhancement by name. Returns points cost, detachment, and effect.
Parameters: name (required), faction (optional), detachment (optional), game_mode (optional: 40k/40k_11e (default), 40k_10e)
lookup_ployLook up a Kill Team ploy by name. Returns type (strategic/tactical), CP cost, timing, and effect.
Parameters: name (required), faction (optional), type (optional: strategic, tactical)
wound_calculatorCalculate 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.
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_missionDetermine 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.
Parameters: your_disposition, opponent_disposition (both required, one of: Take and Hold, Purge the Foe, Reconnaissance, Priority Assets, Disruption)
lookup_crusadeLook up Crusade content (narrative play). Returns Crusade rules, relics, battle traits, and upgrades.
Parameters: query (required), faction (optional)
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) |
40k / 40k_11e, default) — full-scale battles, 11th Edition rules40k_10e) — full-scale battles, 10th Edition rules (permanently supported)combat_patrol) — smaller, starter-friendly formatkill_team) — squad-level skirmish game10th Edition support isn't going away when a newer edition is added — every game_mode value, once added, keeps working.
To refresh unit data from BSData:
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.