{
  "schema_version": "bailing.client-api.consumer.v1",
  "consumer": "bailinghub-mcp-server",
  "adapter_version": "0.8.0",
  "contract": "bailing.client-api",
  "contract_major": 1,
  "tested_contract_version": "1.0.0",
  "endpoint_contracts": {
    "run.submit": {
      "method": "POST",
      "path": "/run",
      "authentication": "bearer"
    },
    "jobs.get": {
      "method": "GET",
      "path": "/jobs/{job_id}",
      "authentication": "bearer"
    }
  },
  "requests": {
    "run.submit": {
      "fields_sent": [
        "request_id",
        "route",
        "input"
      ]
    }
  },
  "responses": {
    "run.submit": {
      "required_fields": [
        "job_id",
        "request_id",
        "status"
      ]
    },
    "jobs.get": {
      "required_fields": [
        "job_id",
        "request_id",
        "status"
      ]
    }
  },
  "known_job_statuses": [
    "queued",
    "running",
    "dispatched",
    "done",
    "error",
    "rejected"
  ],
  "terminal_job_statuses": [
    "done",
    "error",
    "rejected"
  ],
  "handled_http_errors": [
    400,
    401,
    403,
    404,
    409,
    413,
    429,
    503
  ],
  "limits": {
    "request_id_max_length": 128,
    "route_max_length": 64,
    "input_max_length": 100000,
    "response_max_bytes": 1048576
  }
}
