modelcontextprotocol / modelcontextprotocol/ext-apps
Support for non-HTML View mimetypes
@liady is already working on this.
Since May 6, 2026.
- Dominant language
- TypeScript
- Stars
- 2.9k
- Forks
- 387
- Avg merge
- 3h 21m
- Merged PRs (30d)
- 6
Description
Support for non-HTML View mimetypes
The current spec locks the View mimetype to text/html;profile=mcp-app. This was a deliberate MVP choice but the longer-term goal has always been to broaden this.
Filing this issue to start the conversation on what comes next and track the design discussion in one place.
Possible use cases:
- Generative UI use cases
- Non-HTML surfaces
The MVP currently leaves out some cases - most notably generative UI, where the server returns a JSON description and the host renders it with its own components. Remote DOM lands in similar territory, and native (non-web) hosts that might not be able to rely on HTML at all.
Currently mimeTypes is an array in capability negotiation, _meta.ui is mimetype-agnostic, and most ui/* methods (lifecycle, tool-input/result, host-context, display modes) don't depend on HTML.
Suggestion
We might want a path for adding new profiles (MIME naming convention, interactivity considerations, etc.)
Opening for discussion
- Should we support additional mime types, if so should the list be pre-defined or open?
- For generative UI purposes - should we rely on existing standards / specs with capabilities negotiation?
- Should we separate the generative UI discussion from the non-html surfaces discussion?
(also see https://github.com/modelcontextprotocol/ext-apps/issues/169)
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.