Skip to main content
Glama

Qualify staged rows

pros_qualify

Record a judgement on staged rows. Never creates an account. One row or a whole pull in a single call. READ THE PULL'S CRITERIA FIRST (pros_sources). A verdict is a judgement against a stated brief, not against your general sense of a good customer.

THE REASON IS THE PRODUCT (PRO-3). It is read by a person deciding whether to overrule you, and by somebody months later asking why this company was dropped. "Hospitality, no desk-based back office to measure" is useful. "Not a fit" is not, and is refused. Cite a source_url when the answer came from the company's own site rather than the row.

AN INDUSTRY LABEL IS NOT EVIDENCE. The seller's label covers two different businesses more often than not; read the description and the site before deciding.

USE "unclear" RATHER THAN GUESSING. If the row does not say what you need, that is a real finding and leaves the row for a person. A confident wrong rejection is invisible: nobody ever audits the companies that were dropped.

A bad row does not discard the rest — each is applied on its own and the response reports what failed. Qualifying is not promoting: you cannot create an account from a bought list, and that is deliberate (PRO-5). Effects: verdicts recorded against staged rows, per row.

Input Schema

NameRequiredDescriptionDefault
verdictsYesThe judgements. One row is a batch of one; a whole metro is one pass.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.6/5.0
Behavior4/5

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

Annotations already declare non-read-only, non-destructive, non-open-world, and the description adds real behavioral context beyond them: per-row application with partial-failure semantics ("each is applied on its own and the response reports what failed"), the non-creation guarantee, and the audience for the reason field. It does not address re-qualification of an already-judged row, which matters because idempotentHint=false is set.

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?

Front-loaded with the core action and the key constraint in the first two sentences, then organized into short labeled rules. It is on the long side and cites internal ticket codes (PRO-3, PRO-5) that add no information for an agent.

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?

For a single-parameter batch mutation with no output schema, it covers the essentials an agent cannot infer: batch semantics, partial failure behavior, the prerequisite lookup, verdict selection policy, and the evidence expectation. Nothing central 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 met by structured data, but the description adds genuine meaning: it makes the reason field's quality bar and failure mode concrete ("'Not a fit' is not, and is refused") and explains when source_url applies ("when the answer came from the company's own site rather than the row").

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 ("Record a judgement on staged rows") and immediately scopes what it is not ("Never creates an account"), pointing at pros_promote by implication. It also differentiates from pros_rows by naming row_id's origin and from pros_sources by deferring to it for criteria.

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?

Gives explicit preconditions ("READ THE PULL'S CRITERIA FIRST (pros_sources)") and an explicit alternative to use instead of guessing ("USE 'unclear' RATHER THAN GUESSING"). It also defines when a reason is acceptable vs refused, which is a usability rule, not just flavor text.

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.