Skip to main content
Glama

answer

Answers the game's current question or popup by submitting a choice, such as an item name, button number, or accept/refuse, and returns the outcome and whatever gate comes next.

Instructions

Answer what the game is asking: choice is the item's name (a TECH_, UNIT_, BUILDING_, POLICY_, PROMOTION_, BELIEF_ or goody name; liberate / annex / puppet / raze; a dig's choice number), a popup's or leader screen's button number, or on a leader screen accept / refuse (a deal on the table), leave (close it), accept_friendship. args carries the rest the popup needs (a promotion's unit_id, a dig's x and y, a stolen tech's player_id, a religion's beliefs and city). Dispatches on the gate: question() shows which question is up. Returns {ok, ...} with the popup's outcome and the gate that follows (still_pending and next when another leader waits), or {ok: false, err, choices}.

Input Schema

NameRequiredDescriptionDefault
argsNowhat the popup needs beyond the choice: unit_id, x and y, player_id, beliefs, city
choiceYesthe `answers` row's choice: an item name, a button number, or accept / refuse / leave / accept_friendship
action_idNoa token of my choosing: a retry with the same action_id replays the stored result

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv2.1.0

TDQS

A4.3/5.0
Behavior4/5

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

Adds substantial behavior beyond the annotations: the dispatch model, the multi-leader `still_pending`/`next` follow-up gate, and an explicit error shape `{ok: false, err, choices}`. What it omits is whether an answer is irreversible once submitted, which matters given idempotentHint=false and no output schema.

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?

The verb and the primary parameter are front-loaded, and every clause carries information about the choice vocabulary or return shape. It is dense to the point of being a wall of text, but no sentence is expendable.

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 stateful dispatch tool with three parameters and no output schema, the description supplies the return shape, the error branch, and the gate/next-prompt semantics that an agent needs to continue a loop. Only the consequences of answering incorrectly or out of order are left unstated.

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?

Schema coverage is 100%, so baseline is 3, but the description earns above baseline by enumerating the valid choice families (TECH_/UNIT_/BUILDING_/POLICY_ prefixes, liberate/annex/puppet/raze, button numbers) and by binding `args` keys to concrete situations (promotion's unit_id, dig's x and y, stolen tech's player_id, religion's beliefs and city).

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

Purpose5/5

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

States a specific verb and resource ('Answer what the game is asking') and then enumerates exactly what `choice` may be, so an agent knows this is the sole submission path for a pending prompt. It also implicitly distinguishes itself from `question` by noting that question() reveals which question is up while this tool answers it.

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?

The 'Dispatches on the gate: question() shows which question is up' clause gives clear context that this tool is the follow-up to `question`, which is real routing guidance. It does not state explicit exclusions or failure conditions (e.g. what happens if you answer when no question is pending), keeping it from a 5.

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