{
  "tool_id": "art-148-mcp-authorization-metadata-validator",
  "kernel_id": "art-148-mcp-authorization-metadata-validator",
  "display_name": "MCP Authorization Metadata Validator (RFC 9728)",
  "tool_version": "1.0.0",
  "mandate_type": "compliance_mandate",
  "purpose": "Validate OAuth 2.0 Protected Resource Metadata per RFC 9728: resource URI (https-scheme), non-empty authorization_servers, scopes_supported, and bearer_methods_supported restricted to header/body/query. Flags each missing or malformed member. Consumes server identity verdict (art-147), feeds registry entry conformance check (art-149). Zero network, zero PII.",
  "control_description": "Validate OAuth 2.0 Protected Resource Metadata per RFC 9728: resource URI (https-scheme), non-empty authorization_servers, scopes_supported, and bearer_methods_supported restricted to header/body/query. Flags each missing or malformed member. Consumes server identity verdict (art-147), feeds registry entry conformance check (art-149). Zero network, zero PII.",
  "declared_inputs": [
    "art-147-mcp-server-identity-attestation-validator"
  ],
  "declared_outputs": [
    "art-149-mcp-registry-entry-conformance"
  ],
  "kernel_digest": "sha256:43b0ffacb0627fc9e7be626f9f750f719768682b2217b725291676156522e095",
  "trust_label": "deferred -- deterministic source published, zkVM proof not yet generated",
  "data_vintage": "2026-07-10",
  "last_validated": "2026-07-10",
  "conformance_fixtures_vendored": true,
  "compute_proof_ready": "ready",
  "wave": 27,
  "source_url": "https://ainumbers.co/chaingraph/art-148-mcp-authorization-metadata-validator.html",
  "generated_at": "2026-07-25T20:02:55.601Z"
}
