Skip to main content
Glama

x402_receipt_verify

Did my x402 payment actually settle? POST-payment on-chain proof — the other half of x402_preflight (which checks BEFORE paying). Bring your Base settlement tx hash + the resource URL you paid, and this reads the tx receipt from Base mainnet, decodes its USDC Transfer events, and reconciles them against the endpoint's advertised payTo + amount (resolved from the resource's live 402, or pass payto/expect to bind it directly). Returns verdict SETTLED | UNDERPAID | WRONG_RECIPIENT | NO_TRANSFER | REVERTED | NOT_FOUND | UNVERIFIED, the matched transfer, and all USDC transfers in the tx. Read-only ground truth; confirms settlement to the right address + amount, not off-chain resource delivery. Cost: $0.005 USDC per call via x402 on MCP tools/call (direct HTTP route: $0.004).

Input Schema

NameRequiredDescriptionDefault
txYes0x-prefixed 32-byte Base-mainnet settlement transaction hash
urlNothe x402 resource URL you paid — its live 402 challenge supplies the advertised payTo + amount to reconcile against
paytoNooptional: 0x payTo to reconcile against directly (binds the check without fetching the endpoint)
expectNooptional: advertised amount in USDC dollars (e.g. 0.004) to verify the settled amount against

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.4/5.0
Behavior3/5

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

No annotations are supplied, so the description carries the full load, and it does disclose key traits: read-only ground truth, live Base-mainnet RPC read, a $0.005 USDC x402 charge per call, and the explicit limit that it confirms settlement 'not off-chain resource delivery'. However, it omits latency, rate limits, caching, and what happens when the live 402 fetch fails (the UNVERIFIED path is named but not explained). Solid but not exhaustive for an unannotated paid tool.

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-loads the agent's actual question ('Did my x402 payment actually settle?') then gives mechanism, inputs, return values, and cost in a logical order, with zero filler sentences. It is dense and slightly overpacked into one paragraph, but every clause carries information an agent needs.

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?

With no output schema and no annotations, the description compensates by enumerating all seven verdict values, describing the return payload (matched transfer plus all USDC transfers in the tx), and stating the pricing model. That is enough for an agent to call it and interpret the result without opening anything else.

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 3 baseline applies, but the description adds real meaning beyond the schema: it explains that url resolves payTo/amount from the resource's live 402 while payto/expect 'bind it directly' without fetching, clarifying the mode switch between the two paths. It also names expect's unit ('USDC dollars (e.g. 0.004)') consistently with the settlement amount being reconciled.

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?

Opening question plus a specific verb+resource ('reads the tx receipt from Base mainnet, decodes its USDC Transfer events, reconciles against payTo + amount') tells the agent exactly what it does. It explicitly positions itself against the sibling x402_preflight ('the other half... which checks BEFORE paying'), so no schema-opening is needed to choose between them.

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?

States the trigger clearly ('POST-payment'), the required inputs ('bring your Base settlement tx hash + the resource URL you paid'), and the alternative with its condition ('x402_preflight... checks BEFORE paying'). It also names a cheaper direct HTTP route, giving an explicit opt-out path.

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.