Skip to main content
Glama

Validate an x402 Service Listing Free

ontario_validate-service

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.

Input Schema

NameRequiredDescriptionDefault
nameYesPublic service name displayed on the provider profile.
tagsNoPublic capability tags for discovery, up to ten relevant labels.
assetNoPayment token contract accepted by the provider on the declared network.
methodNoHTTP method used to call the provider's endpoint.POST
sourceNoPrivacy-safe aggregate acquisition bucket; never a URL or query.direct_or_unknown
networkNoProvider payment network, for example base or eip155:8453. Ontario publication itself uses Base USDC.base
categoryNoPublic capability category for the service, not a claim of certification.
endpointYesProvider-owned public HTTPS x402 endpoint to list. Never include secrets or sensitive query parameters.
owner_urlNoPublic website identifying the provider; publication does not verify legal identity.
price_usdcYesProvider endpoint price in decimal USDC, at most six decimal places. This is separate from Ontario's 0.50 USDC publication fee.
verify_nowNoLive 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_queryNoPublic task phrase used for the point-in-time Bazaar retrieval audit. It may appear in the public profile.
descriptionYesPublic buyer task, expected result, and important service limitations; do not include confidential text.
price_atomicNoOptional provider price in six-decimal USDC units: 10000 equals 0.01 USDC. Must match price_usdc when supplied.
owner_contactNoOptional provider contact retained for operations and omitted from public profiles. Omit when unnecessary; never send wallet credentials.
mcp_remote_urlNoOptional public MCP remote for read-only initialize and tools/list checks.
mcp_server_nameNoOptional exact MCP Registry server name.
mcp_server_json_urlNoOptional public MCP Registry record or exact-search JSON URL.

Output Schema

NameRequiredDescriptionDefault
okYes
errorsYes
warningsYes
next_stepsYes
normalizedYes
verificationYesOptional public readiness observation; metadata validation alone does not verify readiness.
stores_listingYes
trust_disclaimerYes
provider_publicationYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • changedInput schema / properties / verify_now / default
      Previous value: -falseNew value: +true
    • changedInput schema / properties / verify_now / description
      Previous value: -"Optionally run live readiness checks and save a public signed report. No listing is published and no payment is made."New value: +"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."
  2. Changed1 schema field changed
    • changedInput schema / properties / price_usdc / description
      Previous value: -"Provider endpoint price in decimal USDC, at most six decimal places. This is separate from Ontario's 2.00 USDC publication fee."New value: +"Provider endpoint price in decimal USDC, at most six decimal places. This is separate from Ontario's 0.50 USDC publication fee."
  3. Changed1 schema field changed
    • changedInput schema / properties / price_usdc / description
      Previous value: -"Provider endpoint price in decimal USDC, at most six decimal places. This is separate from Ontario's 0.50 USDC publication fee."New value: +"Provider endpoint price in decimal USDC, at most six decimal places. This is separate from Ontario's 2.00 USDC publication fee."
  4. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "additionalProperties": true,
      +  "properties": {
      +    "errors": {
      +      "maxItems": 0,
      +      "type": "array"
      +    },
      +    "next_steps": {
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    "normalized": {
      +      "required": [
      +        "name",
      +        "description",
      +        "endpoint",
      +        "price_usdc",
      +        "network"
      +      ],
      +      "type": "object"
      +    },
      +    "ok": {
      +      "const": true
      +    },
      +    "provider_publication": {
      +      "properties": {
      +        "decision": {
      +          "enum": [
      +            "paid_publication_available",
      +            "fix_readiness_before_purchase",
      +            "run_free_verification"
      +          ]
      +        },
      +        "price": {
      +          "type": "object"
      +        },
      +        "purchase": {
      +          "type": "object"
      +        },
      +        "schema": {
      +          "const": "ontario.provider_publication_product.v1"
      +        }
      +      },
      +      "required": [
      +        "schema",
      +        "decision",
      +        "price",
      +        "purchase"
      +      ],
      +      "type": "object"
      +    },
      +    "stores_listing": {
      +      "const": false
      +    },
      +    "trust_disclaimer": {
      +      "type": "string"
      +    },
      +    "verification": {
      +      "description": "Optional public readiness observation; metadata validation alone does not verify readiness.",
      +      "type": [
      +        "object",
      +        "null"
      +      ]
      +    },
      +    "warnings": {
      +      "items": {
      +        "type": "object"
      +      },
      +      "type": "array"
      +    }
      +  },
      +  "required": [
      +    "ok",
      +    "errors",
      +    "warnings",
      +    "normalized",
      +    "verification",
      +    "provider_publication",
      +    "stores_listing",
      +    "trust_disclaimer",
      +    "next_steps"
      +  ],
      +  "type": "object"
      +}
  5. First observed

TDQS

A4.4/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Despite readOnlyHint=false, the description discloses exactly what write occurs: a public signed readiness report is saved during a live scan with an 8 s budget, plus an exact-URL Bazaar lookup. It adds the failure mode ('endpoint_unreachable with the fix') and safety boundaries ('never publishes, signs or spends'), which annotations alone would not convey.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

It is one dense paragraph, but the core action and the key flag (verify_now) are front-loaded and every clause carries information. It is slightly packed with fee and error-mode details that could be split, but nothing is filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 18 parameters and a complex scan-and-report behavior, the description covers inputs, side effects, the verify_now branch, the return shape (grade, score, report_published, Bazaar presence, top findings, or endpoint_unreachable), and an output schema exists for field detail. Nothing an agent needs to call it correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so every one of the 18 parameters is already documented in the schema, including verify_now's effect. The description reinforces verify_now semantics but adds no syntax or format detail beyond the schema, so the baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb and resource: 'Free provider listing preflight' that 'Validates public service metadata, runs a live readiness scan ... and an exact-URL Bazaar lookup.' It is clearly separable from sibling write tools like ontario_list-service and from ontario_validate-agent by naming the x402 service-listing object and the free preflight scope.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It states the trigger context (preflight for the 0.50 USDC Ontario launch passport) and an explicit branching rule: 'verify_now=false skips the scan and the report.' It also rules out the publishing path with 'Never publishes a listing, signs or spends,' implying ontario_list-service is the alternative, though that sibling is not named outright.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.