Skip to main content
Glama

Estimate combat between two units

simulate_combat
Read-onlyIdempotent

Runs Praetorium's exact combat simulator for one attacking unit, with any attached leaders, against one defending unit at full strength: shooting, melee, and shooting followed by melee. Returns expected models destroyed, expected wounds lost, the chance to destroy the unit, cumulative odds, weapons used, the rule and weapon-mode choices each side can change, datasheet citations, and a simulator link. Passive datasheet rules apply by default; stratagems and conditional rules stay off until chosen. Unsupported mechanics are refused or listed under notCalculated rather than approximated. Like the standalone simulator page, it uses default loadouts and no detachment; unit sizes and attachments must be legal.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
attackerYes
defenderYes
modifiersNoSituational modifiers the simulator page offers, such as { "all": { "cover": true, "hitModifier": -1 } }, { "melee": { "charged": true } }, or { "target": { "invulnerable": 4 } }.
weaponModesNoWeapon mode choices by key from a previous result, such as a frag or krak profile.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.1/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover the safety profile (readOnly, idempotent, non-destructive), and the description adds substantial extra context: it enumerates the returned metrics, discloses that unsupported mechanics are refused or reported under notCalculated rather than approximated, and states the default rules posture. That is exactly the behavioral detail annotations cannot convey.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the core action (simulator run) followed by returns, then defaults/limitations. Dense single paragraph where nearly every sentence earns its place, though the return enumeration is somewhat list-heavy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a complex tool with nested objects and no output schema, the description compensates by listing the expected outputs and the rules-default/refusal behavior. It omits any explanation of the modifiers structure, which is handled only in the schema, leaving a minor completeness gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 50%, so the description must partly compensate. It adds meaning for attached leaders (drawn from canBeLedBy/canBeSupportedBy) and touches rule/weapon-mode choices, but the large nested modifiers object is left entirely to the schema. Adequate but with a clear gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ('Runs Praetorium's exact combat simulator') plus the exact resource scope (one attacker with attached leaders vs one defender) and enumerates the phases covered (shooting, melee, shoot-then-melee). This clearly separates it from the CRUD/battle siblings, though it never names an alternative tool explicitly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives concrete operational context: passive datasheet rules on by default, stratagems/conditional rules off until chosen, default loadouts, no detachment, and legal unit sizes/attachments required. It stops short of an explicit when-to-use-vs-siblings routing statement (e.g., versus create_battle), so it is clear context rather than full guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.