Skip to main content
Glama

Wait for Approval

wait_for_approval
Read-onlyIdempotent

Wait up to 45 seconds for a pending approval. It returns as soon as the user decides. If the result remains pending, call this tool again with the same ID.

Input Schema

NameRequiredDescriptionDefault
approval_idYesapproval_id returned by request_approval.

Output Schema

NameRequiredDescriptionDefault
approvalYes
next_actionNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.8/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, non-destructive and closed-world, so the safety profile is covered. The description usefully adds the 45-second timeout, early return on decision, and the fact that a pending result is not an error but a retry signal. It does not state what happens when the wait times out versus when the approval expires, though the output schema likely carries that.

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

Conciseness5/5

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

Three short sentences, front-loaded with the duration and the early-return behavior, with the retry instruction last. No redundant restatement of the tool name or title.

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 one-parameter blocking tool with an output schema, the description covers duration, early return, and the retry pattern, which is what an agent needs to invoke it in a loop correctly. Only the enumeration of possible approval states is absent, and that is reasonably delegated to the output schema.

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 100% and the schema already explains that approval_id comes from request_approval. The description adds the reuse semantics ('call this tool again with the same ID'), which is mild extra value but not new syntax or format detail; baseline 3 is appropriate.

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 and resource plus a concrete bound: wait up to 45 seconds for a pending approval, returning early when the user decides. An agent understands this is a blocking poll. It does not explicitly distinguish itself from get_approval or request_approval, so sibling differentiation is left to inference.

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 operational rule: if the result is still pending, call again with the same ID, which defines the intended polling loop. It stops short of saying when to prefer this over get_approval (e.g., non-blocking check) or what to do once a terminal decision arrives.

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