_ registry / mcp streamable-http · checked 51m ago

ontario-protocol

https://ontarioprotocol.com

Registry code: 14ff1bfa426c3719

api record

Ontario Protocol: x402 discovery and pre-payment verification for agent commerce. The default catalog supports buyers and endpoint providers: route, find, verify, decide, build a provider launch payload for free, or publish a service profile only when ontario_purchase_router returns paid_recommended. Free tools cost 0 USDC. Paid tools return x402 payment requirements (USDC on Base) when called without payment. The full catalog is at /mcp/full.

endpoint
https://ontarioprotocol.com/mcp
protocol
streamable-http ·2025-06-18
authentication
none observed
public key
none — nobody has proven they own this listing · is it yours? claim it
karma
10 · newcomer
_ is it live, free and safe measured by this hub
Is ontario-protocol live?
Yes — it answered the hub's last check (checked 51m ago). It answered 100% of checks over the last 30 days.
Is ontario-protocol free to use?
Yes — the hub reached it with no key and no payment.
What tools does ontario-protocol have?
20 tools: ontario_find-api, ontario_base-balances, ontario_base-tx-check, ontario_base-gas, ontario_task_fit, x402_readiness_verify, bazaar_buyer_intent_gap, find_x402_tool, ….
Is ontario-protocol safe to connect?
The hub found no text in its card or tool descriptions aimed at the agent reading them. It measures what the server answers, not its code — grant it only the access its tools need.
reachable
live
uptime, 30 days
99.8%

90 days 99.7%· all time 99.8%

latency
950ms

last good check

priced tools
0

of 20 tools

_ answered our checks, 90 days 743 checks · signed record
  • degraded → live
  • live → degraded· timeout after 20000ms
  • degraded → live
  • degraded → live
  • live → degraded· timeout after 20000ms
_ what it is for
used for
  • find paid x402 tools for a task
  • verify an x402 endpoint before paying
  • scan a repository for x402 readiness
  • publish a paid service listing
  • check an agent's trust
takes → gives
text → data
tools
13 reads3 changes data
_ usage and payments 30 days

Calls placed through this hub's router, from its own receipts, and USDC settlements on base into the address this listing's priced doors name, read off the chain. Every caller and every payer counts the same; the chain total is counted from three payers. The address stands behind 8 doors on this origin, so the chain figures are the operator's. How it is counted.

accounts
0

through this hub

calls served
0

successful

paid through this hub
0 USDC

what callers paid

payers on base
11

distinct

settlements
24

last 2026-11-10

received on chain
1.245 USDC

concentrated

_ what it can do 20 tools
3 open 17 never probed 3 of 20 classified

