Skip to main content
Glama

battle

Read-onlyIdempotent

Manage your battle — maneuver, target enemies, adopt combat stances, or self-destruct (Actions: advance, retreat, stance, target, engage, self_destruct, help. Use action="help" for full documentation with examples.

  • advance: Move one zone closer (outer→mid→inner→engaged).

  • retreat: Move one zone back.

  • stance: Change posture. Include "stance" field: fire|evade|brace|flee|board. Board also requires "target_id" and a positive "marines" commitment; creatures, drones, and stations are not capturable and are rejected immediately. Optional "intent": capture (default) takes the intact hull; plunder robs another player's ship of its cargo (players only, not in the arena). It suppresses weapons and automatically closes for repeated latch attempts. A faster effective speed lets the boarder intercept its target's retreat and flee movement; an equal or faster target can kite. If multiple eligible boarding requests on the same tick share either hull, deterministic boarding initiative selects one physical link and the battle log records rejected contenders. Changing away from board begins a costly, non-instant withdrawal, and the requested stance applies only after disengagement.

  • target: Focus fire. Include "target_id" field (ID or name of any combatant in the battle — players, pirates, police, drones, creatures, stations, intact prizes).

  • engage: Join the battle in your system from any POI. Optional "side_id" field. A side_id that opposes a station owned by your own faction returns own_faction_station; without side_id a member of that faction joins the station's side. Engaging drops your cloak: a battle cannot hold a cloaked ship, so fleet, faction, undock, and jump-arrival auto-joins skip cloaked pilots.

  • self_destruct: Start the visible in-battle self-destruct countdown; duplicate starts do not reset it. None of these cost a tick — they are queued and applied together at the start of the next battle tick, so you can set a stance, pick a target, and move in the same tick. Reload routes to the standalone reload command and does cost a tick. Examples: {"action":"stance","stance":"evade"}, {"action":"stance","stance":"board","target_id":"enemy_id","marines":12}, {"action":"stance","stance":"board","target_id":"SomePlayer","marines":6,"intent":"plunder"}, {"action":"target","target_id":"SomePlayer"}, {"action":"engage","side_id":1})

Input Schema

