Skip to main content
Glama

Offer choice

offer_choice
Read-only

Presents the user with a choice between 2 to 4 options, each with a label and a one-line description, one optionally marked recommended. It is for decisions where reasonable options would build different things — which widget kind, what score ranges, what copy or trigger — and nothing the user said settles it. It changes nothing and returns the options for the user to answer.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
optionsYes
projectNoA project id from list_projects. Runs this call in that project instead of the connection default.
questionYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, destructiveHint=false and openWorldHint=false; the description adds value by confirming 'It changes nothing' and by describing the return payload ('returns the options for the user to answer'), which resolves what happens after the call. It still doesn't say whether the call blocks awaiting an answer or returns immediately for the caller to relay, which is the one behavior an agent most needs to know.

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 sentences, no filler: shape first, selection criteria second, side-effect/return contract last. The em-dash examples are concrete and load-bearing rather than decorative.

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 small read-only, 3-parameter tool with no output schema, the description covers what the agent needs to decide and construct the call, and it explains the return in prose. The gap is the interaction model — whether the tool blocks for a user answer or returns control immediately — which matters for sequencing around this call.

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 only 33% (only 'project' is documented in-schema), so the description must carry the rest — and it does, explaining that 'options' is a 2-4 item set whose entries carry a label, a one-line description, and an optional 'recommended' flag, which the schema leaves entirely bare. The 'project' parameter is covered by the schema itself, so combined coverage is effectively complete; the only miss is that 'question' is never explained.

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 ('presents the user with a choice') plus the shape of the resource: 2-4 options, each with a label and one-line description, one optionally recommended. An agent knows precisely what the call does, though the nearest sibling (ask_question) is never named, so the boundary between multi-choice and open-ended asking must be inferred from the phrase 'decisions where reasonable options would build different things.'

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 concrete when-to-use triggers ('which widget kind, what score ranges, what copy or trigger') and an implicit when-not ('nothing the user said settles it'), which tells the agent to skip this tool when the user has already decided. No explicit alternative is named, so the agent must infer that free-form gaps go to ask_question.

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.