Skip to main content
Glama

Verify a signed x402 payment

verify_payment

Verifies a signed x402 payment payload against the supplied payment requirements. It checks validity but moves no funds.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
x402VersionNo
paymentPayloadYes
serverExtensionsNo
paymentRequirementsYes

TDQS

B3.3/5.0
Behavior3/5

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

With no annotations provided, the description carries the full burden, and it does disclose the key behavioral trait that no funds are moved, which meaningfully clarifies this is a safe, non-mutating verification. Yet it omits other behavior agents would need: what happens on an invalid payload, whether the call ever throws or returns a failure signal, and what the return value conveys about validity.

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?

Two concise sentences with zero filler. The first states the primary action and target; the second adds the critical non-mutating behavioral clarification. Both sentences earn their place, and the most decision-relevant clause ('moves no funds') is placed at the end as a deliberate contrast rather than buried.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The definition captures the key verification vs. fund-movement distinction, which is essential for an agent picking between this and settle_payment. However, with no output schema, two undocumented nested object parameters, and 0% schema coverage, the description leaves an agent uncertain about what the call returns on valid vs. invalid payments and what format the requirements must take.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. It maps two of the four parameters — paymentPayload ('payment payload') and paymentRequirements ('payment requirements') — but gives no meaning to x402Version despite it being the only parameter with a documented enum, and says nothing about serverExtensions. Nested objects further raise the burden, and the description only partially meets it.

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?

The description states a specific verb (verifies) and a clear resource (signed x402 payment payload), and frames the action against 'supplied payment requirements.' It does not explicitly name sibling settle_payment, but the 'moves no funds' clause implicitly distinguishes it from the fund-transfer sibling, which earns most of the differentiation credit but not the explicit clarity of a named alternative.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase 'it checks validity but moves no funds' gives implied usage context, signaling this is a verification-only operation and implying that fund movement belongs to a sibling like settle_payment. However, no sibling is named, no when-to-use vs when-not-to-use is spelled out, and there is no mention of prerequisites such as the requirements being already settled.

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.

TDQS

A3.9/5.0
Disambiguation5/5

Each tool has a clear, non-overlapping purpose: aggregate stats, capability lookup, resource listing, payment verification, and fund settlement. The two catalog tools are distinguished by aggregate vs. paginated listing, and verify vs. settle is cleanly separated by whether funds move.

Naming Consistency4/5

All names use lowercase snake_case and a verb-first structure, but read operations mix get_ and list_ (get_discovery_stats, get_supported, list_discovery_resources) while the two payment actions use settle_ and verify_. This is a minor inconsistency, not a confusing one.

Tool Count5/5

Five tools is well-scoped for a facilitator that handles discovery, capability checks, and payment settlement. Each tool earns its place and the set is small enough for an agent to navigate easily.

Completeness4/5

The surface covers the core workflow: discover resources, check supported networks, verify payloads, and settle payments. There is no dedicated payment status/history tool, but settle_payment supports idempotent polling, so the gap is minor and workable.

Resources