Skip to main content
Glama
hail-hq

hail

Official

Get a verification

get_verification
Read-onlyIdempotent

Fetch one verification and its state. Use it to poll.

Instructions

Fetch one verification and its state. Use it to poll.

    There is no notification, and review takes business days. Poll every
    few minutes to hours, not every few seconds; the state refreshes from
    the carrier at most once a minute.

    On ``approved``: call quote_numbers again. The offer is now
    ``ready``; then acquire_number. On ``rejected``: read
    ``rejection_reason``, ask the user, dismiss it with
    cancel_verification, then submit a new one. ``verification_id`` comes
    from submit_verification or list_verifications.

    Returns ``{"id", "state", "rejection_reason", ...}`` or
    ``{"error": "<message>"}``.

Input Schema

NameRequiredDescriptionDefault
verification_idYes

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.29.0

TDQS

A4.8/5.0
Behavior5/5

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

Annotations already cover read-only/idempotent/non-destructive, but the description adds behavior the annotations cannot convey: no push notification, business-day review latency, and an upstream carrier refresh cap of once per minute. It also discloses the return shape including an error form, which is important for polling loops.

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 purpose, then cadence, then state-driven workflow, then return shape — a sensible ordering. Somewhat long for a single-parameter read, but each block (polling policy, next-step routing) carries actionable information rather than padding.

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?

A read-only polling tool with one required param and an output schema; the description covers purpose, polling behavior, latency expectations, state transitions, and next-step routing. Nothing an agent needs in order to call it correctly or act on the result 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 0% for the single parameter, but the description compensates by stating provenance: 'verification_id comes from submit_verification or list_verifications.' That is the only real semantic question for this ID, though it does not describe format/validation.

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 specific verb+resource: 'Fetch one verification and its state.' It immediately separates itself from siblings by naming the surrounding tools (submit_verification, list_verifications, cancel_verification, quote_numbers, acquire_number) and its role in that lifecycle.

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?

Explicitly states when to use it ('Use it to poll'), why polling is required ('There is no notification, and review takes business days'), and gives concrete cadence guidance ('every few minutes to hours, not every few seconds'). It also prescribes next actions per state (approved → quote_numbers; rejected → cancel_verification then resubmit), which is richer than a simple use/don't-use rule.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.