NameRequiredDescriptionDefault
actionYesBattle action to perform
intentNoBoarding goal for stance=board: capture (default) takes the intact hull; plunder robs another player's ship of its cargo and leaves the hull with its pilot. Plunder targets only players, never NPCs, prizes or arena opponents.
stanceNoBattle stance: fire (100% dmg dealt/taken), evade (0%/50%, costs fuel), brace (0%/25%, shields regen 2x), flee (0%/100%, auto-retreats to escape), or board (0%/100%, automatically closes for repeated latch attempts; requires target_id and marines). A faster effective speed lets the boarder intercept its target's retreat and flee movement; an equal or faster target can kite. If same-tick eligible boarding requests share either hull, deterministic boarding initiative starts one physical link; rejected contenders retain their prior stance and weapon fire, and the battle log records reason contested_same_tick. Changing away from board begins non-instant withdrawal.
marinesNoPositive fit-marine commitment required when setting stance=board. The battle tick caps it to the fit marines actually available.
side_idNoSide to join (optional when you engage — auto-assigned by faction if omitted)
target_idNoID or name of the enemy — required when focusing a target and when entering the board stance. Board attempts against creatures, drones, and stations are rejected immediately because they are not capturable.
session_idYesYour session ID from login/register

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • addedInput schema / properties / intent
      Added value: +{
      +  "description": "Boarding goal for stance=board: capture (default) takes the intact hull; plunder robs another player's ship of its cargo and leaves the hull with its pilot. Plunder targets only players, never NPCs, prizes or arena opponents.",
      +  "enum": [
      +    "capture",
      +    "plunder"
      +  ],
      +  "type": "string"
      +}
  2. Added
  3. Removed
  4. Changed1 schema field changed
    • changedInput schema / properties / stance / description
      Previous value: -"Battle stance: fire (100% dmg dealt/taken), evade (0%/50%, costs fuel), brace (0%/25%, shields regen 2x), flee (0%/100%, auto-retreats to escape), or board (0%/100%, automatically closes for repeated latch attempts; requires target_id and marines). A faster effective speed lets the boarder intercept its target's retreat and flee movement; an equal or faster target can kite. Changing away from board begins non-instant withdrawal."New value: +"Battle stance: fire (100% dmg dealt/taken), evade (0%/50%, costs fuel), brace (0%/25%, shields regen 2x), flee (0%/100%, auto-retreats to escape), or board (0%/100%, automatically closes for repeated latch attempts; requires target_id and marines). A faster effective speed lets the boarder intercept its target's retreat and flee movement; an equal or faster target can kite. If same-tick eligible boarding requests share either hull, deterministic boarding initiative starts one physical link; rejected contenders retain their prior stance and weapon fire, and the battle log records reason contested_same_tick. Changing away from board begins non-instant withdrawal."
  5. Changed2 schema fields changed
    • changedInput schema / properties / stance / description
      Previous value: -"Battle stance: fire (100% dmg dealt/taken), evade (0%/50%, costs fuel), brace (0%/25%, shields regen 2x), flee (0%/100%, auto-retreats to escape), or board (0%/100%, automatically closes for repeated latch attempts; requires target_id and marines). Changing away from board begins non-instant withdrawal."New value: +"Battle stance: fire (100% dmg dealt/taken), evade (0%/50%, costs fuel), brace (0%/25%, shields regen 2x), flee (0%/100%, auto-retreats to escape), or board (0%/100%, automatically closes for repeated latch attempts; requires target_id and marines). A faster effective speed lets the boarder intercept its target's retreat and flee movement; an equal or faster target can kite. Changing away from board begins non-instant withdrawal."
    • changedInput schema / properties / target_id / description
      Previous value: -"ID or name of the enemy — required when focusing a target and when entering the board stance"New value: +"ID or name of the enemy — required when focusing a target and when entering the board stance. Board attempts against creatures, drones, and stations are rejected immediately because they are not capturable."
  6. Changed5 schema fields changed
    • changedInput schema / properties / action / enum
      Previous value: -[
      -  "advance",
      -  "retreat",
      -  "stance",
      -  "target",
      -  "engage",
      -  "help"
      -]New value: +[
      +  "advance",
      +  "retreat",
      +  "stance",
      +  "target",
      +  "engage",
      +  "self_destruct",
      +  "help"
      +]
    • addedInput schema / properties / marines
      Added value: +{
      +  "description": "Positive fit-marine commitment required when setting stance=board. The battle tick caps it to the fit marines actually available.",
      +  "minimum": 1,
      +  "type": "integer"
      +}
    • changedInput schema / properties / stance / description
      Previous value: -"Battle stance (required when you set a stance): fire (100% dmg dealt/taken), evade (0% dealt, 50% taken, costs fuel), brace (0% dealt, 25% taken, shields regen 2x), flee (0% dealt, 100% taken, auto-retreats to outer zone then a minimum of 3 ticks to escape — longer the slower you are than your fastest pursuer, and never while warp-disrupted)"New value: +"Battle stance: fire (100% dmg dealt/taken), evade (0%/50%, costs fuel), brace (0%/25%, shields regen 2x), flee (0%/100%, auto-retreats to escape), or board (0%/100%, automatically closes for repeated latch attempts; requires target_id and marines). Changing away from board begins non-instant withdrawal."
    • changedInput schema / properties / stance / enum
      Previous value: -[
      -  "fire",
      -  "evade",
      -  "brace",
      -  "flee"
      -]New value: +[
      +  "fire",
      +  "evade",
      +  "brace",
      +  "flee",
      +  "board"
      +]
    • changedInput schema / properties / target_id / description
      Previous value: -"ID or name of the enemy to target — any combatant in the battle, including pirates, police, drones, creatures and stations (required when you pick a target)"New value: +"ID or name of the enemy — required when focusing a target and when entering the board stance"
  7. Changed3 schema fields changed
    • changedInput schema / properties / side_id / description
      Previous value: -"Side to join (optional for action=engage — auto-assigned by faction if omitted)"New value: +"Side to join (optional when you engage — auto-assigned by faction if omitted)"
    • changedInput schema / properties / stance / description
      Previous value: -"Battle stance (required for action=stance): fire (100% dmg dealt/taken), evade (0% dealt, 50% taken, costs fuel), brace (0% dealt, 25% taken, shields regen 2x), flee (0% dealt, 100% taken, auto-retreats, 3 ticks from outer to escape)"New value: +"Battle stance (required when you set a stance): fire (100% dmg dealt/taken), evade (0% dealt, 50% taken, costs fuel), brace (0% dealt, 25% taken, shields regen 2x), flee (0% dealt, 100% taken, auto-retreats to outer zone then a minimum of 3 ticks to escape — longer the slower you are than your fastest pursuer, and never while warp-disrupted)"
    • changedInput schema / properties / target_id / description
      Previous value: -"ID or name of the enemy to target — any combatant in the battle, including pirates, police, drones, creatures and stations (required for action=target)"New value: +"ID or name of the enemy to target — any combatant in the battle, including pirates, police, drones, creatures and stations (required when you pick a target)"
  8. Changed1 schema field changed
    • changedInput schema / properties / target_id / description
      Previous value: -"Player ID or username of enemy to target (required for action=target)"New value: +"ID or name of the enemy to target — any combatant in the battle, including pirates, police, drones, creatures and stations (required for action=target)"
  9. Changed1 schema field changed
    • changedInput schema / properties / action / enum
      Previous value: -[
      -  "advance",
      -  "retreat",
      -  "stance",
      -  "target",
      -  "engage"
      -]New value: +[
      +  "advance",
      +  "retreat",
      +  "stance",
      +  "target",
      +  "engage",
      +  "help"
      +]
  10. First observed

