mcpField
W
warhammer-oracle

warhammer-oracle

ローカル
github.com/gregarioゲーム・エンタメ12今日更新

warhammer-oracle について

warhammer-oracleは、Warhammer 40,000、Combat Patrol、Kill Teamのルール参照とゲーム進行案内をAIアシスタントに提供するMCPサーバーです。40Kの第10・第11版データ検索、ユニット比較、ダメージ計算に対応し、実行時のネットワーク接続は不要です。

主な機能

  1. 01ユニット、ルール、フェーズ、手順の参照
  2. 02ユニットや策略の検索と比較
  3. 03デタッチメント、強化、Kill Teamのプライの参照
  4. 04攻撃の予想ダメージ計算
  5. 0540K第10・第11版データ対応
  6. 06実行時の通信不要な組み込みデータ

活用シーン

  1. 01対戦中のユニットデータシート確認
  2. 02陣営や能力によるユニット検索と比較
  3. 03フェーズ手順や策略効果の確認
  4. 04目標の能力値に対するダメージ推定

MCP 対応

Warhammerのルール、ユニットデータ、ゲーム進行案内、検索、比較、ダメージ計算をツールとしてMCPクライアントに公開します。Warhammer 40,000、Combat Patrol、Kill Teamに対応します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"gregario-warhammer-oracle": {
"command": "npx",
"args": [
"-y",
"warhammer-oracle"
]
}
}
}
起動コマンドnpx -y warhammer-oracle

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npmwarhammer-oracle0.1.1

ツール

6

掲載時のツール一覧 · 2 週間前に更新

パラメーター型必須説明
factionstringいいえ結果を絞り込む任意の陣営名(例:'Chaos Space Marines'、'Astartes')
game_modeenumいいえゲームモード:'40k'(デフォルト)は 40K のユニットを検索し、'kill_team' は Kill Team のオペレーターを検索します40k | combat_patrol | kill_team
unit_namestringはい検索するユニット名またはその一部

詳細

Warhammer Oracle

Warhammer 40Kのルール、ユニットのステータス、ゲームの進行方法を扱うMCP サーバーです。

npm バージョン npm ダウンロード数 MIT ライセンス Node.js 18+ MCP 対応 スポンサー warhammer-oracle MCP サーバー


AI アシスタントに、データシート、策略、分遣隊、強化、キーワード、フェイズの手順、負傷の計算などについて質問できます。Warhammer 40,000(第10版および第11版)、Combat Patrol、Kill Teamに対応しています。

warhammer-oracle MCP サーバー

エディション: 40Kのユニット、分遣隊、強化の検索は、デフォルトで第11版を対象とします。第10版のデータを使うには、いずれかのツールにgame_mode: "40k_10e"を渡してください。第10版のサポートが終了することはありません。ターンの手順/フェイズ、コアキーワード、コア策略は、第11版のコアルールをもとに手作業で整備しています。分遣隊固有の策略は、陣営ごとに手作業で整備しています。卓上ルールと同じ階層構造になっており、第11版の陣営パックで分遣隊の内容がすべて定められている場合は、ベースとなるコデックスより優先され、それ以外の箇所では改訂前のコデックスの基本ルールが適用されます。

インストール

npx warhammer-oracle

または、グローバルにインストールします。

npm install -g warhammer-oracle

設定

Claude Desktop

claude_desktop_config.jsonに追加します。

{
  "mcpServers": {
    "warhammer-oracle": {
      "command": "npx",
      "args": ["-y", "warhammer-oracle"]
    }
  }
}
Claude Code
claude mcp add warhammer-oracle -- npx -y warhammer-oracle

ツール

lookup_unit

名前を指定してユニットのデータシートを検索します。ステータス、ユニットのサイズ(モデル数)、射撃武器と近接武器、アビリティ、キーワードを返します。

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

名前に一致するデータシートが複数ある場合、ツールは該当する陣営を一覧表示します。名前と陣営を指定してもデータシートが複数ある場合は、それぞれのIDも一覧表示されます。選択するには、陣営とdatasheet_idを指定してください。

パラメーター: unit_name(必須)、faction(任意)、datasheet_id(任意、同じ陣営のバリエーションを選ぶ場合は表示された正確なIDを指定)、game_mode(任意:40k/40k_11e(デフォルト、第11版)、40k_10e、combat_patrol、kill_team)

lookup_keyword

キーワードまたはルールを検索します。公式の定義、平易な英語での説明、例、適用されるゲームモードを返します。

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

パラメーター: keyword(必須)、game_mode(任意)

lookup_phase

名前を指定してゲームのフェイズを検索します。手順ごとの説明とヒントを返します。

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

パラメーター: phase_name(必須)、game_mode(任意、デフォルト:40k)

search_units

名前、陣営、キーワード、またはアビリティのテキストでユニットを検索します。陣営、ポイント、キーワードを含む簡潔な一覧(最大10件)を返します。

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

パラメーター: query(必須)、faction(任意)、ability(任意)、max_points(任意)、game_mode(任意:40k/40k_11e(デフォルト)、40k_10e、combat_patrol、kill_team)

compare_units

2~4個のユニットを並べて比較します。各ユニットの完全なデータシートを1つのレスポンスに表示します。

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

