One problem · bounded diagnostic

MCP tool schema invalid: check the input contract

Find whether a tool definition is rejected or the arguments fail validation. These are different failures with different fixes.

Validate the schema itself

Check that the tool input schema is a JSON object and uses the dialect and features supported by your client. Check properties, required and additionalProperties together; required lists field names, not sample values.

Compare one call against the contract

Use a minimal synthetic argument object. A number encoded as a string, a missing required property or an unexpected extra field can fail an otherwise valid schema.

Re-list tools after a change

Clients can cache tool definitions. Refresh the connection, inspect the currently advertised schema and rerun the same small input before concluding that the patch worked.

Evidence to keep

A minimal synthetic schema, one sample argument object and the exact validation error with sensitive values removed.

Scope of this check

Diagnosis is bounded to the supplied text. A compatibility result requires validation with the client and transport you actually use.

Try the free probe

Use a sanitized symptom or a synthetic sample. The request goes to the existing NAIF diagnostic API. No payment or repair is started.

Review this service, current price and quote options

Availability is determined by the existing service and country policy. A diagnosis or quote does not confirm payment or guarantee a repair.

Use this guide with an AI agent
{
  "source": "discovery_pages_v1",
  "version": "2.0.0",
  "intentManifest": "/.well-known/naif-intents.json",
  "agentCard": "/.well-known/agent-card.json",
  "page_id": "mcp-tool-schema-invalid",
  "intent": "mcp_input_schema_invalid",
  "productId": "mcp-tool-mini",
  "capability": "/api/agent/catalog",
  "pricing": "/api/agent/catalog",
  "probe": {
    "method": "POST",
    "endpoint": "/api/agent/probe",
    "body": {
      "productId": "mcp-tool-mini",
      "source": "discovery_pages_v1",
      "input": {
        "message": "The MCP client rejects a tool definition: required contains a field that is absent from properties."
      }
    }
  },
  "quote": "/api/agent/quote",
  "acceptQuote": "/api/quote/accept",
  "offers": "/.well-known/naif-offers.json",
  "checkout": "Use only the checkoutEndpoint returned by the existing quote acceptance API when checkoutEligible is true.",
  "attribution": "Retain the __Host-naif_discovery cookie, or echo X-Naif-Discovery-ID returned by this page on same-origin API requests. Do not treat the identifier as authentication."
}
Existing agent discovery