Ontario Protocol
REMOTE · ONTARIOPROTOCOL.COM
Find live x402 APIs for any task (0.005 USDC, no match no charge); Base balance, tx and gas reads.
Available components
Last scanned (5 hours ago)
Scores higher than 84% of remote servers
Reachable. Last reached 5 Nov 2026.
Category Finance and Payments
How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →
Endpoint Security80
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- No authorisation is required to call this server. Every tool declares its destructiveHint and none is destructive, so open access doesn't expose one. See how to fix → View diagnostics → Partial
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- The HSTS (Strict-Transport-Security) header is present. View diagnostics → Pass
- DNSSEC check failed: this domain isn't protected by DNSSEC. See how to fix → View diagnostics → Fail
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability62
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 4764 tokens (~238/item across 20 items; 20 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management73
- Stability check failed: schema churn in the 29 days we've observed: 5 tool removals, 0 breaking changes, 0 auth/transport breaks, 4 additions. See how to fix → Fail
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 100% of tool parameters carry a description.Pass
- Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Tool Safety88
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- 1 of 2 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation; "agent_can_pay" implies "pay" and declares readOnlyHint instead, contradicting what its own name says it does. See how to fix → Partial
- An AI judge read all 21 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 5 Nov 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 70 to 73.
- 4 Nov 26 −1
No change was recorded against any check on this day. Stability & Change Management went from 76 to 70.
- 31 Oct 26 0
- Tool “ontario_base-balances” rewrote its description, which is the text the model reads security
- Tool “ontario_base-gas” rewrote its description, which is the text the model reads security
- Tool “ontario_base-tx-check” rewrote its description, which is the text the model reads security
- Tool “ontario_find-api” rewrote its description, which is the text the model reads security
- Tool “ontario_list-service” rewrote its description, which is the text the model reads security
- Tool “ontario_validate-service” rewrote its description, which is the text the model reads security
- Server version: 1.0.13 → 1.0.14 functional
- “ontario_validate-service” reworded the description of “verify_now” cosmetic
- 30 Oct 26 0
- Tool “ontario_base-balances” rewrote its description, which is the text the model reads security
- Tool “ontario_base-gas” rewrote its description, which is the text the model reads security
- Tool “ontario_base-tx-check” rewrote its description, which is the text the model reads security
- 26 Oct 26 0
- Tool “agent_can_pay” rewrote its description, which is the text the model reads security
- Tool “agent_trust_preview” rewrote its description, which is the text the model reads security
- Tool “find_x402_tool” rewrote its description, which is the text the model reads security
- Tool “ontario_list-agent” rewrote its description, which is the text the model reads security
- Tool “ontario_purchase_router” rewrote its description, which is the text the model reads security
- Tool “ontario_refresh-listing” rewrote its description, which is the text the model reads security
- Tool “x402_readiness_verify” rewrote its description, which is the text the model reads security
- “ontario_purchase_router” reworded the description of “wallet_enabled” cosmetic
- “ontario_refresh-listing” reworded the description of “paid_refresh_tx” cosmetic
- “ontario_task_fit” reworded the description of “wallet_enabled” cosmetic
- “ontario_validate-refresh” reworded the description of “paid_refresh_tx” cosmetic
- 25 Oct 26 0
- Tool “ontario_find-api” rewrote its description, which is the text the model reads security
- Tool “ontario_list-agent” rewrote its description, which is the text the model reads security
- Tool “ontario_list-service” rewrote its description, which is the text the model reads security
- Tool “ontario_purchase_router” rewrote its description, which is the text the model reads security
- Tool “ontario_refresh-listing” rewrote its description, which is the text the model reads security
- Schema quality: 4130 → 4748 ▼ functional
- Server version: 1.0.12 → 1.0.13 functional
- New tool “ontario_base-balances” functional
- New tool “ontario_base-gas” functional
- New tool “ontario_base-tx-check” functional
- 23 Oct 26 −4
- Stability: pass → fail ▼ security
- 18 Oct 26 0
- Server version: 1.0.11 → 1.0.12 functional
- New tool “ontario_find-api” functional
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 5 Nov 2026 · Probed https://ontarioprotocol.com/mcp
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=zentoristudios.com | CN=WR3,O=Google Trust Services,C=US | 20 Oct 2026 | 19 Jan 2027 | RSA 2048 | SHA256-RSA | c1838eb1cec4b3410aa8684397e0c82e |
| SANs: zentoristudios.com, www.pospilot.co, lingua.notovoai.com, steadicore.com, seedmorrow.online, markers.dantesaavedra.dev, shoppinglistplus.ru, www.mybasehabit.com, secure.snpfood.com, ds.wofstudioz.com, groupyid.com, counsiva.com and 88 more | ||||||
| CN=WR3,O=Google Trust Services,C=US (CA) | CN=GTS Root R1,O=Google Trust Services LLC,C=US | 13 Dec 2023 | 20 Feb 2029 | RSA 2048 | SHA256-RSA | 7ff005a91568d63abc22861684aa4b5a |
| CN=GTS Root R1,O=Google Trust Services LLC,C=US (CA) | CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE | 19 Jun 2020 | 28 Jan 2028 | RSA 4096 | SHA256-RSA | 77bd0d6cdb36f91aea210fc4f058d30d |
| CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE (CA) | CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE | 1 Sept 1998 | 28 Jan 2028 | RSA 2048 | SHA1-RSA | 40000000001154b5ac394 |
Background: What to check on a remote MCP endpoint →
DNSSEC insecure
Validation of ontarioprotocol.com. — Not signed
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| com. | present | 19718 | 13 | Verified |
| ontarioprotocol.com. | absent | Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation |
Authentication No authorisation required
The endpoint answered without asking for a token. Anyone who knows the URL can reach it.
| Result | No authorisation required |
|---|---|
| HTTP status | 200 |
| Header | Value |
|---|---|
| strict-transport-security | max-age=31556926 |
Background: How OAuth 2.1 works in the 2026 MCP spec →
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://ontarioprotocol.com/mcp | Verified | 200 | |
| http (plaintext) | http://ontarioprotocol.com/mcp | HTTPS enforced | 301 | https://ontarioprotocol.com/mcp |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
agent_can_pay Agent Payment Preflight ~167
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.
| Name | Type | Req | Description |
|---|---|---|---|
| agent_policy | string | – | Readiness policy to apply. Use strict unless the operator explicitly permits a different policy. |
| endpoint | string | yes | Public x402 endpoint to evaluate before payment; never include credentials or private query parameters. |
| max_usdc | string | – | Caller-approved per-call spending ceiling in decimal USDC, for example 0.01. This check never spends funds. |
| require_audit_receipt | boolean | – | Explicitly request the optional paid receipt handoff after an allow decision. This does not submit payment. |
| Name | Type | Req | Description |
|---|---|---|---|
| auditable_paid_continuation | object | – | – |
| decision | string | yes | – |
| decision_code | string | yes | – |
| decision_schema_version | string | yes | – |
| declared_price_usdc | number | – | – |
| endpoint | string | – | – |
| max_usdc | number | – | – |
| reasons | array | – | – |
| recommendations | array | – | – |
| report | object | – | – |
| report_integrity_ok | boolean | – | – |
| verification_age_hours | number | – | – |
No examples provided.
agent_trust_preview Agent Trust Preview ~88
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.
| Name | Type | Req | Description |
|---|---|---|---|
| agent_id | string | – | Optional stable public agent identifier to associate with the preview. |
| target_url | string | yes | Public HTTPS agent card or endpoint to preview without payment; never include private hosts or credentials. |
| Name | Type | Req | Description |
|---|---|---|---|
| issues | array | – | – |
| limitations | array | – | – |
| max_score | number | – | – |
| normalized_base | string | – | – |
| paid_upgrade | object | yes | – |
| preview | boolean | yes | – |
| scanned_at | string | – | – |
| schema | string | yes | – |
| signals | object | – | – |
| target_url | string | – | – |
| trust_score | number | yes | – |
No examples provided.
bazaar_buyer_intent_gap Bazaar Buyer Intent Gap ~178
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.
| Name | Type | Req | Description |
|---|---|---|---|
| buyer_queries | array | – | Optional explicit portfolio of up to five public buyer phrases. When omitted, Ontario generates four deterministic variants from buyer_query. |
| buyer_query | string | yes | Public task phrase a funded agent could use in CDP Bazaar search; never include credentials or private customer text. |
| target_url | string | yes | Public x402 paid endpoint whose buyer visibility should be measured. |
| Name | Type | Req | Description |
|---|---|---|---|
| buyer_fit | object | – | – |
| buyer_intent | object | – | – |
| buyer_intent_portfolio | object | yes | – |
| catalog_visibility | object | yes | – |
| cdp_validation | object | – | – |
| checked_at | string | yes | – |
| checks | array | yes | – |
| grade | – | yes | – |
| max_score | – | – | – |
| next_actions | array | – | – |
| report_id | string | yes | – |
| schema | – | yes | – |
| score | number | yes | – |
| settlement_activation | object | yes | Observed indexing and activation state, not a promise of placement or demand. |
| status | – | yes | – |
| target_url | string | yes | – |
| trust_boundary | object | yes | – |
No examples provided.
find_x402_tool Find a task-matched x402 tool ~216
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.
| Name | Type | Req | Description |
|---|---|---|---|
| active_only | boolean | – | When true, require recent source-reported activity or fresh strict-ready Ontario profile evidence. |
| limit | integer | – | Maximum number of task-matched candidates to return, from 1 to 10. |
| max_usdc | string | – | Optional hard USDC price ceiling for returned candidates. |
| network | string | – | Optional network filter, for example eip155:8453 or base. |
| query | string | yes | Public task text only; never include credentials or private customer data. |
| Name | Type | Req | Description |
|---|---|---|---|
| candidate_status | string | – | – |
| candidates | array | yes | – |
| count | integer | yes | – |
| intent | string | – | provider_publication when provider-side listing intent is routed to the listing validation and publication workflow. |
| provider_path | object | – | Machine-actionable free validation, optional pending submission, and gated paid publication sequence. |
| query | string | yes | – |
| schema | – | yes | – |
| selection_method | string | – | – |
| trust_boundary | string | yes | – |
No examples provided.
github_x402_repo_scan GitHub x402 Repo Scan ~75
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.
| Name | Type | Req | Description |
|---|---|---|---|
| repository_url | string | yes | Public https://github.com/owner/repo URL. |
| Name | Type | Req | Description |
|---|---|---|---|
| checks | array | yes | – |
| grade | string | yes | – |
| max_score | – | yes | – |
| next_actions | array | yes | – |
| repository | object | yes | – |
| schema | string | yes | – |
| score | number | yes | – |
| status | – | yes | – |
| summary | object | yes | – |
No examples provided.
ontario_base-balances Base Wallet Balances ~250
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.]
| Name | Type | Req | Description |
|---|---|---|---|
| _x402_payment | string | – | base64 x402 PaymentPayload (USDC on Base); obtain the requirements by calling this tool without it first. |
| address | string | yes | Base wallet or contract address to read. |
| tokens | string | – | Optional comma-separated ERC-20 contract addresses to read as well, max 20. |
Structured output declared, but exposes no named fields.
No examples provided.
ontario_base-gas Base Gas Price ~259
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.]
| Name | Type | Req | Description |
|---|---|---|---|
| _x402_payment | string | – | base64 x402 PaymentPayload (USDC on Base); obtain the requirements by calling this tool without it first. |
| blocks | integer | – | Optional number of recent blocks the fee percentiles cover, 5 to 50. Default 20. |
Structured output declared, but exposes no named fields.
No examples provided.
ontario_base-tx-check Base Transaction Check ~282
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.]
| Name | Type | Req | Description |
|---|---|---|---|
| _x402_payment | string | – | base64 x402 PaymentPayload (USDC on Base); obtain the requirements by calling this tool without it first. |
| expected_amount | string | – | Optional USDC amount in atomic units, for example 500000 for 0.5 USDC. |
| expected_to | string | – | Optional payTo address the USDC transfer should reach. |
| hash | string | yes | Base mainnet transaction hash. |
Structured output declared, but exposes no named fields.
No examples provided.
ontario_find-api Find a Live x402 API for a Task ~289
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.]
| Name | Type | Req | Description |
|---|---|---|---|
| _x402_payment | string | – | base64 x402 PaymentPayload (USDC on Base); obtain the requirements by calling this tool without it first. |
| limit | integer | – | Number of live-verified APIs to return, 1 to 5. |
| max_usdc | string | – | Optional per-call price ceiling in USDC for returned APIs, e.g. '0.01'. |
| task | string | yes | Public task text, e.g. 'web search for an AI agent'. Never include credentials or private data. |
Structured output declared, but exposes no named fields.
No examples provided.
ontario_list-agent List an Agent ~228
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.]
| Name | Type | Req | Description |
|---|---|---|---|
| _x402_payment | string | – | base64 x402 PaymentPayload (USDC on Base); obtain the requirements by calling this tool without it first. |
| agent_card_url | string | yes | Public HTTPS agent card URL for the listing. |
| description | string | – | Public description of the agent's capabilities. |
| name | string | yes | Public name of the agent being listed. |
| owner_contact | string | – | Optional owner contact supplied for the listing; do not include secrets. |
| owner_url | string | – | Optional public owner website. |
| tags | array | – | Capability tags describing the agent. |
Structured output declared, but exposes no named fields.
No examples provided.
ontario_list-service Publish your x402 API for agent discovery ~608
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.]
| Name | Type | Req | Description |
|---|---|---|---|
| _x402_payment | string | – | base64 x402 PaymentPayload (USDC on Base); obtain the requirements by calling this tool without it first. |
| asset | string | – | Payment token contract accepted by the provider on the declared network. |
| buyer_query | string | – | Public task phrase used for the point-in-time Bazaar retrieval audit. It may appear in the public profile. |
| category | string | – | Public capability category for the service, not a claim of certification. |
| description | string | yes | Public buyer task, expected result, and important service limitations; do not include confidential text. |
| endpoint | string | yes | Provider-owned public HTTPS x402 endpoint to list. Never include secrets or sensitive query parameters. |
| mcp_remote_url | string | – | Optional public MCP remote for read-only initialize and tools/list checks. |
| mcp_server_json_url | string | – | Optional public MCP Registry record or exact-search JSON URL. |
| mcp_server_name | string | – | Optional exact MCP Registry server name. |
| method | string | – | HTTP method used to call the provider's endpoint. |
| name | string | yes | Public service name displayed on the provider profile. |
| network | string | – | Provider payment network, for example base or eip155:8453. Ontario publication itself uses Base USDC. |
| owner_contact | string | – | Optional provider contact retained for operations and omitted from public profiles. Omit when unnecessary; never send wallet credentials. |
| owner_url | string | – | Public website identifying the provider; publication does not verify legal identity. |
| price_atomic | integer | – | Optional provider price in six-decimal USDC units: 10000 equals 0.01 USDC. Must match price_usdc when supplied. |
| price_usdc | string | yes | Provider endpoint price in decimal USDC, at most six decimal places. This is separate from Ontario's 0.50 USDC publication fee. |
| source | string | – | Privacy-safe aggregate acquisition bucket; never a URL or query. |
| tags | array | – | Public capability tags for discovery, up to ten relevant labels. |
Structured output declared, but exposes no named fields.
No examples provided.
ontario_purchase_router Ontario Free/Paid Purchase Router ~381
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.
| Name | Type | Req | Description |
|---|---|---|---|
| free_preflight_complete | boolean | – | True only after the recommended free check has completed for this task. |
| max_usdc | – | – | 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… |
| network | string | – | Wallet policy network; Ontario paid tools currently require Base mainnet. |
| task | string | yes | Public task description only; never include credentials or private customer data. |
| wallet_enabled | boolean | – | True if the caller can locally sign an x402 PaymentPayload. |
| Name | Type | Req | Description |
|---|---|---|---|
| decision | string | yes | – |
| free_tool | object | – | – |
| gates | object | yes | – |
| input_guidance | object | – | Safe free task examples returned when an MCP caller invokes the router without a public task. |
| listing_maintenance_path | object | – | Present for existing-profile refresh intent. Gives the free validator followed by the gated paid refresher. |
| next_action | string | yes | – |
| optional_paid_upgrade | object|null | – | A paid upgrade the router discloses alongside a matching free route, with the evidence it adds. |
| paid_candidate | object|null | – | – |
| payment_flow | object | – | – |
| privacy | string | – | – |
| provider_publication_path | object | – | Present for provider-publication intent. Gives the free launch-kit and validator followed by the gated paid publisher. |
| reasons | array | – | – |
| router_follow_up | object | – | Non-spending request template for rerunning the router after the free preflight. |
| schema | – | yes | – |
| selected_tool | object | yes | – |
| status | – | yes | – |
| task_category | string | yes | – |
| trust_boundary | string | yes | – |
No examples provided.
ontario_refresh-listing Refresh an x402 Service Profile ~203
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.]
| Name | Type | Req | Description |
|---|---|---|---|
| _x402_payment | string | – | base64 x402 PaymentPayload (USDC on Base); obtain the requirements by calling this tool without it first. |
| listing_id | string | yes | Existing paid provider profile id. |
| paid_refresh_tx | string | – | One-use retry reference for a settled refresh that could not complete. |
Structured output declared, but exposes no named fields.
No examples provided.
ontario_task_fit Match a public task to an Ontario tool ~320
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.
| Name | Type | Req | Description |
|---|---|---|---|
| allow_typesafe | boolean | – | 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. Onta… |
| free_preflight_complete | boolean | – | True only after the recommended free check has completed for this task. |
| max_usdc | string | – | Explicit owner-approved USDC ceiling; never inferred. |
| network | string | – | Network permitted by the caller's wallet policy; Ontario paid tools require Base mainnet (eip155:8453). |
| task | string | yes | A public capability request, never private task content. |
| wallet_enabled | boolean | – | True if the caller can locally sign an x402 payment; this flag does not authorize spending. |
| Name | Type | Req | Description |
|---|---|---|---|
| payment_authorized | – | yes | – |
| status | string | yes | – |
No examples provided.
ontario_validate-agent Ontario Validate Agent ~116
Validate an agent listing payload for free before publication. Never publishes, signs or spends.
| Name | Type | Req | Description |
|---|---|---|---|
| agent_card_url | string | yes | Public HTTPS agent card URL for the listing. |
| description | string | – | Public description of the agent's capabilities. |
| name | string | yes | Public name of the agent being listed. |
| owner_contact | string | – | Optional owner contact supplied for the listing; do not include secrets. |
| owner_url | string | – | Optional public owner website. |
| tags | array | – | Capability tags describing the agent. |
| Name | Type | Req | Description |
|---|---|---|---|
| errors | array | yes | – |
| ok | boolean | yes | – |
No examples provided.
ontario_validate-refresh Ontario Validate Refresh ~67
Check an existing paid provider profile's refresh eligibility for free, including cooldown. Never refreshes, signs or spends.
| Name | Type | Req | Description |
|---|---|---|---|
| listing_id | string | yes | Existing paid provider profile id. |
| paid_refresh_tx | string | – | One-use retry reference for a settled refresh that could not complete. |
| Name | Type | Req | Description |
|---|---|---|---|
| errors | array | yes | – |
| ok | boolean | yes | – |
No examples provided.
ontario_validate-service Validate an x402 Service Listing Free ~550
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.
| Name | Type | Req | Description |
|---|---|---|---|
| asset | string | – | Payment token contract accepted by the provider on the declared network. |
| buyer_query | string | – | Public task phrase used for the point-in-time Bazaar retrieval audit. It may appear in the public profile. |
| category | string | – | Public capability category for the service, not a claim of certification. |
| description | string | yes | Public buyer task, expected result, and important service limitations; do not include confidential text. |
| endpoint | string | yes | Provider-owned public HTTPS x402 endpoint to list. Never include secrets or sensitive query parameters. |
| mcp_remote_url | string | – | Optional public MCP remote for read-only initialize and tools/list checks. |
| mcp_server_json_url | string | – | Optional public MCP Registry record or exact-search JSON URL. |
| mcp_server_name | string | – | Optional exact MCP Registry server name. |
| method | string | – | HTTP method used to call the provider's endpoint. |
| name | string | yes | Public service name displayed on the provider profile. |
| network | string | – | Provider payment network, for example base or eip155:8453. Ontario publication itself uses Base USDC. |
| owner_contact | string | – | Optional provider contact retained for operations and omitted from public profiles. Omit when unnecessary; never send wallet credentials. |
| owner_url | string | – | Public website identifying the provider; publication does not verify legal identity. |
| price_atomic | integer | – | Optional provider price in six-decimal USDC units: 10000 equals 0.01 USDC. Must match price_usdc when supplied. |
| price_usdc | string | yes | Provider endpoint price in decimal USDC, at most six decimal places. This is separate from Ontario's 0.50 USDC publication fee. |
| source | string | – | Privacy-safe aggregate acquisition bucket; never a URL or query. |
| tags | array | – | Public capability tags for discovery, up to ten relevant labels. |
| verify_now | boolean | – | 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. |
| Name | Type | Req | Description |
|---|---|---|---|
| errors | array | yes | – |
| next_steps | array | yes | – |
| normalized | object | yes | – |
| ok | – | yes | – |
| provider_publication | object | yes | – |
| stores_listing | – | yes | – |
| trust_disclaimer | string | yes | – |
| verification | object|null | yes | Optional public readiness observation; metadata validation alone does not verify readiness. |
| warnings | array | yes | – |
No examples provided.
x402_launch_kit X402 Launch Kit ~252
Generate a validated listing payload, x402 resource draft, MCP descriptor, GitHub readiness workflow, README snippet, and registry copy for one paid endpoint.
| Name | Type | Req | Description |
|---|---|---|---|
| asset | string | – | USDC token contract on the declared payment network; omit to use the Base USDC default. |
| description | string | yes | Public description of the task the service performs and the result it returns. |
| endpoint | string | yes | Provider-owned public HTTPS x402 endpoint to prepare for listing. |
| method | string | – | HTTP method accepted by the provider endpoint, for example POST. |
| name | string | yes | Public name of the provider's service. |
| network | string | – | Payment network accepted by the provider, for example base or eip155:8453. |
| owner_contact | string | – | Optional public business contact for generated drafts. Omit private addresses; never supply credentials. |
| owner_url | string | – | Public website identifying the service provider. |
| price_usdc | string | yes | The provider's per-call price in decimal USDC, not Ontario's publication fee. Kit generation is free. |
| tags | string | – | Comma-separated public capability tags, for example x402,paid-api,agent-tool. |
| Name | Type | Req | Description |
|---|---|---|---|
| artifacts | object | yes | Unpublished drafts, not proof of endpoint readiness or catalog placement. |
| generated_at | string | yes | – |
| listing_validation | object | yes | – |
| next_steps | array | yes | – |
| ontario_calls | object | yes | – |
| schema | – | yes | – |
| status | – | yes | – |
| trust_boundary | string | yes | – |
No examples provided.
x402_readiness_verify x402 Readiness Verify ~107
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.
| Name | Type | Req | Description |
|---|---|---|---|
| target_url | string | yes | Public service or x402 endpoint URL to inspect without payment. Do not submit credentials, private hosts, or sensitive query parameters. |
| Name | Type | Req | Description |
|---|---|---|---|
| buyer_conversion_next_step | object | – | – |
| grade | string | yes | – |
| provider_listing_next_step | object | – | – |
| readiness_score | number | yes | – |
| recommendations | array | – | – |
| report_id | string | yes | – |
| report_url | string | – | – |
| signals | object | – | – |
| status | string | yes | – |
| warnings | array | – | – |
No examples provided.
x402_verification_reports X402 Verification Reports ~34
Public ledger of recent x402 readiness reports.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | Maximum recent public readiness reports to request. |
| Name | Type | Req | Description |
|---|---|---|---|
| count | integer | yes | – |
| reports | array | yes | – |
| stats | object | yes | – |
No examples provided.
How do I install the Ontario Protocol MCP server?
Ontario Protocol is a hosted endpoint at https://ontarioprotocol.com/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
remote · ontarioprotocol.com
claude mcp add --transport http com-ontarioprotocol-ontario-protocol 'https://ontarioprotocol.com/mcp'
What is the Ontario Protocol MCP server?
Ontario Protocol is an MCP server listed in the public MCP registry as com.ontarioprotocol/ontario-protocol. Find live x402 APIs for any task (0.005 USDC, no match no charge); Base balance, tx and gas reads. This page covers its hosted endpoint (https://ontarioprotocol.com/mcp).
Is the Ontario Protocol MCP server safe to use?
Ontario Protocol scores 81 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the Ontario Protocol MCP server expose?
Ontario Protocol exposes 20 tools: ontario_purchase_router, ontario_find-api, ontario_base-balances, ontario_base-tx-check, ontario_base-gas, and 15 more. Their descriptions and schemas cost roughly 4,670 tokens of context every time the server is loaded.
Does the Ontario Protocol MCP server require authentication?
No. We connected to Ontario Protocol without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.
Is the Ontario Protocol MCP server still maintained?
Ontario Protocol is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.