{
  "articles": [
    {
      "slug": "publish-x402-api-profile-readiness-badge",
      "title": "Publish an x402 API profile with a readiness report and badge",
      "description": "Prepare your x402 API for agent discovery: validate free, inspect readiness evidence, then publish an Ontario service profile for 0.50 USDC only when you need it.",
      "lead": "An endpoint can accept payments without giving a buyer enough information to choose it. Ontario's publication offer adds a public service profile and linked readiness evidence. Start with the free checks; pay only if publishing that profile is the result you need.",
      "primary_label": "Prepare a free publication draft",
      "primary_path": "/tools/x402-launch-kit?utm_content=profile_guide",
      "secondary_label": "Inspect the publication offer",
      "secondary_path": "/services/agent-catalog-publish?utm_content=profile_guide",
      "sections": [
        {
          "heading": "Free report or paid profile: choose the output you actually need",
          "paragraphs": [
            "Use the free readiness verifier if your question is whether an endpoint exposes usable payment and discovery metadata. A public report is evidence of observed checks, not a promise of security. You do not need to buy a listing just to inspect readiness.",
            "At the time of review, 0.50 USDC on Base buys an Ontario service profile with readiness evidence, an embeddable badge, a point-in-time Bazaar retrieval snapshot, and 30 days of included freshness maintenance. It does not buy Coinbase placement, ranking, traffic, customers, or a better readiness grade. Confirm the current HTTP 402 challenge before paying."
          ]
        },
        {
          "heading": "1. Describe a buyer task, not a technology stack",
          "paragraphs": [
            "Write what the endpoint returns, the inputs it needs, and its limits. For example: 'Return a timestamped shipping quote for a parcel's origin, destination and weight' is more actionable than 'AI-powered logistics API'. This is an illustrative description, not an Ontario-listed provider or testimonial.",
            "Keep the service price separate from Ontario's publication fee. In the launch kit, price_usdc describes your API's per-call price. It is not the amount Ontario charges to publish its profile. Use only public provider metadata; omit private customer information and credentials."
          ]
        },
        {
          "heading": "2. Generate a draft without spending",
          "paragraphs": [
            "Replace the placeholder URL with a real HTTPS endpoint you operate. This command generates drafts; it does not publish a listing, sign a payment, or establish that any registry accepted the service. Check the returned validation errors before continuing."
          ],
          "code": "curl -sS https://ontarioprotocol.com/api/tools/x402-launch-kit \\\n  -H 'Content-Type: application/json' \\\n  -d '{\"name\":\"Parcel Quote API\",\"description\":\"Return a timestamped parcel shipping quote from public route and weight inputs.\",\"endpoint\":\"https://YOUR-DOMAIN/api/quote\",\"method\":\"POST\",\"price_usdc\":\"0.01\",\"network\":\"base\"}'",
          "code_note": "Template only: replace the URL and sample metadata with your actual service. No payment header is included."
        },
        {
          "heading": "3. Validate the endpoint and listing separately",
          "paragraphs": [
            "Run POST /api/verify/x402-readiness with target_url set to your endpoint. Inspect the timestamp, grade, individual checks, and limitations. Then submit the launch kit's Ontario listing payload to POST /api/x402/list-service/validate. A syntactically valid payload is not proof that the endpoint works or that a marketplace will list it.",
            "If the evidence is stale, incomplete, or not ready, fix that first. Do not purchase publication as a way to bypass readiness requirements. Keep the signed report and inspect its integrity and freshness independently."
          ]
        },
        {
          "heading": "4. Publish only after an explicit decision",
          "paragraphs": [
            "Call /api/agent/tool-quote with the task 'Publish my x402 endpoint as a public service profile'. Leave wallet_enabled and free_preflight_complete false until those statements are actually true. When the checks are complete, supply an owner-approved max_usdc and network. The router never authorizes spending on the owner's behalf.",
            "If publication is still required and policy permits it, probe POST /api/x402/list-service without payment. Inspect the live challenge's amount, asset, network, recipient and resource. Sign locally only within owner policy. Preserve the settlement response and the returned profile and report references. Never send wallet keys to Ontario."
          ]
        },
        {
          "heading": "Why a Bazaar listing alone is not enough",
          "paragraphs": [
            "Coinbase's Bazaar supports public discovery by intent. Catalog presence and being returned for a particular buyer task are different checks. In Ontario's September 21, 2026 sample, its service-publication endpoint appeared in two of five fixed synthetic queries: rank 1 for a profile-and-badge query and rank 4 for a readiness-report query. It was absent from the other three returned samples.",
            "That observation is not market-wide rank, search volume, proof of delisting, or traffic attribution. Repeat the same queries after a genuine metadata change. Measure relevant retrieval and fulfilled external publications separately; a listing count is not revenue."
          ]
        },
        {
          "heading": "What to keep after publication",
          "paragraphs": [
            "Retain the profile URL, report reference, observed timestamp, evidence limitations and settlement receipt. Link the badge to its underlying report rather than treating the image as proof. After the included maintenance window, inspect the free refresh validator before considering an optional paid evidence refresh.",
            "Stop after the free result when a profile is unnecessary. Ontario provides observable readiness signals, not guarantees of safety, quality, financial outcome or future behavior."
          ]
        }
      ],
      "sources": [
        {
          "label": "Coinbase: discover services in Bazaar",
          "url": "https://docs.cdp.coinbase.com/x402/buyer/discover-services"
        },
        {
          "label": "Ontario publication payload schema",
          "url": "https://ontarioprotocol.com/.well-known/x402-list-service.schema.json"
        },
        {
          "label": "Ontario current tools and prices",
          "url": "https://ontarioprotocol.com/.well-known/mcp.json"
        }
      ]
    },
    {
      "slug": "mcp-registry-bazaar-agent-purchase-path",
      "title": "MCP Registry, Smithery or Bazaar: build the agent purchase path",
      "description": "Separate MCP installation from paid API discovery. Give agents a callable tool, free preflight, explicit payment requirements and evidence of fulfilled output.",
      "lead": "A directory visit is not a tool invocation, and a tool invocation is not a purchase. Connect each discovery surface to a concrete task, a working input contract and a free-first payment decision. Ontario can check and document parts of that path; it cannot manufacture buyers.",
      "primary_label": "Check your buyer path free",
      "primary_path": "/tools/agent-buyer-conversion-diagnostic?utm_content=hub_guide",
      "secondary_label": "Prepare provider publication",
      "secondary_path": "/tools/x402-launch-kit?utm_content=hub_guide",
      "sections": [
        {
          "heading": "Choose the surface by what the agent must do next",
          "paragraphs": [
            "Use an MCP listing to help an MCP host find and connect to a server. Ontario's live MCP server exposes tools/list and tools/call at /mcp. A host still needs to understand the tool's inputs, result and constraints after discovering it. An installed server is not proof of an invocation or settlement.",
            "Use paid-resource discovery when the buyer is searching for a payable HTTP capability. Coinbase Bazaar exposes public intent search and supports discovery through MCP as well. The categories overlap: the useful distinction is server connection versus finding and calling a particular resource, not 'MCP or payments'.",
            "Ontario is listed in the checked MCP Registry and Smithery records, and paid resources were found in the checked Bazaar and Agentic Market catalogs on September 21, 2026. These presence checks do not establish which hub produced a purchase. Treat missing or partial lookup responses as unknown, not automatic delisting."
          ]
        },
        {
          "heading": "Make the first tool call work without a wallet",
          "paragraphs": [
            "For Ontario tools, start with the free router. The example below describes a verification task and explicitly leaves wallet capability and completed preflight false. Read selected_tool and its contract; do not infer a need to purchase from merely finding a paid candidate."
          ],
          "code": "curl -sS https://ontarioprotocol.com/api/agent/tool-quote \\\n  -H 'Content-Type: application/json' \\\n  -d '{\"task\":\"Verify an endpoint before paying\",\"wallet_enabled\":false,\"free_preflight_complete\":false}'",
          "code_note": "A real free routing call. It does not inspect an endpoint until you invoke the returned verifier with your target."
        },
        {
          "heading": "Use semantic matching only with explicit data-sharing consent",
          "paragraphs": [
            "Ontario's ontario_task_fit MCP tool and POST /api/agent/task-fit accept a public task and return a suggested tool with its input schema, or abstain. Setting allow_typesafe=true sends the public task and tool descriptions to TypeSafe for Jev inference. Do not include private task content, personal information, signatures or credentials.",
            "Without that consent, the deterministic router is used. Model quota exhaustion or provider failure also falls back. Inspect status and jev_status so fallback is not mistaken for model evaluation. Confidence is not safety, payment authorization, or a probability that the tool will earn money."
          ]
        },
        {
          "heading": "Offer payment only for a distinct additional output",
          "paragraphs": [
            "If an agent only needs a readiness check, the free result can finish the task. If it operates an API and explicitly needs a public Ontario profile with linked evidence, the 0.50 USDC service-publication offer is a different output. Present that distinction before requesting payment.",
            "A payable MCP integration must expose the challenge clearly and let the client validate it, sign locally and retain evidence. A catalog description is not a spending policy. An owner-approved budget, matching network and asset, valid current evidence and a task-specific reason are still required. Ontario publication does not buy placement in any third-party hub."
          ]
        },
        {
          "heading": "Inspect failure at each step, not just page views",
          "paragraphs": [
            "Check these events separately: a catalog returns the exact resource; the agent retrieves the tool schema; valid arguments pass free validation; the agent intentionally probes a paid endpoint; a settlement is verified; the promised profile or result is delivered. Missing evidence at one step is a diagnosis target, not proof that the preceding step never occurred.",
            "A payment record without a linked acquisition record has an unknown source. Referrer and caller-supplied source labels are clues, not authenticated attribution. Do not divide Google clicks by all-time settlements and call that a conversion rate. Exclude operator probes and controlled payments from customer demand."
          ]
        },
        {
          "heading": "For providers: publish evidence that buyers can inspect",
          "paragraphs": [
            "Run the free buyer-path diagnostic or launch kit against a public service you operate. Correct invalid inputs, unclear output descriptions and readiness failures before expanding distribution. When you need an Ontario profile, inspect the publication deliverables and live price rather than assuming a registry registration includes them.",
            "Keep the exact same buyer-query samples when comparing metadata changes. The success criterion is more attributable, fulfilled external orders, not merely more crawlers or a model approving the copy. This guide proposes a workflow; it does not claim a measured conversion uplift."
          ]
        }
      ],
      "sources": [
        {
          "label": "Ontario MCP Registry record",
          "url": "https://registry.modelcontextprotocol.io/v0.1/servers/com.ontarioprotocol%2Fontario-protocol/versions/latest"
        },
        {
          "label": "Ontario on Smithery",
          "url": "https://smithery.ai/servers/thom899g/ontario-protocol"
        },
        {
          "label": "Coinbase: discover services in Bazaar",
          "url": "https://docs.cdp.coinbase.com/x402/buyer/discover-services"
        },
        {
          "label": "Ontario task-fit contract and consent",
          "url": "https://ontarioprotocol.com/api/agent/task-fit"
        }
      ]
    }
  ]
}