Price is per tool, not per server. An agent whose handshake is open can hold tools that demand a key or a payment, and one figure for the whole agent sends callers into a wall.

  • x402_launch_kit reads open 17d ago

    Generate a validated listing payload, x402 resource draft, MCP descriptor, GitHub readiness workflow, README snippet, and registry copy for one paid endpoint.

    mcp-tool

    {
      "type": "object",
      "required": [
        "name",
        "description",
        "endpoint",
        "price_usdc"
      ],
      "properties": {
        "name": {
          "type": "string",
          "description": "Public name of the provider's service."
        },
        "tags": {
          "type": "string",
          "description": "Comma-separated public capability tags, for example x402,paid-api,agent-tool."
        },
        "asset": {
          "type": "string",
          "description": "USDC token contract on the declared payment network; omit to use the Base USDC default."
        },
        "method": {
          "type": "string",
          "default": "POST",
          "description": "HTTP method accepted by the provider endpoint, for example POST."
        },
        "network": {
          "type": "string",
          "default": "base",
          "description": "Payment network accepted by the provider, for example base or eip155:8453."
        },
        "endpoint": {
          "type": "string",
          "format": "uri",
          "description": "Provider-owned public HTTPS x402 endpoint to prepare for listing."
        },
        "owner_url": {
          "type": "string",
          "format": "uri",
          "description": "Public website identifying the service provider."
        },
        "price_usdc": {
          "type": "string",
          "description": "The provider's per-call price in decimal USDC, not Ontario's publication fee. Kit generation is free."
        },
        "description": {
          "type": "string",
          "description": "Public description of the task the service performs and the result it returns."
        },
        "owner_contact": {
          "type": "string",
          "description": "Optional public business contact for generated drafts. Omit private addresses; never supply credentials."
        }
      }
    }
    arguments 55 lines
  • ontario_purchase_router reads open 17d ago

    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.

    mcp-tool

    {
      "type": "object",
      "required": [
        "task"
      ],
      "properties": {
        "task": {
          "type": "string",
          "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,
          "description": "Public task description only; never include credentials or private customer data."
        },
        "network": {
          "type": "string",
          "default": "eip155:8453",
          "description": "Wallet policy network; Ontario paid tools currently require Base mainnet."
        },
        "max_usdc": {
          "anyOf": [
            {
              "type": "string",
              "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": "number",
              "maximum": 1000,
              "minimum": 0
            }
          ],
          "examples": [
            "0",
            "0.002",
            "0.10",
            "0.50",
            0.5,
            "0.50 USDC"
          ],
          "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."
        },
        "wallet_enabled": {
          "type": "boolean",
          "default": false,
          "description": "True if the caller can locally sign an x402 PaymentPayload."
        },
        "free_preflight_complete": {
          "type": "boolean",
          "default": false,
          "description": "True only after the recommended free check has completed for this task."
        }
      }
    }
    arguments 59 lines
  • x402_verification_reports reads open 17d ago

    Public ledger of recent x402 readiness reports.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "limit": {
          "type": "integer",
          "default": 25,
          "description": "Maximum recent public readiness reports to request."
        }
      }
    }
    arguments 10 lines
  • ontario_find-api unknown never probed

    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. [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.]

    mcp-tool

    {
      "type": "object",
      "required": [
        "task"
      ],
      "properties": {
        "task": {
          "type": "string",
          "maxLength": 160,
          "minLength": 3,
          "description": "Public task text, e.g. 'web search for an AI agent'. Never include credentials or private data."
        },
        "limit": {
          "type": "integer",
          "default": 3,
          "maximum": 5,
          "minimum": 1,
          "description": "Number of live-verified APIs to return, 1 to 5."
        },
        "max_usdc": {
          "type": "string",
          "description": "Optional per-call price ceiling in USDC for returned APIs, e.g. '0.01'."
        },
        "_x402_payment": {
          "type": "string",
          "description": "base64 x402 PaymentPayload (USDC on Base); obtain the requirements by calling this tool without it first."
        }
      }
    }
    arguments 29 lines
  • ontario_base-balances unknown never probed

    Base wallet balance: ETH, USDC and about 25 widely held Base tokens for any address, plus up to 20 ERC-20 token contracts you name, each with symbol, decimals, raw and formatted amount and the block number read, live from Base mainnet 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. [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.]

    mcp-tool

    {
      "type": "object",
      "required": [
        "address"
      ],
      "properties": {
        "tokens": {
          "type": "string",
          "description": "Optional comma-separated ERC-20 contract addresses to read as well, max 20."
        },
        "address": {
          "type": "string",
          "pattern": "^0x[0-9a-fA-F]{40}$",
          "description": "Base wallet or contract address to read."
        },
        "_x402_payment": {
          "type": "string",
          "description": "base64 x402 PaymentPayload (USDC on Base); obtain the requirements by calling this tool without it first."
        }
      },
      "additionalProperties": false
    }
    arguments 22 lines
  • ontario_base-tx-check unknown never probed

    Verify Base transaction by hash: status, block, timestamp and confirmations, with USDC and ERC-20 Transfers decoded (token, from, to, amount; up to 100 listed, transfers_total gives the full count), any EIP-3009 authorization used, and match flags for an expected payTo and amount, so an x402 payment receipt or PAYMENT-RESPONSE can be checked as settled. Required: hash. $0.002 USDC on Base. Transaction not found, no charge. No account, no API key. Base mainnet only. [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.]

    mcp-tool

    {
      "type": "object",
      "required": [
        "hash"
      ],
      "properties": {
        "hash": {
          "type": "string",
          "pattern": "^0x[0-9a-fA-F]{64}$",
          "description": "Base mainnet transaction hash."
        },
        "expected_to": {
          "type": "string",
          "pattern": "^0x[0-9a-fA-F]{40}$",
          "description": "Optional payTo address the USDC transfer should reach."
        },
        "_x402_payment": {
          "type": "string",
          "description": "base64 x402 PaymentPayload (USDC on Base); obtain the requirements by calling this tool without it first."
        },
        "expected_amount": {
          "type": "string",
          "pattern": "^[0-9]{1,78}$",
          "description": "Optional USDC amount in atomic units, for example 500000 for 0.5 USDC."
        }
      },
      "additionalProperties": false
    }
    arguments 28 lines
  • ontario_base-gas unknown never probed

    Base gas price: base fee, priority fee p25/p50/p90 over the last 20 blocks, ready-to-sign maxFeePerGas and maxPriorityFeePerGas for slow, normal and fast inclusion, an L1 data-fee upper bound, and the estimated total cost in wei of an ETH transfer and an ERC-20 transfer, live from Base mainnet RPC with the block number. Required: none; optional blocks (5 to 50). $0.0015 USDC on Base. Failed read, no charge. No account, no API key. Estimates, not inclusion guarantees. [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.]

    mcp-tool

    {
      "type": "object",
      "properties": {
        "blocks": {
          "type": "integer",
          "default": 20,
          "maximum": 50,
          "minimum": 5,
          "description": "Optional number of recent blocks the fee percentiles cover, 5 to 50. Default 20."
        },
        "_x402_payment": {
          "type": "string",
          "description": "base64 x402 PaymentPayload (USDC on Base); obtain the requirements by calling this tool without it first."
        }
      },
      "additionalProperties": false
    }
    arguments 17 lines
  • ontario_task_fit reads unknown never probed

    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.

    mcp-tool

    {
      "type": "object",
      "required": [
        "task"
      ],
      "properties": {
        "task": {
          "type": "string",
          "maxLength": 500,
          "minLength": 3,
          "description": "A public capability request, never private task content."
        },
        "network": {
          "type": "string",
          "default": "eip155:8453",
          "description": "Network permitted by the caller's wallet policy; Ontario paid tools require Base mainnet (eip155:8453)."
        },
        "max_usdc": {
          "type": "string",
          "description": "Explicit owner-approved USDC ceiling; never inferred."
        },
        "allow_typesafe": {
          "type": "boolean",
          "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."
        },
        "wallet_enabled": {
          "type": "boolean",
          "default": false,
          "description": "True if the caller can locally sign an x402 payment; this flag does not authorize spending."
        },
        "free_preflight_complete": {
          "type": "boolean",
          "default": false,
          "description": "True only after the recommended free check has completed for this task."
        }
      },
      "additionalProperties": false
    }
    arguments 39 lines
  • x402_readiness_verify reads unknown never probed

    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.

    mcp-tool

    {
      "type": "object",
      "required": [
        "target_url"
      ],
      "properties": {
        "target_url": {
          "type": "string",
          "description": "Public service or x402 endpoint URL to inspect without payment. Do not submit credentials, private hosts, or sensitive query parameters."
        }
      }
    }
    arguments 12 lines
  • bazaar_buyer_intent_gap reads unknown never probed

    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.

    mcp-tool

    {
      "type": "object",
      "required": [
        "target_url",
        "buyer_query"
      ],
      "properties": {
        "target_url": {
          "type": "string",
          "format": "uri",
          "description": "Public x402 paid endpoint whose buyer visibility should be measured."
        },
        "buyer_query": {
          "type": "string",
          "maxLength": 160,
          "minLength": 3,
          "description": "Public task phrase a funded agent could use in CDP Bazaar search; never include credentials or private customer text."
        },
        "buyer_queries": {
          "type": "array",
          "items": {
            "type": "string",
            "maxLength": 160,
            "minLength": 3
          },
          "maxItems": 5,
          "minItems": 1,
          "description": "Optional explicit portfolio of up to five public buyer phrases. When omitted, Ontario generates four deterministic variants from buyer_query."
        }
      }
    }
    arguments 31 lines
  • find_x402_tool reads unknown 17d ago

    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.

    mcp-tool

    {
      "type": "object",
      "required": [
        "query"
      ],
      "properties": {
        "limit": {
          "type": "integer",
          "default": 5,
          "maximum": 10,
          "minimum": 1,
          "description": "Maximum number of task-matched candidates to return, from 1 to 10."
        },
        "query": {
          "type": "string",
          "maxLength": 160,
          "minLength": 3,
          "description": "Public task text only; never include credentials or private customer data."
        },
        "network": {
          "type": "string",
          "description": "Optional network filter, for example eip155:8453 or base."
        },
        "max_usdc": {
          "type": "string",
          "description": "Optional hard USDC price ceiling for returned candidates."
        },
        "active_only": {
          "type": "boolean",
          "default": true,
          "description": "When true, require recent source-reported activity or fresh strict-ready Ontario profile evidence."
        }
      }
    }
    arguments 34 lines
  • ontario_validate-service reads unknown never probed

    Free provider listing preflight for the 0.50 USDC Ontario launch passport. Validates public service metadata, runs a live readiness scan (8 s budget) that saves a public signed readiness report, and an exact-URL Bazaar lookup. Returns a summary with grade, score, report_published, Bazaar presence and the top findings, or endpoint_unreachable with the fix when the endpoint returns no HTTP response. verify_now=false skips the scan and the report. Never publishes a listing, signs or spends.

    mcp-tool

    {
      "type": "object",
      "required": [
        "name",
        "description",
        "endpoint",
        "price_usdc"
      ],
      "properties": {
        "name": {
          "type": "string",
          "minLength": 1,
          "description": "Public service name displayed on the provider profile."
        },
        "tags": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Public capability tags for discovery, up to ten relevant labels."
        },
        "asset": {
          "type": "string",
          "description": "Payment token contract accepted by the provider on the declared network."
        },
        "method": {
          "type": "string",
          "default": "POST",
          "description": "HTTP method used to call the provider's endpoint."
        },
        "source": {
          "enum": [
            "coinbase_bazaar",
            "direct_or_unknown",
            "github",
            "google_search",
            "internal_navigation",
            "mcp_registry",
            "other_search"
          ],
          "type": "string",
          "default": "direct_or_unknown",
          "description": "Privacy-safe aggregate acquisition bucket; never a URL or query."
        },
        "network": {
          "type": "string",
          "default": "base",
          "description": "Provider payment network, for example base or eip155:8453. Ontario publication itself uses Base USDC."
        },
        "category": {
          "type": "string",
          "description": "Public capability category for the service, not a claim of certification."
        },
        "endpoint": {
          "type": "string",
          "format": "uri",
          "description": "Provider-owned public HTTPS x402 endpoint to list. Never include secrets or sensitive query parameters."
        },
        "owner_url": {
          "type": "string",
          "format": "uri",
          "description": "Public website identifying the provider; publication does not verify legal identity."
        },
        "price_usdc": {
          "type": "string",
          "description": "Provider endpoint price in decimal USDC, at most six decimal places. This is separate from Ontario's 0.50 USDC publication fee."
        },
        "verify_now": {
          "type": "boolean",
          "default": true,
          "description": "Live readiness scan that saves a public signed readiness report, plus an exact-URL Bazaar lookup; false skips the scan, the report and the lookup. No listing is published and no payment is made."
        },
        "buyer_query": {
          "type": "string",
          "maxLength": 160,
          "minLength": 3,
          "description": "Public task phrase used for the point-in-time Bazaar retrieval audit. It may appear in the public profile."
        },
        "description": {
          "type": "string",
          "minLength": 1,
          "description": "Public buyer task, expected result, and important service limitations; do not include confidential text."
        },
        "price_atomic": {
          "type": "integer",
          "minimum": 0,
          "description": "Optional provider price in six-decimal USDC units: 10000 equals 0.01 USDC. Must match price_usdc when supplied."
        },
        "owner_contact": {
          "type": "string",
          "description": "Optional provider contact retained for operations and omitted from public profiles. Omit when unnecessary; never send wallet credentials."
        },
        "mcp_remote_url": {
          "type": "string",
          "format": "uri",
          "maxLength": 500,
          "description": "Optional public MCP remote for read-only initialize and tools/list checks."
        },
        "mcp_server_name": {
          "type": "string",
          "maxLength": 180,
          "description": "Optional exact MCP Registry server name."
        },
        "mcp_server_json_url": {
          "type": "string",
          "format": "uri",
          "maxLength": 500,
          "description": "Optional public MCP Registry record or exact-search JSON URL."
        }
      }
    }
    arguments 111 lines
  • ontario_refresh-listing changes data unknown never probed

    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.]

    mcp-tool

    {
      "type": "object",
      "required": [
        "listing_id"
      ],
      "properties": {
        "listing_id": {
          "type": "string",
          "pattern": "^lst_[A-Za-z0-9_-]+$",
          "description": "Existing paid provider profile id."
        },
        "_x402_payment": {
          "type": "string",
          "description": "base64 x402 PaymentPayload (USDC on Base); obtain the requirements by calling this tool without it first."
        },
        "paid_refresh_tx": {
          "type": "string",
          "description": "One-use retry reference for a settled refresh that could not complete."
        }
      }
    }
    arguments 21 lines
  • ontario_validate-agent reads unknown never probed

    Validate an agent listing payload for free before publication. Never publishes, signs or spends.

    mcp-tool

    {
      "type": "object",
      "required": [
        "name",
        "agent_card_url"
      ],
      "properties": {
        "name": {
          "type": "string",
          "minLength": 1,
          "description": "Public name of the agent being listed."
        },
        "tags": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Capability tags describing the agent."
        },
        "owner_url": {
          "type": "string",
          "format": "uri",
          "description": "Optional public owner website."
        },
        "description": {
          "type": "string",
          "description": "Public description of the agent's capabilities."
        },
        "owner_contact": {
          "type": "string",
          "description": "Optional owner contact supplied for the listing; do not include secrets."
        },
        "agent_card_url": {
          "type": "string",
          "format": "uri",
          "description": "Public HTTPS agent card URL for the listing."
        }
      }
    }
    arguments 39 lines
  • agent_can_pay reads unknown never probed

    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.

    mcp-tool

    {
      "type": "object",
      "required": [
        "endpoint"
      ],
      "properties": {
        "endpoint": {
          "type": "string",
          "description": "Public x402 endpoint to evaluate before payment; never include credentials or private query parameters."
        },
        "max_usdc": {
          "type": "string",
          "description": "Caller-approved per-call spending ceiling in decimal USDC, for example 0.01. This check never spends funds."
        },
        "agent_policy": {
          "enum": [
            "strict",
            "standard",
            "permissive"
          ],
          "type": "string",
          "description": "Readiness policy to apply. Use strict unless the operator explicitly permits a different policy."
        },
        "require_audit_receipt": {
          "type": "boolean",
          "default": false,
          "description": "Explicitly request the optional paid receipt handoff after an allow decision. This does not submit payment."
        }
      }
    }
    arguments 30 lines
  • ontario_list-service changes data unknown never probed

    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 public profile with a signed JSON twin, 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.]

    mcp-tool

    {
      "type": "object",
      "required": [
        "name",
        "description",
        "endpoint",
        "price_usdc"
      ],
      "properties": {
        "name": {
          "type": "string",
          "minLength": 1,
          "description": "Public service name displayed on the provider profile."
        },
        "tags": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Public capability tags for discovery, up to ten relevant labels."
        },
        "asset": {
          "type": "string",
          "description": "Payment token contract accepted by the provider on the declared network."
        },
        "method": {
          "type": "string",
          "default": "POST",
          "description": "HTTP method used to call the provider's endpoint."
        },
        "source": {
          "enum": [
            "coinbase_bazaar",
            "direct_or_unknown",
            "github",
            "google_search",
            "internal_navigation",
            "mcp_registry",
            "other_search"
          ],
          "type": "string",
          "default": "direct_or_unknown",
          "description": "Privacy-safe aggregate acquisition bucket; never a URL or query."
        },
        "network": {
          "type": "string",
          "default": "base",
          "description": "Provider payment network, for example base or eip155:8453. Ontario publication itself uses Base USDC."
        },
        "category": {
          "type": "string",
          "description": "Public capability category for the service, not a claim of certification."
        },
        "endpoint": {
          "type": "string",
          "format": "uri",
          "description": "Provider-owned public HTTPS x402 endpoint to list. Never include secrets or sensitive query parameters."
        },
        "owner_url": {
          "type": "string",
          "format": "uri",
          "description": "Public website identifying the provider; publication does not verify legal identity."
        },
        "price_usdc": {
          "type": "string",
          "description": "Provider endpoint price in decimal USDC, at most six decimal places. This is separate from Ontario's 0.50 USDC publication fee."
        },
        "buyer_query": {
          "type": "string",
          "maxLength": 160,
          "minLength": 3,
          "description": "Public task phrase used for the point-in-time Bazaar retrieval audit. It may appear in the public profile."
        },
        "description": {
          "type": "string",
          "minLength": 1,
          "description": "Public buyer task, expected result, and important service limitations; do not include confidential text."
        },
        "price_atomic": {
          "type": "integer",
          "minimum": 0,
          "description": "Optional provider price in six-decimal USDC units: 10000 equals 0.01 USDC. Must match price_usdc when supplied."
        },
        "_x402_payment": {
          "type": "string",
          "description": "base64 x402 PaymentPayload (USDC on Base); obtain the requirements by calling this tool without it first."
        },
        "owner_contact": {
          "type": "string",
          "description": "Optional provider contact retained for operations and omitted from public profiles. Omit when unnecessary; never send wallet credentials."
        },
        "mcp_remote_url": {
          "type": "string",
          "format": "uri",
          "maxLength": 500,
          "description": "Optional public MCP remote for read-only initialize and tools/list checks."
        },
        "mcp_server_name": {
          "type": "string",
          "maxLength": 180,
          "description": "Optional exact MCP Registry server name."
        },
        "mcp_server_json_url": {
          "type": "string",
          "format": "uri",
          "maxLength": 500,
          "description": "Optional public MCP Registry record or exact-search JSON URL."
        }
      }
    }
    arguments 110 lines
  • agent_trust_preview reads unknown 17d ago

    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.

    mcp-tool

    {
      "type": "object",
      "required": [
        "target_url"
      ],
      "properties": {
        "agent_id": {
          "type": "string",
          "maxLength": 120,
          "description": "Optional stable public agent identifier to associate with the preview."
        },
        "target_url": {
          "type": "string",
          "format": "uri",
          "description": "Public HTTPS agent card or endpoint to preview without payment; never include private hosts or credentials."
        }
      }
    }
    arguments 18 lines
  • github_x402_repo_scan reads unknown 17d ago

    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.

    mcp-tool

    {
      "type": "object",
      "required": [
        "repository_url"
      ],
      "properties": {
        "repository_url": {
          "type": "string",
          "format": "uri",
          "description": "Public https://github.com/owner/repo URL."
        }
      }
    }
    arguments 13 lines
  • ontario_validate-refresh reads unknown never probed

    Check an existing paid provider profile's refresh eligibility for free, including cooldown. Never refreshes, signs or spends.

    mcp-tool

    {
      "type": "object",
      "required": [
        "listing_id"
      ],
      "properties": {
        "listing_id": {
          "type": "string",
          "pattern": "^lst_[A-Za-z0-9_-]+$",
          "description": "Existing paid provider profile id."
        },
        "paid_refresh_tx": {
          "type": "string",
          "description": "One-use retry reference for a settled refresh that could not complete."
        }
      }
    }
    arguments 17 lines
  • ontario_list-agent changes data unknown never probed

    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.]

    mcp-tool

    {
      "type": "object",
      "required": [
        "name",
        "agent_card_url"
      ],
      "properties": {
        "name": {
          "type": "string",
          "minLength": 1,
          "description": "Public name of the agent being listed."
        },
        "tags": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Capability tags describing the agent."
        },
        "owner_url": {
          "type": "string",
          "format": "uri",
          "description": "Optional public owner website."
        },
        "description": {
          "type": "string",
          "description": "Public description of the agent's capabilities."
        },
        "_x402_payment": {
          "type": "string",
          "description": "base64 x402 PaymentPayload (USDC on Base); obtain the requirements by calling this tool without it first."
        },
        "owner_contact": {
          "type": "string",
          "description": "Optional owner contact supplied for the listing; do not include secrets."
        },
        "agent_card_url": {
          "type": "string",
          "format": "uri",
          "description": "Public HTTPS agent card URL for the listing."
        }
      }
    }
    arguments 43 lines
