Skip to main content
Glama

x402 Demand Authenticity Report

ontario_x402-demand-authenticity

Use when an agent, marketplace, provider, or investor needs to separate observable Base USDC settlement evidence from unsupported independent-demand claims. Detects direct self-payments, classifies disclosed related-party and unattributed receipts, measures payer concentration, and does not call unknown wallets customers. Agent payment guidance: run free can-pay and readiness checks first; pay only when policy allows base 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 and 0.02 USDC is inside the agent budget. [PAID: 0.02 USDC via x402 on Base. Two-step flow: call without payment to receive MCP PaymentRequired, then retry with params._meta['x402/payment'] containing the signed PaymentPayload. The legacy _x402_payment base64 argument is also supported. Sign only after explicit budget and policy approval.]

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
tx_hashesYesOne to twenty public Base settlement transaction hashes to classify.
_x402_paymentNobase64 x402 PaymentPayload (USDC on Base); obtain the requirements by calling this tool without it first.
related_addressesNoDisclosed provider-controlled or related wallet addresses; omission does not establish independence.
expected_recipientNoOptional recipient wallet address expected for these settlement receipts.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.6/5.0
Behavior5/5

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

Annotations declare readOnlyHint false and openWorldHint true, but the description goes far beyond by disclosing the paid nature, the exact payment amount and token address, the two-step flow (call without payment → MCP PaymentRequired → retry with payload), and the legacy _x402_payment argument. It also discloses a key limitation: 'omission does not establish independence.' No contradiction with annotations; it adds substantial behavioral context about payment and caveats.

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?

The description is dense but well-organized: purpose first, then payment guidance in brackets. Every sentence carries necessary information; no filler. It is longer than average because the payment mechanics are complex, but the structure front-loads the core purpose and separates operational details. It could be tightened slightly, but it remains efficient.

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 the tool's complexity (payment, two-step flow, classification logic), the description covers purpose, usage conditions, payment details, and behavioral constraints. It does not describe the output format, but an output schema exists (has output schema: true), so that is covered elsewhere. For an agent to know when and how to call this tool, everything needed is present. Complete.

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 description coverage is 100%, so each parameter already has a description. The tool description adds value beyond the schema by explaining the payment workflow for _x402_payment (two-step flow, signed payload, legacy base64 alternative) and clarifying that related_addresses omission has no independence implication. This is extra semantic detail that helps an agent correctly construct parameters. Baseline 3 is elevated to 4.

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 description opens with a specific verb-resource pair: 'separate observable Base USDC settlement evidence from unsupported independent-demand claims.' It enumerates concrete actions (detect direct self-payments, classify receipts, measure payer concentration) and explicitly states a negative ('does not call unknown wallets customers'), which distinguishes it from siblings like ontario_agent-trust-scan or x402_verification_reports. The purpose is unambiguous and actionable.

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

Usage Guidelines4/5

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

It begins with 'Use when...' which is explicit context. It gives clear prerequisites: run free can-pay and readiness checks first, and pay only under policy and budget conditions. It does not name specific alternative tools or state 'do not use when X', but the conditions and the two-step payment flow are sufficient for an agent to decide when to invoke it. The guidance is concrete and tied to policy.

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.