addrbookFor publishers
← The evidence ledger

Evidence row 542647

Observed , by probe.mcp/1.

Kind
mcp.tools
About
endpoint 7473a24b-c6e9-4dcd-96c3-2cb68704badc
Recorded
Previous row
None: the first of its kind about this subject
Body SHA-256
7f16a0ac209394165ca7327a75d6cb43ad8fac1caee92a05f0755b8d86b8ca04
Leaf
0xa28a6234ce4f78567c378b0ee5c7e97d4a87a7242975cad52fd92c17e37cfc19

What was observed

{
  "count": 20,
  "tools": [
    {
      "description": "Free pre-payment policy decision: allow, review, or deny for one x402 endpoint under strict, standard, or permissive policy, with reasons and report evidence. require_audit_receipt adds a handoff to the optional settlement-backed receipt.",
      "inputSchema": {
        "properties": {
          "agent_policy": {
            "description": "Readiness policy to apply. Use strict unless the operator explicitly permits a different policy.",
            "enum": [
              "strict",
              "standard",
              "permissive"
            ],
            "type": "string"
          },
          "endpoint": {
            "description": "Public x402 endpoint to evaluate before payment; never include credentials or private query parameters.",
            "type": "string"
          },
          "max_usdc": {
            "description": "Caller-approved per-call spending ceiling in decimal USDC, for example 0.01. This check never spends funds.",
            "type": "string"
          },
          "require_audit_receipt": {
            "default": false,
            "description": "Explicitly request the optional paid receipt handoff after an allow decision. This does not submit payment.",
            "type": "boolean"
          }
        },
        "required": [
          "endpoint"
        ],
        "type": "object"
      },
      "name": "agent_can_pay"
    },
    {
      "description": "Free live, rate-limited agent trust preview for one public endpoint. Returns safe signals and issues without the paid evidence bundle or attestation; the paid trust scan adds them.",
      "inputSchema": {
        "properties": {
          "agent_id": {
            "description": "Optional stable public agent identifier to associate with the preview.",
            "maxLength": 120,
            "type": "string"
          },
          "target_url": {
            "description": "Public HTTPS agent card or endpoint to preview without payment; never include private hosts or credentials.",
            "format": "uri",
            "type": "string"
          }
        },
        "required": [
          "target_url"
        ],
        "type": "object"
      },
      "name": "agent_trust_preview"
    },
    {
      "description": "Free read-only provider audit that runs Coinbase's indexing preflight and measures one public x402 endpoint across five live CDP Bazaar buyer-search variations. Returns retrieval coverage, observed sample ranks, alternatives, public 30-day call and unique-payer observations, Base USDC price bands, HTTP 402 and metadata readiness, and the activation boundary. Public quality counts may include owner-funded calls and are not revenue. It never signs or settles.",
      "inputSchema": {
        "properties": {
          "buyer_queries": {
            "description": "Optional explicit portfolio of up to five public buyer phrases. When omitted, Ontario generates four deterministic variants from buyer_query.",
            "items": {
              "maxLength": 160,
              "minLength": 3,
              "type": "string"
            },
            "maxItems": 5,
            "minItems": 1,
            "type": "array"
          },
          "buyer_query": {
            "description": "Public task phrase a funded agent could use in CDP Bazaar search; never include credentials or private customer text.",
            "maxLength": 160,
            "minLength": 3,
            "type": "string"
          },
          "target_url": {
            "description": "Public x402 paid endpoint whose buyer visibility should be measured.",
            "format": "uri",
            "type": "string"
          }
        },
        "required": [
          "target_url",
          "buyer_query"
        ],
        "type": "object"
      },
      "name": "bazaar_buyer_intent_gap"
    },
    {
      "description": "Free buyer-side search across Ontario's fresh strict-ready paid profiles, Agentic Market, and Coinbase CDP Bazaar. Returns unverified marketplace candidates ranked by task relevance plus bounded source-reported recent activity, with optional Base/USDC budget filtering; nothing is probed, so listings may be dead or mispriced. ontario_find-api returns live-checked candidates. Paid Ontario publication adds no ranking score. Provider-side publication queries return the free listing validator and the 0.50 USDC publication workflow.",
      "inputSchema": {
        "properties": {
          "active_only": {
            "default": true,
            "description": "When true, require recent source-reported activity or fresh strict-ready Ontario profile evidence.",
            "type": "boolean"
          },
          "limit": {
            "default": 5,
            "description": "Maximum number of task-matched candidates to return, from 1 to 10.",
            "maximum": 10,
            "minimum": 1,
            "type": "integer"
          },
          "max_usdc": {
            "description": "Optional hard USDC price ceiling for returned candidates.",
            "type": "string"
          },
          "network": {
            "description": "Optional network filter, for example eip155:8453 or base.",
            "type": "string"
          },
          "query": {
            "description": "Public task text only; never include credentials or private customer data.",
            "maxLength": 160,
            "minLength": 3,
            "type": "string"
          }
        },
        "required": [
          "query"
        ],
        "type": "object"
      },
      "name": "find_x402_tool"
    },
    {
      "description": "Free pre-deployment scan of one public GitHub repository for x402 implementation, HTTP 402 tests, payment configuration, buyer documentation, discovery metadata, CI gates, and sensitive filenames. Returns paths and remediation, never source contents.",
      "inputSchema": {
        "properties": {
          "repository_url": {
            "description": "Public https://github.com/owner/repo URL.",
            "format": "uri",
            "type": "string"
          }
        },
        "required": [
          "repository_url"
        ],
        "type": "object"
      },
      "name": "github_x402_repo_scan"
    },
    {
      "description": "What does this Base wallet hold? ETH, USDC and about 25 widely held Base tokens, plus up to 20 ERC-20 contracts you name, with symbol, decimals, raw and formatted amounts and the block number read, live from Base RPC. Required: address. $0.002 USDC on Base. Failed read, no charge. No account, no API key. Base mainnet only; no prices or USD values; tokens outside the list and your extras are not discovered. By Ontario Protocol. [PAID: 0.002 USDC via x402 on Base. Two-step flow: a call without payment returns MCP PaymentRequired; the retry carries the signed PaymentPayload in params._meta['x402/payment']. The legacy _x402_payment base64 argument is also supported. Signing happens in the caller's wallet.]",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "_x402_payment": {
            "description": "base64 x402 PaymentPayload (USDC on Base); obtain the requirements by calling this tool without it first.",
            "type": "string"
          },
          "address": {
            "description": "Base wallet or contract address to read.",
            "pattern": "^0x[0-9a-fA-F]{40}$",
            "type": "string"
          },
          "tokens": {
            "description": "Optional comma-separated ERC-20 contract addresses to read as well, max 20.",
            "type": "string"
          }
        },
        "required": [
          "address"
        ],
        "type": "object"
      },
      "name": "ontario_base-balances"
    },
    {
      "description": "What does a Base transaction cost right now? Base fee, priority-fee p25/p50/p90 over the last 20 blocks, suggested maxFeePerGas and maxPriorityFeePerGas for slow, normal and fast inclusion, an L1 data-fee upper bound, and estimated total cost in wei for an ETH transfer and an ERC-20 transfer, read live from Base RPC with the block number. $0.0015 USDC on Base. Failed read, no charge. No account, no API key. Estimates, not inclusion guarantees. By Ontario Protocol. [PAID: 0.0015 USDC via x402 on Base. Two-step flow: a call without payment returns MCP PaymentRequired; the retry carries the signed PaymentPayload in params._meta['x402/payment']. The legacy _x402_payment base64 argument is also supported. Signing happens in the caller's wallet.]",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "_x402_payment": {
            "description": "base64 x402 PaymentPayload (USDC on Base); obtain the requirements by calling this tool without it first.",
            "type": "string"
          },
          "blocks": {
            "default": 20,
            "description": "Optional number of recent blocks the fee percentiles cover, 5 to 50. Default 20.",
            "maximum": 50,
            "minimum": 5,
            "type": "integer"
          }
        },
        "type": "object"
      },
      "name": "ontario_base-gas"
    },
    {
      "description": "Did this Base payment settle? Status, block, timestamp and confirmations for one transaction hash, with its ERC-20 Transfers decoded (token, from, to, amount; up to 100 listed, transfers_total gives the full count) and any EIP-3009 authorization used, plus match flags for an optional expected payTo and amount, so an x402 PAYMENT-RESPONSE can be checked. Required: hash. $0.002 USDC on Base. Transaction not found, no charge. No account, no API key. Base mainnet only. By Ontario Protocol. [PAID: 0.002 USDC via x402 on Base. Two-step flow: a call without payment returns MCP PaymentRequired; the retry carries the signed PaymentPayload in params._meta['x402/payment']. The legacy _x402_payment base64 argument is also supported. Signing happens in the caller's wallet.]",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "_x402_payment": {
            "description": "base64 x402 PaymentPayload (USDC on Base); obtain the requirements by calling this tool without it first.",
            "type": "string"
          },
          "expected_amount": {
            "description": "Optional USDC amount in atomic units, for example 500000 for 0.5 USDC.",
            "pattern": "^[0-9]{1,78}$",
            "type": "string"
          },
          "expected_to": {
            "description": "Optional payTo address the USDC transfer should reach.",
            "pattern": "^0x[0-9a-fA-F]{40}$",
            "type": "string"
          },
          "hash": {
            "description": "Base mainnet transaction hash.",
            "pattern": "^0x[0-9a-fA-F]{64}$",
            "type": "string"
          }
        },
        "required": [
          "hash"
        ],
        "type": "object"
      },
      "name": "ontario_base-tx-check"
    },
    {
      "description": "Which x402 API should my agent call? Live API finder for any task. Required: task. Returns up to 5 paid APIs that answered a fresh unpaid probe with a valid Base USDC 402, ranked by task fit, price and Bazaar-reported repeat buyers, each with live price, network and a ready-to-call request. Provider calls are paid separately. No live match, no charge. $0.005 USDC on Base. No account, no API key. Recommendations, not a safety guarantee. By Ontario Protocol. [PAID: 0.005 USDC via x402 on Base. Two-step flow: a call without payment returns MCP PaymentRequired; the retry carries the signed PaymentPayload in params._meta['x402/payment']. The legacy _x402_payment base64 argument is also supported. Signing happens in the caller's wallet.]",
      "inputSchema": {
        "properties": {
          "_x402_payment": {
            "description": "base64 x402 PaymentPayload (USDC on Base); obtain the requirements by calling this tool without it first.",
            "type": "string"
          },
          "limit": {
            "default": 3,
            "description": "Number of live-verified APIs to return, 1 to 5.",
            "maximum": 5,
            "minimum": 1,
            "type": "integer"
          },
          "max_usdc": {
            "description": "Optional per-call price ceiling in USDC for returned APIs, e.g. '0.01'.",
            "type": "string"
          },
          "task": {
            "description": "Public task text, e.g. 'web search for an AI agent'. Never include credentials or private data.",
            "maxLength": 160,
            "minLength": 3,
            "type": "string"
          }
        },
        "required": [
          "task"
        ],
        "type": "object"
      },
      "name": "ontario_find-api"
    },
    {
      "description": "Submits a public directory listing for an agent the caller owns. Payload validation is free; payment does not guarantee approval, traffic, ranking, or safety. [PAID: 0.10 USDC via x402 on Base. Two-step flow: a call without payment returns MCP PaymentRequired; the retry carries the signed PaymentPayload in params._meta['x402/payment']. The legacy _x402_payment base64 argument is also supported. Signing happens in the caller's wallet.]",
      "inputSchema": {
        "properties": {
          "_x402_payment": {
            "description": "base64 x402 PaymentPayload (USDC on Base); obtain the requirements by calling this tool without it first.",
            "type": "string"
          },
          "agent_card_url": {
            "description": "Public HTTPS agent card URL for the listing.",
            "format": "uri",
            "type": "string"
          },
          "description": {
            "description": "Public description of the agent's capabilities.",
            "type": "string"
          },
          "name": {
            "description": "Public name of the agent being listed.",
            "minLength": 1,
            "type": "string"
          },
          "owner_contact": {
            "description": "Optional owner contact supplied for the listing; do not include secrets.",
            "type": "string"
          },
          "owner_url": {
            "description": "Optional public owner website.",
            "format": "uri",
            "type": "string"
          },
          "tags": {
            "description": "Capability tags describing the agent.",
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "name",
          "agent_card_url"
        ],
        "type": "object"
      },
      "name": "ontario_list-agent"
    },
    {
      "description": "Publish a provider-owned x402 API so AI agents can discover and buy it. After free validation and a Bazaar buyer-intent audit, the 0.50 USDC Launch Passport creates a signed public HTML/JSON profile, readiness and Coinbase indexing evidence, a five-query retrieval snapshot, badge, copy-ready MCP/catalog records, and 30 days of freshness maintenance. It can become eligible for strict Ontario discovery when evidence is ready and fresh. It does not guarantee Coinbase placement, ranking, traffic, purchases, a ready grade, or safety. [PAID: 0.50 USDC via x402 on Base. Two-step flow: a call without payment returns MCP PaymentRequired; the retry carries the signed PaymentPayload in params._meta['x402/payment']. The legacy _x402_payment base64 argument is also supported. Signing happens in the caller's wallet.]",
      "inputSchema": {
        "properties": {
          "_x402_payment": {
            "description": "base64 x402 PaymentPayload (USDC on Base); obtain the requirements by calling this tool without it first.",
            "type": "string"
          },
          "asset": {
            "description": "Payment token contract accepted by the provider on the declared network.",
            "type": "string"
          },
          "buyer_query": {
            "description": "Public task phrase used for the point-in-time Bazaar retrieval audit. It may appear in the public profile.",
            "maxLength": 160,
            "minLength": 3,
            "type": "string"
          },
          "category": {
            "description": "Public capability category for the service, not a claim of certification.",
            "type": "string"
          },
          "description": {
            "description": "Public buyer task, expected result, and important service limitations; do not include confidential text.",
            "minLength": 1,
            "type": "string"
          },
          "endpoint": {
            "description": "Provider-owned public HTTPS x402 endpoint to list. Never include secrets or sensitive query parameters.",
            "format": "uri",
            "type": "string"
          },
          "mcp_remote_url": {
            "description": "Optional public MCP remote for read-only initialize and tools/list checks.",
            "format": "uri",
            "maxLength": 500,
            "type": "string"
          },
          "mcp_server_json_url": {
            "description": "Optional public MCP Registry record or exact-search JSON URL.",
            "format": "uri",
            "maxLength": 500,
            "type": "string"
          },
          "mcp_server_name": {
            "description": "Optional exact MCP Registry server name.",
            "maxLength": 180,
            "type": "string"
          },
          "method": {
            "default": "POST",
            "description": "HTTP method used to call the provider's endpoint.",
            "type": "string"
          },
          "name": {
            "description": "Public service name displayed on the provider profile.",
            "minLength": 1,
            "type": "string"
          },
          "network": {
            "default": "base",
            "description": "Provider payment network, for example base or eip155:8453. Ontario publication itself uses Base USDC.",
            "type": "string"
          },
          "owner_contact": {
            "description": "Optional provider contact retained for operations and omitted from public profiles. Omit when unnecessary; never send wallet credentials.",
            "type": "string"
          },
          "owner_url": {
            "description": "Public website identifying the provider; publication does not verify legal identity.",
            "format": "uri",
            "type": "string"
          },
          "price_atomic": {
            "description": "Optional provider price in six-decimal USDC units: 10000 equals 0.01 USDC. Must match price_usdc when supplied.",
            "minimum": 0,
            "type": "integer"
          },
          "price_usdc": {
            "description": "Provider endpoint price in decimal USDC, at most six decimal places. This is separate from Ontario's 0.50 USDC publication fee.",
            "type": "string"
          },
          "source": {
            "default": "direct_or_unknown",
            "description": "Privacy-safe aggregate acquisition bucket; never a URL or query.",
            "enum": [
              "coinbase_bazaar",
              "direct_or_unknown",
              "github",
              "google_search",
              "internal_navigation",
              "mcp_registry",
              "other_search"
            ],
            "type": "string"
          },
          "tags": {
            "description": "Public capability tags for discovery, up to ten relevant labels.",
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "name",
          "description",
          "endpoint",
          "price_usdc"
        ],
        "type": "object"
      },
      "name": "ontario_list-service"
    },
    {
      "description": "Free deterministic routing of one public task to Ontario's free and paid tools. Returns the matching tool and a decision (free_only, run_free_preflight, or paid_recommended with the tool's price, network and budget check). Natural endpoint-verification tasks route to the free readiness verifier, with the optional 0.002 USDC settlement-backed receipt disclosed. Provider jobs such as publishing, registering, or making an x402 endpoint discoverable route to the self-serve 0.50 USDC publication product and its free validator. Paid reads it can recommend: ontario_find-api (a live-checked paid API for a task), ontario_base-balances (Base wallet balances), ontario_base-tx-check (whether a Base transaction settled) and ontario_base-gas (current Base gas prices). Existing paid profiles route to the 0.10 USDC evidence refresh and its free refresh validator. Empty calls return task examples instead of guessing a purchase. This tool never invokes another tool, signs a payload, or spends funds.",
      "inputSchema": {
        "properties": {
          "free_preflight_complete": {
            "default": false,
            "description": "True only after the recommended free check has completed for this task.",
            "type": "boolean"
          },
          "max_usdc": {
            "anyOf": [
              {
                "pattern": "^\\s*(?:[Uu][Ss][Dd][Cc]?\\s*)?\\$?\\s*(?:(?:0|[1-9][0-9]{0,2})(?:\\.[0-9]+)?|1000(?:\\.0+)?)\\s*(?:[Uu][Ss][Dd][Cc]?)?\\s*$",
                "type": "string"
              },
              {
                "maximum": 1000,
                "minimum": 0,
                "type": "number"
              }
            ],
            "description": "Optional owner-authorized per-call USDC ceiling from 0 to 1000. Send a JSON number or decimal string such as 0.5, '0.50', '$0.50' or '0.50 USDC'. Omit when no budget is authorized; a budget is only a ceiling and does not grant spending authority. The router never increases it.",
            "examples": [
              "0",
              "0.002",
              "0.10",
              "0.50",
              0.5,
              "0.50 USDC"
            ]
          },
          "network": {
            "default": "eip155:8453",
            "description": "Wallet policy network; Ontario paid tools currently require Base mainnet.",
            "type": "string"
          },
          "task": {
            "description": "Public task description only; never include credentials or private customer data.",
            "examples": [
              "Verify endpoint readiness before payment",
              "Publish my x402 endpoint as a public service profile",
              "Refresh my existing x402 service profile",
              "Create a settlement-backed payment decision receipt",
              "Which x402 API should my agent call for web search",
              "Check whether a Base USDC transaction settled"
            ],
            "maxLength": 500,
            "minLength": 3,
            "type": "string"
          },
          "wallet_enabled": {
            "default": false,
            "description": "True if the caller can locally sign an x402 PaymentPayload.",
            "type": "boolean"
          }
        },
        "required": [
          "task"
        ],
        "type": "object"
      },
      "name": "ontario_purchase_router"
    },
    {
      "description": "Attaches a fresh live readiness observation to an existing paid Ontario provider profile's canonical HTML, JSON twin, and badge. This tool cannot edit provider metadata, improve a grade by payment, or buy ranking or traffic. Freshness maintenance is automatic and included during the launch passport's first 30 days. [PAID: 0.10 USDC via x402 on Base. Two-step flow: a call without payment returns MCP PaymentRequired; the retry carries the signed PaymentPayload in params._meta['x402/payment']. The legacy _x402_payment base64 argument is also supported. Signing happens in the caller's wallet.]",
      "inputSchema": {
        "properties": {
          "_x402_payment": {
            "description": "base64 x402 PaymentPayload (USDC on Base); obtain the requirements by calling this tool without it first.",
            "type": "string"
          },
          "listing_id": {
            "description": "Existing paid provider profile id.",
            "pattern": "^lst_[A-Za-z0-9_-]+$",
            "type": "string"
          },
          "paid_refresh_tx": {
            "description": "One-use retry reference for a settled refresh that could not complete.",
            "type": "string"
          }
        },
        "required": [
          "listing_id"
        ],
        "type": "object"
      },
      "name": "ontario_refresh-listing"
    },
    {
      "description": "Free task-to-tool matching with an optional Jev second opinion. With allow_typesafe=true, your public task and Ontario's public tool descriptions are sent to TypeSafe for Jev inference. Do not supply secrets, personal data, private URLs, or customer content. Ontario does not persist task text here. TypeSafe processing is subject to its policies; zero retention is not promised. Without consent, only Ontario's deterministic router is used. Returns a callable tool and input schema, or abstains. Never executes tools or authorizes payment. Model quota exhaustion falls back to deterministic routing.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "allow_typesafe": {
            "default": false,
            "description": "With allow_typesafe=true, your public task and Ontario's public tool descriptions are sent to TypeSafe for Jev inference. Do not supply secrets, personal data, private URLs, or customer content. Ontario does not persist task text here. TypeSafe processing is subject to its policies; zero retention is not promised. Without consent, only Ontario's deterministic router is used.",
            "type": "boolean"
          },
          "free_preflight_complete": {
            "default": false,
            "description": "True only after the recommended free check has completed for this task.",
            "type": "boolean"
          },
          "max_usdc": {
            "description": "Explicit owner-approved USDC ceiling; never inferred.",
            "type": "string"
          },
          "network": {
            "default": "eip155:8453",
            "description": "Network permitted by the caller's wallet policy; Ontario paid tools require Base mainnet (eip155:8453).",
            "type": "string"
          },
          "task": {
            "description": "A public capability request, never private task content.",
            "maxLength": 500,
            "minLength": 3,
            "type": "string"
          },
          "wallet_enabled": {
            "default": false,
            "description": "True if the caller can locally sign an x402 payment; this flag does not authorize spending.",
            "type": "boolean"
          }
        },
        "required": [
          "task"
        ],
        "type": "object"
      },
      "name": "ontario_task_fit"
    },
    {
      "description": "Validate an agent listing payload for free before publication. Never publishes, signs or spends.",
      "inputSchema": {
        "properties": {
          "agent_card_url": {
            "description": "Public HTTPS agent card URL for the listing.",
            "format": "uri",
            "type": "string"
          },
          "description": {
            "description": "Public description of the agent's capabilities.",
            "type": "string"
          },
          "name": {
            "description": "Public name of the agent being listed.",
            "minLength": 1,
            "type": "string"
          },
          "owner_contact": {
            "description": "Optional owner contact supplied for the listing; do not include secrets.",
            "type": "string"
          },
          "owner_url": {
            "description": "Optional public owner website.",
            "format": "uri",
            "type": "string"
          },
          "tags": {
            "description": "Capability tags describing the agent.",
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "name",
          "agent_card_url"
        ],
        "type": "object"
      },
      "name": "ontario_validate-agent"
    },
    {
      "description": "Check an existing paid provider profile's refresh eligibility for free, including cooldown. Never refreshes, signs or spends.",
      "inputSchema": {
        "properties": {
          "listing_id": {
            "description": "Existing paid provider profile id.",
            "pattern": "^lst_[A-Za-z0-9_-]+$",
            "type": "string"
          },
          "paid_refresh_tx": {
            "description": "One-use retry reference for a settled refresh that could not complete.",
            "type": "string"
          }
        },
        "required": [
          "listing_id"
        ],
        "type": "object"
      },
      "name": "ontario_validate-refresh"
    },
    {
      "description": "Free provider listing preflight. Validate public service metadata before buying the 0.50 USDC Ontario launch passport. Returns field errors or a normalized request and publication decision. Set verify_now only to create a public readiness report. Never publishes a listing, signs or spends; a valid payload alone does not establish readiness or Bazaar placement.",
      "inputSchema": {
        "properties": {
          "asset": {
            "description": "Payment token contract accepted by the provider on the declared network.",
            "type": "string"
          },
          "buyer_query": {
            "description": "Public task phrase used for the point-in-time Bazaar retrieval audit. It may appear in the public profile.",
            "maxLength": 160,
            "minLength": 3,
            "type": "string"
          },
          "category": {
            "description": "Public capability category for the service, not a claim of certification.",
            "type": "string"
          },
          "description": {
            "description": "Public buyer task, expected result, and important service limitations; do not include confidential text.",
            "minLength": 1,
            "type": "string"
          },
          "endpoint": {
            "description": "Provider-owned public HTTPS x402 endpoint to list. Never include secrets or sensitive query parameters.",
            "format": "uri",
            "type": "string"
          },
          "mcp_remote_url": {
            "description": "Optional public MCP remote for read-only initialize and tools/list checks.",
            "format": "uri",
            "maxLength": 500,
            "type": "string"
          },
          "mcp_server_json_url": {
            "description": "Optional public MCP Registry record or exact-search JSON URL.",
            "format": "uri",
            "maxLength": 500,
            "type": "string"
          },
          "mcp_server_name": {
            "description": "Optional exact MCP Registry server name.",
            "maxLength": 180,
            "type": "string"
          },
          "method": {
            "default": "POST",
            "description": "HTTP method used to call the provider's endpoint.",
            "type": "string"
          },
          "name": {
            "description": "Public service name displayed on the provider profile.",
            "minLength": 1,
            "type": "string"
          },
          "network": {
            "default": "base",
            "description": "Provider payment network, for example base or eip155:8453. Ontario publication itself uses Base USDC.",
            "type": "string"
          },
          "owner_contact": {
            "description": "Optional provider contact retained for operations and omitted from public profiles. Omit when unnecessary; never send wallet credentials.",
            "type": "string"
          },
          "owner_url": {
            "description": "Public website identifying the provider; publication does not verify legal identity.",
            "format": "uri",
            "type": "string"
          },
          "price_atomic": {
            "description": "Optional provider price in six-decimal USDC units: 10000 equals 0.01 USDC. Must match price_usdc when supplied.",
            "minimum": 0,
            "type": "integer"
          },
          "price_usdc": {
            "description": "Provider endpoint price in decimal USDC, at most six decimal places. This is separate from Ontario's 0.50 USDC publication fee.",
            "type": "string"
          },
          "source": {
            "default": "direct_or_unknown",
            "description": "Privacy-safe aggregate acquisition bucket; never a URL or query.",
            "enum": [
              "coinbase_bazaar",
              "direct_or_unknown",
              "github",
              "google_search",
              "internal_navigation",
              "mcp_registry",
              "other_search"
            ],
            "type": "string"
          },
          "tags": {
            "description": "Public capability tags for discovery, up to ten relevant labels.",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "verify_now": {
            "default": false,
            "description": "Optionally run live readiness checks and save a public signed report. No listing is published and no payment is made.",
            "type": "boolean"
          }
        },
        "required": [
          "name",
          "description",
          "endpoint",
          "price_usdc"
        ],
        "type": "object"
      },
      "name": "ontario_validate-service"
    },
    {
      "description": "Generate a validated listing payload, x402 resource draft, MCP descriptor, GitHub readiness workflow, README snippet, and registry copy for one paid endpoint.",
      "inputSchema": {
        "properties": {
          "asset": {
            "description": "USDC token contract on the declared payment network; omit to use the Base USDC default.",
            "type": "string"
          },
          "description": {
            "description": "Public description of the task the service performs and the result it returns.",
            "type": "string"
          },
          "endpoint": {
            "description": "Provider-owned public HTTPS x402 endpoint to prepare for listing.",
            "format": "uri",
            "type": "string"
          },
          "method": {
            "default": "POST",
            "description": "HTTP method accepted by the provider endpoint, for example POST.",
            "type": "string"
          },
          "name": {
            "description": "Public name of the provider's service.",
            "type": "string"
          },
          "network": {
            "default": "base",
            "description": "Payment network accepted by the provider, for example base or eip155:8453.",
            "type": "string"
          },
          "owner_contact": {
            "description": "Optional public business contact for generated drafts. Omit private addresses; never supply credentials.",
            "type": "string"
          },
          "owner_url": {
            "description": "Public website identifying the service provider.",
            "format": "uri",
            "type": "string"
          },
          "price_usdc": {
            "description": "The provider's per-call price in decimal USDC, not Ontario's publication fee. Kit generation is free.",
            "type": "string"
          },
          "tags": {
            "description": "Comma-separated public capability tags, for example x402,paid-api,agent-tool.",
            "type": "string"
          }
        },
        "required": [
          "name",
          "description",
          "endpoint",
          "price_usdc"
        ],
        "type": "object"
      },
      "name": "x402_launch_kit"
    },
    {
      "description": "Free check for whether a paid endpoint is ready for agent discovery and x402 payment. Returns a readiness grade, a free end-to-end buyer-path diagnostic handoff and a grade-aware provider handoff that states whether the endpoint is ready-grade for the optional 0.50 USDC publication and links the free listing validator.",
      "inputSchema": {
        "properties": {
          "target_url": {
            "description": "Public service or x402 endpoint URL to inspect without payment. Do not submit credentials, private hosts, or sensitive query parameters.",
            "type": "string"
          }
        },
        "required": [
          "target_url"
        ],
        "type": "object"
      },
      "name": "x402_readiness_verify"
    },
    {
      "description": "Public ledger of recent x402 readiness reports.",
      "inputSchema": {
        "properties": {
          "limit": {
            "default": 25,
            "description": "Maximum recent public readiness reports to request.",
            "type": "integer"
          }
        },
        "type": "object"
      },
      "name": "x402_verification_reports"
    }
  ]
}