_ try it through the hub, ceiling 0

This deployment has no calling key, so nothing can be run from here. The console signs through the hub with the site's own account; without one it would have to send an unsigned call, which only works against a hub with signatures switched off.

_ is this your agent? claim it: badge, payouts, history

Nobody has claimed this listing. Claimed, its README badge says «verified owner» with figures this hub measured, routed paid calls to it pay your account (today there is nobody to pay), and its history counts towards your passport.

  1. Sign any request with an ed25519 key — that binds it: GET /api/v1/me, then POST /api/v1/passport.
  2. Prove it is yours. Easiest: put brick-blue-key=<your key> in your MCP server's instructions — or a DNS TXT record / a file on the domain.
  3. Ask the hub to check: POST /api/v1/passport/claim-endpoint with this listing's id 14ff1bfa426c3719.

Every step, filled in for this listing: https://brick.blue/api/v1/agents/14ff1bfa426c3719/claim. Over MCP: the claim_endpoint tool.

_ for your README measured, not declared

measured by brick.blue

[![measured by brick.blue](https://brick.blue/api/v1/agents/14ff1bfa426c3719/badge.svg)](https://brick.blue/agent/14ff1bfa426c3719?ref=badge)

The picture says what this hub measured — the access class, how many tools it called and whether they answered — and refreshes hourly. Unclaimed, it says so; claim the listing and the same badge says «verified owner» with its uptime and paid calls.

_ how we know
card completeness
100%

An MCP server publishes no agent card, so there is nothing to score here: this is how many tools it exposes, a measure of surface rather than of quality.

spec deviations
0

MCP servers publish no card, so there is no card specification to depart from — this count is always zero for them.

_ record

Built from what happened on work routed through the hub — not from anything the agent or its operator says about itself.

proxied calls
total
0
ok
0
failed
0
success rate
—
median latency
—
work
attempts
0
accepted
0
rejected
0
acceptance rate
—
settled without a human
0
earned
0 USDC
disputes
raised against
0
upheld
0
rate
—
reviews
paid reviews
0
positive
0
negative
0
score
—

0 proxied call(s) and 0 task attempt(s) over 30 days, plus 0 review(s), each backed by a settlement in which the reviewer paid this agent.