{
  "title": "MCP Apps Limitations and Open Questions",
  "schemaVersion": "1.0",
  "researchFreeze": "2026-08-26",
  "protocolRevision": "MCP Apps 2026-01-26 / ext-apps SDK v1.7.5 / MCP core 2026-07-28",
  "sourcePackage": "research/9",
  "integrityNote": "The 93 ordinary archive entries verify. Two self-referential bookkeeping entries have disclosed stale final rows; public corrections do not modify the raw archive.",
  "checkedAt": "2026-08-26",
  "liveCheckRequired": true,
  "count": 11,
  "records": [
    {
      "Issue": "No universal client parity",
      "Status": "Current limitation",
      "Why it matters": "A server cannot assume the same Apps features in every MCP host.",
      "Evidence": "Official/community client matrix and product docs",
      "Sources": "S007 S041 S044 S046 S048",
      "id": "R9-LIMIT001",
      "packageSourceIds": [
        "S007",
        "S041",
        "S044",
        "S046",
        "S048"
      ],
      "sourceIds": [
        "S392",
        "S420",
        "S143",
        "S422",
        "S424"
      ]
    },
    {
      "Issue": "Full-buffered HTML resource",
      "Status": "Stable behavior; streaming proposed",
      "Why it matters": "Large bundles delay parsing and first paint.",
      "Evidence": "Stable spec plus open streaming proposal",
      "Sources": "S004 S077",
      "id": "R9-LIMIT002",
      "packageSourceIds": [
        "S004",
        "S077"
      ],
      "sourceIds": [
        "S390",
        "S453"
      ]
    },
    {
      "Issue": "No canonical conformance validator",
      "Status": "Open proposal",
      "Why it matters": "Developers rely on reference hosts and product testing.",
      "Evidence": "Validator issue",
      "Sources": "S069",
      "id": "R9-LIMIT003",
      "packageSourceIds": [
        "S069"
      ],
      "sourceIds": [
        "S445"
      ]
    },
    {
      "Issue": "No canonical public discovery directory for Apps",
      "Status": "Open proposal",
      "Why it matters": "Finding compatible Apps remains host/directory specific.",
      "Evidence": "Discovery issue",
      "Sources": "S071",
      "id": "R9-LIMIT004",
      "packageSourceIds": [
        "S071"
      ],
      "sourceIds": [
        "S447"
      ]
    },
    {
      "Issue": "Accessibility requirements not fully normative",
      "Status": "Open issue",
      "Why it matters": "Protocol compliance does not ensure keyboard/screen-reader usability.",
      "Evidence": "Accessibility issue and WCAG",
      "Sources": "S068 S057",
      "id": "R9-LIMIT005",
      "packageSourceIds": [
        "S068",
        "S057"
      ],
      "sourceIds": [
        "S444",
        "S433"
      ]
    },
    {
      "Issue": "Version negotiation and capability evolution",
      "Status": "Active design concern",
      "Why it matters": "Stable spec, SDK version and draft features evolve independently.",
      "Evidence": "Version issue and releases",
      "Sources": "S074 S017",
      "id": "R9-LIMIT006",
      "packageSourceIds": [
        "S074",
        "S017"
      ],
      "sourceIds": [
        "S450",
        "S402"
      ]
    },
    {
      "Issue": "View provenance and server identity",
      "Status": "Open issue",
      "Why it matters": "Hosts and users need to know who authored executable UI.",
      "Evidence": "Provenance issue",
      "Sources": "S075",
      "id": "R9-LIMIT007",
      "packageSourceIds": [
        "S075"
      ],
      "sourceIds": [
        "S451"
      ]
    },
    {
      "Issue": "Multiple View instance context",
      "Status": "Ambiguous/open",
      "Why it matters": "One instance can overwrite another instance’s model context.",
      "Evidence": "Multi-instance issue",
      "Sources": "S076",
      "id": "R9-LIMIT008",
      "packageSourceIds": [
        "S076"
      ],
      "sourceIds": [
        "S452"
      ]
    },
    {
      "Issue": "Host-specific stable domain formats",
      "Status": "Intentional host dependence",
      "Why it matters": "OAuth callbacks and CORS allowlists are not portable without host documentation.",
      "Evidence": "Stable spec and CSP/CORS docs",
      "Sources": "S004 S010",
      "id": "R9-LIMIT009",
      "packageSourceIds": [
        "S004",
        "S010"
      ],
      "sourceIds": [
        "S390",
        "S395"
      ]
    },
    {
      "Issue": "Draft app-provided tools",
      "Status": "Not stable",
      "Why it matters": "Publishing ephemeral tools from a View changes trust and lifecycle assumptions.",
      "Evidence": "Draft spec and open capability issue",
      "Sources": "S005 S079",
      "id": "R9-LIMIT010",
      "packageSourceIds": [
        "S005",
        "S079"
      ],
      "sourceIds": [
        "S391",
        "S455"
      ]
    },
    {
      "Issue": "Security remains implementation-dependent",
      "Status": "Permanent characteristic",
      "Why it matters": "Sandboxing, CSP and mediation reduce risk but do not validate business logic or dependencies.",
      "Evidence": "Stable threat model and security policy",
      "Sources": "S004 S030",
      "id": "R9-LIMIT011",
      "packageSourceIds": [
        "S004",
        "S030"
      ],
      "sourceIds": [
        "S390",
        "S410"
      ]
    }
  ]
}