パラメーター: units(必須、ユニット名を2~4個含む配列)、game_mode(任意:40k/40k_11e(デフォルト)、40k_10e、combat_patrol、kill_team)

game_flow

ゲームモードのターン進行全体を表示するか、ターン中の現在位置と次に行うことを示します。

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

パラメーター: current_phase(任意)、game_mode(任意、デフォルト:40k)

lookup_stratagem

Warhammer 40,000の策略を名前で検索します。CPコスト、使用タイミング、対象、効果を返します。

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

パラメーター: name(必須)、faction(任意)、phase(任意)、detachment(任意)

search_stratagems

名前、陣営、フェイズ、またはデタッチメントで策略を検索します。コンパクトな一覧(最大10件)を返します。

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

パラメーター: query(必須)、faction(任意)、phase(任意)、detachment(任意)

lookup_detachment

デタッチメントを名前で検索します。デタッチメント能力、使用可能な強化、関連する策略を返します。

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

パラメーター: name(必須)、faction(任意)、game_mode(任意:40k/40k_11e(デフォルト)、40k_10e)

lookup_enhancement

キャラクター強化を名前で検索します。ポイントコスト、デタッチメント、効果を返します。

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

パラメーター: name(必須)、faction(任意)、detachment(任意)、game_mode(任意:40k/40k_11e(デフォルト)、40k_10e)

lookup_ploy

Kill Teamの策謀を名前で検索します。種類(戦略/戦術)、CPコスト、使用タイミング、効果を返します。

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

パラメーター: name(必須)、faction(任意)、type(任意:strategic、tactical)

wound_calculator

攻撃プロファイルが対象に与える予想ダメージを計算します。リロール、武器キーワード(リーサルヒット、デヴァステイティング・ウーンズ、サステインヒット、トレント)、インヴァルネラブルセーヴ、フェル・ノー・ペインに対応します。

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

パラメーター: attacks、hit_skill、strength、toughness、armour_save、damage(すべて必須);armour_penetration、invulnerable_save、feel_no_pain、reroll_hits、reroll_wounds、weapon_keywords、wounds_per_model、game_mode(すべて任意)

determine_primary_mission

各プレイヤーの軍勢配置からプライマリー・ミッションを決定します(第11版マッチドプレイ)。各プレイヤーのミッションは、対戦相手の軍勢配置から参照されます。ミラー対戦でない場合、両プレイヤーには異なるミッションが割り当てられます。完全な得点ルールや目標の説明ではなく、ミッション名のみを返します。

"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?"

パラメーター: your_disposition、opponent_disposition(両方必須。次のいずれか:Take and Hold、Purge the Foe、Reconnaissance、Priority Assets、Disruption)

lookup_crusade

クルセイドのコンテンツ(ナラティブプレイ)を検索します。クルセイドのルール、レリック、バトルトレイト、アップグレードを返します。

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

パラメーター: query(必須)、faction(任意)

データ

すべてのデータはビルド時に組み込まれるため、実行時のネットワーク呼び出しはありません。データは GitHub Actions を通じて BSData から毎日同期されます。

カテゴリ件数ソース
40K ユニットデータシート(第11版、デフォルト)2,695BSData/wh40k-11e
40K ユニットデータシート(第10版)2,666BSData/wh40k-10e
キルチームのオペレイティブ519BSData/wh40k-killteam
デタッチメント(第11版/第10版)259 / 208BSData(自動抽出)
エンハンスメント(第11版/第10版)895 / 827BSData(自動抽出)
ストラタジェム1,316手作業でキュレーション(コアルール+各陣営固有のデタッチメント)
キルチームのプライ14手作業でキュレーション(共通+人気陣営)
共通ルール(第11版/第10版)35 / 33BSData
共通ルール(キルチーム)22BSData
キュレーション済みキーワード25第11版コアルールに基づき、平易な英語で手作業で作成
ゲームモードのシーケンス3手作業でキュレーション(40K、コンバットパトロール、キルチーム)
フォース・ディスポジションのミッション対戦組み合わせ15手作業でキュレーション(5つのディスポジション、完全な一覧)
ゲームモード
  • Warhammer 40,000(40k / 40k_11e、デフォルト)— 大規模戦闘、第11版ルール
  • Warhammer 40,000, 10th Edition(40k_10e)— 大規模戦闘、第10版ルール(今後も継続してサポート)
  • Combat Patrol(combat_patrol)— 小規模で、初心者にも取り組みやすい形式
  • Kill Team(kill_team)— 分隊レベルの小競り合いゲーム

新しい版が追加されても、第10版のサポートが終了することはありません。一度追加されたすべての game_mode 値は、引き続き動作します。

開発

npm install
npm run build
npm test

BSData からユニットデータを更新するには:

npm run fetch-data
npm run build

ライセンス

MIT(MCP サーバーのコード)。

ユニットデータは、コミュニティプロジェクトである BSData から取得しています。wh40k-10e、wh40k-11e、wh40k-killteam。ゲームルールおよびアーミールールは Games Workshop の知的財産です。このツールは、ゲームプレイ中の個人利用を目的とした参照データを提供します。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。