{
  "mcp": "https://www.gaipagents.com/mcp",
  "method": "POST",
  "path": "/v1/free/supplier-reliability",
  "price_gbp": 0,
  "tool": {
    "annotations": {
      "destructiveHint": false,
      "idempotentHint": false,
      "openWorldHint": false,
      "readOnlyHint": true
    },
    "description": "Use this when a supplier agent or API you depend on started failing (\"did something change on their side?\"). Pass its `supplier_url` and the `failure`. Returns the diagnosis plus changes GAIP observed around then (correlated in time, not causation), with receipts. Free, read-only, no account; inputs must be public and non-personal.",
    "inputSchema": {
      "additionalProperties": true,
      "examples": [
        {
          "failure": {
            "code": 404,
            "detail": "Not Found"
          },
          "failure_started_at": "2026-09-27T12:00:00Z",
          "supplier_url": "https://weather.example.com/.well-known/agent-card.json"
        }
      ],
      "properties": {
        "card": {
          "description": "Optional supplier card / server description you integrated against.",
          "type": "object"
        },
        "counterparty_id": {
          "description": "Optional: name of the supplier.",
          "type": "string"
        },
        "data_classification": {
          "default": "PUBLIC",
          "description": "PUBLIC (default) or NON_PERSONAL_PUBLIC. Never send personal data.",
          "enum": [
            "PUBLIC",
            "NON_PERSONAL_PUBLIC"
          ],
          "type": "string"
        },
        "failure": {
          "description": "{code, detail?, http_status?} as for gaip_diagnose_integration_failure.",
          "type": "object"
        },
        "failure_started_at": {
          "description": "Optional: RFC 3339 time the failures started.",
          "format": "date-time",
          "type": "string"
        },
        "failures": {
          "description": "Optional: several failures, each {code, detail}.",
          "maxItems": 100,
          "minItems": 1,
          "type": "array"
        },
        "lookback_days": {
          "default": 14,
          "description": "Optional: days of GAIP observations to look back over.",
          "maximum": 30,
          "minimum": 1,
          "type": "integer"
        },
        "protocol": {
          "description": "Omit to infer it from card, transport or the supplier URL path (else UNKNOWN).",
          "enum": [
            "A2A",
            "MCP",
            "OPENAPI",
            "UNKNOWN"
          ],
          "type": "string"
        },
        "supplier_url": {
          "description": "Public https URL of the supplier's agent card, MCP server or API.",
          "format": "uri",
          "maxLength": 2048,
          "type": "string"
        },
        "task_class": {
          "description": "Optional: short name of the task, e.g. weather_forecast.",
          "type": "string"
        },
        "transport": {
          "description": "Optional transport you used (e.g. streamable-http, sse, GRPC).",
          "type": "string"
        }
      },
      "required": [
        "supplier_url"
      ],
      "type": "object"
    },
    "name": "gaip_supplier_reliability",
    "title": "Why is my supplier failing?"
  }
}