Skip to main content
Glama

NFC Tap Builder by Tap.Giving

get_order_status

Read-onlyIdempotent

Where an order stands, from the records fulfillment reads: the CRM stage, the fulfillment state with tracking when present, and the invoice state with its hosted link. An order not yet adopted returns stage "received" with the adoption expectation, not an error. Key required; only the key's own organization's orders. Give exactly one identifier: orderRef (the reference create_order returned; the usual key for an order) or invoiceId (the Stripe invoice id request_invoice returned; use it when the invoice is what you hold). Call this to check an existing order; it never changes anything. Use get_recap before an order exists, get_order_questions to gather an order's inputs, and request_invoice to mint or fetch the payment link.

Input Schema

NameRequiredDescriptionDefault
orderRefNoThe order reference create_order returned (begins with mcp:). The usual identifier; give this or invoiceId, not both.
invoiceIdNoThe Stripe invoice id request_invoice returned. Use it when the invoice is the identifier you hold.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/non-destructive, yet the description still adds real context: the 'received' stage for not-yet-adopted orders instead of an error, and the organization-scoping/auth requirement ('only the key's own organization's orders', 'Key required'). The 'it never changes anything' clause duplicates the annotations rather than extending them, which is the only wasted behavioral sentence.

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?

It is front-loaded with what the tool returns, then the edge case, then the identifier rule, then alternatives – a sensible order with no filler sentences. The parenthetical phrasing ('the usual key for an order', 'use it when the invoice is what you hold') is dense and helpful, though the paragraph is longer than strictly necessary.

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?

Given no output schema, the description enumerates the returned fields, covers the notable non-error edge case, states the auth/org scoping, and specifies identifier selection and mutual exclusion. Nothing an agent needs to call this correctly appears to be missing.

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 both parameter descriptions already explain provenance (create_order, request_invoice) and the 'not both' rule, so the schema does most of the work. The description's contribution is the explicit 'give exactly one identifier' constraint and the rule for choosing invoiceId when the invoice is what you hold, which is a modest but genuine addition on top of a complete schema. Baseline 3 applies.

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?

The opening sentence names the verb (retrieve where an order stands) and enumerates the concrete payload: CRM stage, fulfillment state with tracking, invoice state with hosted link. It is clearly a read/status lookup, distinguishable from create_order, request_invoice, and get_order_questions without opening a schema.

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 call it (to check an existing order) and routes three alternatives by condition: get_recap before an order exists, get_order_questions to gather inputs, request_invoice to mint or fetch a payment link. It also tells the agent which of two identifiers to prefer and why.

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