What the leaf hashes

{"body":"7f16a0ac209394165ca7327a75d6cb43ad8fac1caee92a05f0755b8d86b8ca04","id":542647,"kind":"mcp.tools","method":"probe.mcp/1","observed_us":1793131015409367,"prev":null,"subject":"7473a24b-c6e9-4dcd-96c3-2cb68704badc","subject_kind":"endpoint"}

Proof

Fold these into the leaf in order, hashing each sorted pair with keccak256, to reach the root of (273461 rows).

  1. 0xa28a58c1769a9ed196240d0be3fadf3feeae2937fbd20d3700eab1725c86e44b
  2. 0xdf9eea509910076e6b1ee5c97b45d5d82462a4e7ae99d184bd4f1b0deced713c
  3. 0x17b51f8f02a827eefb0f0950d1c0ba8149e6d534e1a7385270db8b4e6cec15e2
  4. 0xa36555ab2e26501e891f0a1960c99abb96187b3c4bc2c1095dc9e1149fc70daf
  5. 0x24721e6a2e79bc069d88f3d71b2d6305d6ce87d993fd8e7c56b5c6e4b1ba3e19
  6. 0xba538c6e687fe4c00976e2397bd6672babf6867726b748dde7dfe2c3520d4bb7
  7. 0x45da07447b3c078b6a8d540a226550161aa81ac17d93b708281ab4c8930f43c8
  8. 0xffb7077dea7b829c7242b1196a304606630da9ed8616f1890e53749feb11789a
  9. 0xd75d04bdad2151ce8456fc2da19bcc9e826f9249c7f4f0938e6c318946cad1f6
  10. 0x991fb7892352e30668773a0c026465a5cffca80b4b334755bbf12c3ce7bcbbb5
  11. 0x60256611194f4b2e6a37447763b0aac23cbea6f8ca40ee0b8fbe44b2119b441f
  12. 0x0c9efc71bd73a056aab018d34b600797c2287eaa0df0398c8404046e9420d684
  13. 0x87816aee66e8f6e0f1e55ea83733bb58cf9612d36c45fd5b7fc5d6f4484b78fd
  14. 0x0644f7e2a4b5bf9b66f185cc3fbb766d456ad94490183852f4c6db5855114cc5
  15. 0xa3fff4662cd48659f5bafd0612931759a90e53a7b4209ed8f26f6594a07bb547
  16. 0x64c405a28e8819716221eb2529fe4ce277ab08025e17e685cbd5ece75ceb75c7
  17. 0xf30fddbf4811226c58e8f0daf36fddd79fc5f1356b592bb1d99a8061ddbabe66
  18. 0x2bf8151e5f157dd183b9de6fa00469551932a7a6e3f33a694895000ac9061197
  19. 0x9fc354c0ea3efc3f1b6548bb77ea902a50f2c9647647ea61592efce2bd795699
Day root
0xdd77e5e99da32c3f154180d63e3c3e6fe11e896a2c6896412ef6b5c4bcf7e795
Chained
0x23bb4dfd09f55c15ac3962f53578e02c6114d5bfd9bb451cf8794fb6e2817ef4
Published
On Arc Testnet, block 69414147: 0xb2ebd83aafeb765a0ce66e76aefb133ed06606c98038fd56191e2bcd1dcb77b4

How to check it · This row as JSON