Repository navigation
Description
Surfaced while doing #1745 / #2309 (PR #2358). Same shape as #1745 was: a set of in-source mirrors carried until an upstream @modelcontextprotocol/ext-apps release makes them redundant.
Trigger
Close this when @modelcontextprotocol/ext-apps publishes a release that contains ext-apps#733 (MCP Apps-rendered elicitations, SEP-3118). 2.0.0 does not include it — #733 (opened 2026-07-29) is still open upstream as of 2026-09-13, and 2.0.0 shipped 2026-09-08 without it — so there is no bridge.requestElicitation(), no elicitation key in McpUiHostCapabilities, and no /server helpers to switch to yet. The nightly SDK watch (#1063) will file the release issue; this is the cleanup it unlocks.
Mirror sites to remove (verified against the #2358 tree)
Each is tagged in-source with ext-apps#733:
core/mcp/appElicitation.ts— mirrors the add support for proxy base path routing #733 server-capability / URI validator helpers; replace with the package's/serverexports.clients/web/src/components/elements/AppRenderer/requestAppElicitation.ts— hand-issues theui/elicitationrequest; replace withbridge.requestElicitation(params).clients/web/src/components/elements/AppRenderer/appCapabilities.ts— the WeakMap + transport observer that captures the app's initialize capabilities; delete the module and readgetAppCapabilities()off the bridge.createAppBridgeFactory.ts~line 326 — thePartial<McpUiHostCapabilities>spread that adds theelicitationkey the type does not yet declare.docs/test-servers.md~line 246 — the note that the Inspector speaks the add support for proxy base path routing #733 wire protocol but does not yet consume its helpers.
Folded in
While touching (3): type MessageObservable / observeAppCapabilities against the SDK v2 Transport interface, which PostMessageTransport now implements (the test fakes would need start/send/close). Cosmetic on its own; do it here rather than as a separate change.
Acceptance
- Bump
@modelcontextprotocol/ext-appsto the release containing add support for proxy base path routing #733 (rootpackage.jsononly). - Remove mirrors 1–5; the app-rendered elicitation flow (
mcp-app-elicitationtest-server config,smoke-web-elicitation.mjs) still passes. npm run local:gategreen.
Why not a sub-issue of #2309
#2309 tracks the 2.0.0 upgrade, which #2358 completed. Parenting this to it would hold that issue open until an ext-apps release that does not exist yet, so it is a sibling with cross-references (maintainer-confirmed).
Priority scored with the /issue-triage rubric below.
Activity
cliffhall commentedon Sep 13, 2026
Triage: Priority Low (total 4)
Board: #28, Status
Todo, milestone v2.8.0 because it plainly cannot make v2.7.0 (due 2026-09-16).cliffhall commentedon Sep 14, 2026
Re-score after re-parenting (maintainer moved this under #2309 and into v2.7.0): +1 sub-issue of a larger epic → total 5, still Low. Unchanged on the board. Still blocked upstream: the only published ext-apps release is 2.0.0 and ext-apps#733 remains open, so this holds #2309 open until a release containing #733 ships.
cliffhall commentedon Sep 14, 2026
Moved back to v2.8.0 and unparented from #2309 after discussion: #2309 closes with the 2.0.0 bump, and this waits on its own upstream trigger. Score stays Low (total 4 without the sub-issue bonus).
3 remaining items
cliffhall commentedon Oct 12, 2026
Just pinged the group in Discord to see if this is going to be supported in the spec or not.