{
  "description": "Records a buyer-owned public service request and checks the observed disposition through Broker, Witness and Trust evidence.",
  "endpoint": "https://www.gaipagents.com/mcp/agents/buyer-assurance",
  "name": "io.github.tjcgraham-rgb/gaip-buyer-assurance",
  "protocolVersion": "2025-06-18",
  "publication": {
    "acceptanceNotImplied": true,
    "descriptorLive": true,
    "officialMcpRegistry": "PENDING_INDIVIDUAL_REGISTRY_ACCEPTANCE"
  },
  "repository": {
    "source": "github",
    "url": "https://github.com/tjcgraham-rgb/-gaip-agent-to-art-prototype"
  },
  "schema_version": "gaip.agent-mcp-descriptor.v1",
  "title": "GAIP Buyer Assurance Agent",
  "tools": [
    {
      "annotations": {
        "destructiveHint": false,
        "openWorldHint": false,
        "readOnlyHint": false
      },
      "description": "Preflight one buyer-selected public service and record caller-declared delivery checks. No supplier appointment, call, contract or payment.",
      "inputSchema": {
        "properties": {
          "checks": {
            "maxItems": 8,
            "minItems": 1,
            "type": "array"
          },
          "counterparty_id": {
            "type": "string"
          },
          "data_classification": {
            "enum": [
              "PUBLIC",
              "NON_PERSONAL_PUBLIC"
            ]
          },
          "episode_id": {
            "type": "string"
          },
          "explicit_read_only_consent": {
            "const": true
          },
          "service_url": {
            "type": "string"
          },
          "task_class": {
            "type": "string"
          }
        },
        "required": [
          "data_classification",
          "counterparty_id",
          "service_url",
          "task_class",
          "checks",
          "explicit_read_only_consent"
        ],
        "type": "object"
      },
      "name": "assurance_prepare"
    },
    {
      "annotations": {
        "destructiveHint": false,
        "openWorldHint": true,
        "readOnlyHint": false
      },
      "description": "Check a buyer-submitted public response or later public replay against registered terms and verify the retained receipt.",
      "inputSchema": {
        "properties": {
          "body": {
            "type": "string"
          },
          "body_sha256": {
            "type": "string"
          },
          "content_type": {
            "type": "string"
          },
          "data_classification": {
            "enum": [
              "PUBLIC",
              "NON_PERSONAL_PUBLIC"
            ]
          },
          "http_status": {
            "type": "integer"
          },
          "mode": {
            "enum": [
              "BUYER_SUBMITTED",
              "PUBLIC_REPLAY"
            ]
          },
          "terms_id": {
            "type": "string"
          }
        },
        "required": [
          "data_classification",
          "terms_id",
          "mode"
        ],
        "type": "object"
      },
      "name": "assurance_complete"
    },
    {
      "annotations": {
        "destructiveHint": false,
        "openWorldHint": false,
        "readOnlyHint": true
      },
      "description": "Verify a retained Buyer Assurance terms or delivery receipt without assigning external-use credit.",
      "inputSchema": {
        "properties": {
          "receipt_id": {
            "type": "string"
          }
        },
        "required": [
          "receipt_id"
        ],
        "type": "object"
      },
      "name": "assurance_verify"
    }
  ],
  "transport": "streamable-http",
  "version": "1.0.0"
}