Skip to main content
Glama

Resolve or prepare resolution for review items

resolve_review_items
Idempotent

Resolves current review findings by their closed choices: each decision names a review_item_id (or its ref, such as R-0033) from list_review_items and one of its listed choice_ids. The only closed choice today is dismiss, on chart-posting attention items — it records the actor and reason as a dismissal beside the chart's judgment, which stays as it was, and closes the item. Findings that state a missing fact — an unidentified endpoint, an unverified opening balance, a payment whose paying account no statement shows — carry no choices: they resolve when the fact they name is fixed, and a decision naming them returns outcome not_resolvable_here. Every decision gets an outcome, and exact replay of idempotency_key returns the outcomes recorded at first execution. Durable review mutation; not metered. Not a Task.

Input Schema

NameRequiredDescriptionDefault
actorYesAccountable actor for this resolution.
decisionsYesOne or more closed review decisions: each names a review_item_id from list_review_items and one of its listed choice_ids, with an optional reason.
workspace_tagYesActive workspace id (the workspace_tag create_workspace and list_workspaces return).
idempotency_keyYesRequired. Exact replay returns the recorded outcomes; the same key with different arguments is idempotency_conflict.

Output Schema

NameRequiredDescriptionDefault
engineYesStamped engine build/version identity for the tool result.
statusYesreview_items_resolved on success.
outcomesYesOne outcome per decision, in decision order.
workspace_tagYesWorkspace scoped by the tool call.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.8/5.0
Behavior5/5

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

Beyond the annotations (readOnlyHint=false, idempotentHint=true, destructiveHint=false) it discloses the actual mutation semantics: the dismissal is recorded beside the chart's judgment, 'which stays as it was,' and the item is closed — telling the agent exactly what changes and what is preserved. It also states per-decision outcomes, replay behavior for idempotency_key, and that the operation is durable and not metered.

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 core action and its constraints are front-loaded in the first sentences, and the closing fragments ('Durable review mutation; not metered. Not a Task.') do useful disambiguation work. The middle sentence is long and packs three parenthetical examples, which is dense but still readable and earns its space.

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

Completeness5/5

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

With an output schema present, return values need not be explained; the description still covers the outcome vocabulary (not_resolvable_here, idempotency_conflict) and the mutation's effect. For a 4-parameter mutation with idempotency requirements, nothing an agent needs in order to call it correctly is missing.

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 the baseline is 3, but the description adds real meaning: review_item_id accepts the printed id or a ref like R-0033, choice_id is limited to the item's listed choices, and reason is what gets recorded beside the actor. It does not add anything for workspace_tag or the conflict case beyond what the schema already says, keeping it just above baseline.

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 ('Resolves current review findings by their closed choices') and immediately grounds the resource in its source, list_review_items. An agent can tell this apart from the read-only listing sibling and from Task tools, which the description explicitly excludes ('Not a Task').

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

Usage Guidelines5/5

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

It names the precondition (item must carry a listed choice_id), the only currently available choice (dismiss on chart-posting items), and what to do instead for findings without choices ('they resolve when the fact they name is fixed'), including the exact failure signal not_resolvable_here. That is explicit when/when-not guidance with the alternative path spelled out.

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