Ontario Protocol
Find out why an agent cannot discover or call your x402 API, then publish the evidence a buyer needs to evaluate it.
Run the free buyer-discovery audit | Provider quickstart | Inspect current tools
Install in your agent
For API providers preparing a launch:
npx skills add TheTechDevPro/ontario-protocol --skill ontario-provider-launch
For agent builders checking an endpoint before spending:
npx skills add TheTechDevPro/ontario-protocol --skill ontario-x402-preflight
Skills contain inspectable instructions. Installation does not create a wallet, authorize a purchase, or change spending limits.
Connect
The remote uses Streamable HTTP. No Ontario API key is required for free tools.
For clients using mcpServers, including Claude Code's .mcp.json:
{
"mcpServers": {
"ontario-protocol": {
"type": "http",
"url": "https://ontarioprotocol.com/mcp"
}
}
}
For VS Code, see examples/vscode-mcp.json. The official Registry record and Smithery listing point to the same remote. A connected MCP host still needs a compatible local x402 wallet and explicit spend policy to use paid tools.
Try a useful task
Check whether my public x402 API appears in Bazaar for "return a sourced company filing". Report observable blockers. Do not spend or publish anything.
Or call the free HTTP diagnostic directly:
curl --fail-with-body --silent --show-error \
https://ontarioprotocol.com/api/tools/coinbase-bazaar-readiness \
-H 'Content-Type: application/json' \
-d '{"target_url":"https://example.com/api/paid","buyer_query":"return a sourced company filing"}'
Replace the example URL with your own public API. The result separates indexing preflight from sampled buyer-query retrieval, with evidence and timestamps. It does not initiate a settlement or submit your service to another registry.
Free checks and the paid deliverable
| Job | Tool or endpoint | Cost |
|---|---|---|
| Diagnose retrieval across five buyer queries | bazaar_buyer_intent_gap | Free |
| Inspect x402 endpoint readiness | x402_readiness_verify | Free |
| Decide whether a proposed spend passes policy | agent_can_pay | Free |
| Find task-relevant paid API candidates | find_x402_tool | Free |
| Validate provider publication inputs | ontario_validate-service | Free |
| Publish a signed provider launch profile | ontario_list-service | 0.50 USDC on Base |
The optional publication includes a canonical HTML/JSON profile, readiness evidence, a point-in-time Bazaar retrieval snapshot, a badge, and 30 days of included automatic freshness maintenance. Providers with an MCP server can add MCP Registry and read-only remote-contract evidence to the same purchase.
Publication does not buy Coinbase or MCP Registry placement, ranking, traffic, customers, a better grade, or a safety guarantee. Use the free diagnostic first. The paid route returns HTTP 402 before payment. A challenge is not a receipt; sign locally only under the owner's policy.
Publish from your agent without a browser
- Call
ontario_validate-servicewith your public service name, description, endpoint and its per-call price. Fix the returned field errors for free. - Run the free readiness and can-pay checks. Choose publication only when you need the public profile and approve Ontario's separate 0.50 USDC fee.
- Call
ontario_list-servicewithout payment and inspect the live requirements. - A compatible wallet client signs locally and retries with the PaymentPayload
in
params._meta["x402/payment"]. Store the profile andresult._meta["x402/payment-response"]receipt after success.
Ontario supports the standard x402 MCP payment format.
The unpaid MCP result uses HTTP 200 with isError: true and PaymentRequired
in both structured content and JSON text. It is not a failed server or a sale.
The older _x402_payment argument still works. HTTP-wrapper clients can send
X-Ontario-X402-Transport: http for HTTP 402 signaling and retry with
PAYMENT-SIGNATURE. No installation or free check authorizes a payment.
Source labels, when available, are coarse client-reported hints. They do not identify a person or prove a marketplace referred a paying customer.
Typed responses and compatibility
All nine tools in the default catalog declare output schemas, documented input parameters, and side-effect annotations. Clients can validate successful structured results instead of inferring their shape from prose. The free launch kit returns drafts only; optional live verification can create a public report; paid publication and evidence refresh remain state-changing operations.
The September 5, 2026 Smithery refresh reports 98/100, with complete schema, description, parameter, annotation, metadata, and configuration coverage. Its remaining deduction is for flat tool names. Existing names and payment contracts are retained for compatibility. This is a listing-quality measure, not a security audit, certification, or evidence of customer demand.
Public distribution check
On September 5, 2026, an explicitly approved, owner-funded 0.50 USDC activation
settled and the exact /api/x402/list-service resource appeared in CDP Bazaar and
Agentic Market. Smithery's original listing was refreshed to the current nine
tools. The operator disclosure and transaction receipt
make the test independently inspectable. This was distribution setup, not a new
customer, independent revenue, a security certification, or guaranteed traffic.
Machine-readable entry points
Private review handoffs for teams
Ontario Private Agent Handoff is a free self-service kit for teams operating lead-to-reviewer workflows. The local Python kit signs and encrypts selected brief fields, checks a pinned recipient, expiry, replay and local revocation, and returns a payload-free signed acceptance receipt. It makes no network calls and does not execute tools or pay. Keep your own authenticated transport.
The public page includes a rule-based setup assistant, a complete guide, expected
results, troubleshooting and a synthetic policy simulator. The assistant adapts
to the customer's environment without uploading choices, keys or task data.
Unsupported deployments are not marked ready. Run demo.py locally for real encryption,
receipt verification and a replay-denial check. No account, wallet, application,
invoice or setup call is needed. Guided implementation is no longer offered.
No hosted messaging, independent security audit or certification is claimed.
The local kit is not an MCP tool in the public Ontario server: confidential briefs and private keys must never be sent to that server. Read the kit's threat model before using real data. Existing paid provider publication remains unchanged.
Trust boundary
Ontario provides readiness and trust signals based on observable endpoint behavior, manifest metadata, payment challenge behavior, report history, and public evidence. It does not guarantee endpoint safety, service quality, financial outcome, or future behavior.
This repository contains public integration artifacts and skills, not the production backend or its credentials. Contact: hello@ontarioprotocol.com. Security reports: security@ontarioprotocol.com.