🎩 You're Invited:Meet the Socket team at Black Hat in Las Vegas, August 3-6.RSVP
Sign In

warhammer-oracle

Package Overview
Dependencies
Maintainers
1
Versions
98
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

warhammer-oracle

Warhammer 40K and Kill Team rules, stats, and game flow MCP server — 10th and 11th Edition, Combat Patrol, Kill Team

latest
Source
npmnpm
Version
0.2.42
Version published
Weekly downloads
179
-50.14%
Maintainers
1
Weekly downloads
 
Created
Source

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.

CategoryCountSource
40K unit datasheets (11th Edition, default)2,695BSData/wh40k-11e
40K unit datasheets (10th Edition)2,666BSData/wh40k-10e
Kill Team operatives519BSData/wh40k-killteam
Detachments (11th / 10th Edition)259 / 208BSData (auto-extracted)
Enhancements (11th / 10th Edition)895 / 827BSData (auto-extracted)
Stratagems1,316Hand-curated (Core Rules + detachment-specific per faction)
Kill Team ploys14Hand-curated (universal + popular factions)
Shared rules (11th / 10th Edition)35 / 33BSData
Shared rules (Kill Team)22BSData
Curated keywords25Hand-written, plain English, 11th Edition Core Rules
Game mode sequences3Hand-curated (40K, Combat Patrol, Kill Team)
Force Disposition mission matchups15Hand-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.

FAQs

Package last updated on 03 Aug 2026

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts