{
  "schema": "kallipolis.resource-quality.v1",
  "id": "resource.interop.mcp-2026-07-28",
  "version": "1.0.0",
  "title": "Model Context Protocol 2026-07-28 interoperability profile",
  "summary": "Machine-readable implementation facts for the current stateless MCP core, JSON-RPC messages, standard transports, and JSON Schema validation requirements.",
  "content": {
    "kind": "protocol-overview",
    "facts": [
      {
        "id": "fact.mcp.revision",
        "statement": "The current referenced Model Context Protocol revision is 2026-07-28.",
        "normativeLevel": "informative",
        "sourceIds": ["source.mcp.overview"]
      },
      {
        "id": "fact.mcp.json-rpc",
        "statement": "All messages between MCP clients and servers must follow JSON-RPC 2.0.",
        "normativeLevel": "normative",
        "sourceIds": ["source.mcp.overview"]
      },
      {
        "id": "fact.mcp.stateless",
        "statement": "The 2026-07-28 MCP core is stateless: every request carries the information needed for independent processing, and a server must not infer context from prior requests on the same connection.",
        "normativeLevel": "normative",
        "sourceIds": ["source.mcp.overview"]
      },
      {
        "id": "fact.mcp.transports",
        "statement": "The standard MCP bindings are stdio and Streamable HTTP; Streamable HTTP sends each message by HTTP POST to one MCP endpoint and returns JSON or a request-scoped SSE stream.",
        "normativeLevel": "informative",
        "sourceIds": ["source.mcp.transports"]
      },
      {
        "id": "fact.mcp.schema-dialect",
        "statement": "MCP clients and servers must support JSON Schema 2020-12 for schemas without an explicit $schema field and validate schemas using the declared or default dialect.",
        "normativeLevel": "normative",
        "sourceIds": ["source.mcp.overview"]
      }
    ]
  },
  "language": "en",
  "category": "agent-interoperability",
  "state": "prepared",
  "canonicalUrl": "https://platoskallipolis.com/resources/agent-interoperability/mcp-2026-07-28.json",
  "contentHash": "sha256:c71ba1f894f29fd8b78d4bdaeff80e0c7c24b073bf71d0d1929a5f06e826e98a",
  "owner": {
    "id": "platos-kallipolis",
    "name": "Plato's Kallipolis",
    "type": "organization",
    "accountabilityUrl": "https://platoskallipolis.com/about"
  },
  "access": {
    "mode": "public",
    "url": "https://platoskallipolis.com/resources/agent-interoperability/mcp-2026-07-28.json",
    "authentication": "none",
    "robotsAllowed": true
  },
  "provenance": {
    "method": "official-specification",
    "sources": [
      {
        "id": "source.mcp.overview",
        "url": "https://modelcontextprotocol.io/specification/2026-07-28/basic/index",
        "title": "Model Context Protocol 2026-07-28 Overview",
        "publisher": "Model Context Protocol Project",
        "observedAt": "2026-08-26T15:00:00Z"
      },
      {
        "id": "source.mcp.transports",
        "url": "https://modelcontextprotocol.io/specification/2026-07-28/basic/transports",
        "title": "Model Context Protocol 2026-07-28 Transports",
        "publisher": "Model Context Protocol Project",
        "observedAt": "2026-08-26T15:00:00Z"
      }
    ]
  },
  "observedAt": "2026-08-26T15:00:00Z",
  "freshness": {
    "policy": "version-bound",
    "state": "current",
    "nextReviewAt": "2026-09-02T15:00:00Z",
    "sourceVersion": "2026-07-28"
  },
  "license": {
    "id": "source-terms-apply",
    "url": "https://github.com/modelcontextprotocol/modelcontextprotocol/blob/main/LICENSE",
    "redistributionAllowed": false
  },
  "evidence": [
    {
      "id": "evidence.mcp.overview",
      "type": "source-claim",
      "url": "https://modelcontextprotocol.io/specification/2026-07-28/basic/index",
      "observedAt": "2026-08-26T15:00:00Z"
    },
    {
      "id": "evidence.mcp.transports",
      "type": "source-claim",
      "url": "https://modelcontextprotocol.io/specification/2026-07-28/basic/transports",
      "observedAt": "2026-08-26T15:00:00Z"
    }
  ]
}
