Skip to main content
Glama

List Escalations

list_escalations

See what the work is stuck on and waiting for a human decision about.

`project_status` only COUNTS open escalations; this returns each one with its
kind, reason, detail_md, recommended_action, and (when task-scoped) the
blocked task's title + PR url. A card about a roadmap item carries its
`roadmap_item_id` (null for a task-only, project-level or synthetic row),
which matches the `id` in `list_roadmap`. A "forever-paused" project with no open
`project_pause` row is surfaced as a synthetic `orphan:<project_id>` row.
Each row carries a server-derived `task_retry_available` flag and an exact
`next_tool`: eligible recovery blocks route to `retry_blocked_task`, roadmap
parks to `rearm_roadmap_item`, platform conflicts to their structured
resolver, an orphan block whose task keeps its own PR to the owner tool
`requeue_for_review` (it takes the row's task_id, not its id), other stale
work to `replan_task`, an open planning question (reason
`expand_needs_clarification`, with its `planning_questions`) to the owner
tool `answer_planning_question`, and only safe auxiliary cards to
`resolve_escalation`. In the legacy ui-review mode only, an eligible
platform conflict on a web_app task also lists `evidence_selector_cells`,
the input of the owner-only `correct_evidence_selector` decision. With the
autonomy ladder enabled (the default) that field is absent and a card
Keelen attributed to its own postprocessor routes to
`resolve_platform_regression`.

Input Schema

NameRequiredDescriptionDefault
project_idYes

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4/5.0
Behavior4/5

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

Annotations only declare readOnlyHint=false, idempotentHint=false, destructiveHint=false — they say nothing about content or routing — and the description fills that vacuum richly: synthetic orphan rows, server-derived task_retry_available, exact routing per escalation kind, and the legacy-ui-review vs. autonomy-ladder field difference. The one gap is that it never reconciles its read-oriented framing with the non-read-only, non-idempotent annotations.

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 scoping distinction is correctly front-loaded, but the remainder is one dense paragraph that packs row fields, synthetic-row semantics, next_tool routing, and two mode-dependent behaviors into undifferentiated prose. It is informative but hard to scan, and multiple clauses could be split or trimmed.

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?

Detailed enough that an agent knows what each row contains, what the synthetic rows mean, and which follow-up tool a row routes to, including the requeue_for_review task_id caveat. Since an output schema exists, the heavy return-field exposition is partly redundant, but the routing semantics it adds are not covered anywhere else.

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 description coverage is 0% for the single required project_id, and the description only references it obliquely through the `orphan:<project_id>` synthetic row format; it never says how to obtain or scope it. With one parameter and no schema documentation, more was expected than what is given.

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?

Opens with a concrete, specific framing: 'See what the work is stuck on and waiting for a human decision about,' which is unmistakably about listing escalations. It also explicitly contrasts with the closest sibling: '`project_status` only COUNTS open escalations; this returns each one' — an agent can distinguish the two without opening either schema.

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 a clear selection rule against project_status (counts vs. per-row detail) and names many downstream alternatives in the next_tool routing (retry_blocked_task, rearm_roadmap_item, requeue_for_review, answer_planning_question, resolve_escalation). It does not state exclusions such as when not to call this at all, so it falls short of the top mark.

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.