TDQS

B3.3/5.0
Behavior1/5

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

The description says the tool manages battles by maneuvering, targeting, changing stance, engaging, and self-destructing, with queued changes applied at the next battle tick. Those are state-changing battle operations, but the annotations declare readOnlyHint=true and idempotentHint=true, so the description directly contradicts the structured safety metadata.

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

Conciseness3/5

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

The description is front-loaded and uses an action list plus examples, which helps structure. But it is long and dense, and it repeats substantial schema content, especially around stance and boarding mechanics; that reduces conciseness even though the complexity of the tool justifies detailed guidance.

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 multi-action battle tool, the description covers action effects, queued-tick behavior, boarding restrictions, side selection, and several error cases well. It still does not describe the response shape despite having no output schema, and the annotation conflict leaves the structured behavioral context unreliable.

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

Parameters4/5

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

Although the schema already has 100% parameter description coverage, the description adds useful meaning beyond it: action-specific effects, no-tick queuing, own-faction side_id behavior, cloak-dropping on engage, boarding requirements, duplicate self_destruct handling, and concrete examples. Much of the stance and boarding detail is repeated from the schema rather than adding new information.

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?

The description uses a specific verb and resource, 'Manage your battle,' and enumerates the supported actions: advance, retreat, stance, target, engage, self_destruct, and help. It distinguishes this from the standalone reload command, but it does not clarify the boundary with sibling tools such as attack, self_destruct, get_battle_status, or get_battle_log.

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?

It provides detailed per-action guidance and examples for choosing advance, retreat, stance, target, engage, and self_destruct, and explicitly routes reload to the standalone reload command. However, it lacks explicit when-not-to-use guidance against competing sibling tools such as attack or the standalone self_destruct command.

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.

Resources