This repo contains the SDK and specification for MCP Apps Extension (SEP-1865).
MCP Apps are a proposed standard inspired by MCP-UI and OpenAI's Apps SDK to allow MCP Servers to display interactive UI elements in conversational MCP clients / chatbots.
MCP Apps extend the Model Context Protocol to let servers deliver interactive UIs to MCP hosts. Here's how it works:
ui:// resource containing its HTML interfaceThis enables dashboards, forms, visualizations, and other rich experiences inside chat interfaces.
This SDK serves two audiences:
Build interactive UIs that run inside MCP-enabled chat clients.
@modelcontextprotocol/ext-apps — API Docs@modelcontextprotocol/ext-apps/react — API DocsEmbed and communicate with MCP Apps in your chat application.
@modelcontextprotocol/ext-apps/app-bridge — API DocsThere's no supported host implementation in this repo (beyond the examples/basic-host example).
We have contributed a tentative implementation of hosting / iframing / sandboxing logic to the MCP-UI repository, and expect OSS clients may use it, while other clients might roll their own hosting logic.
npm install -S @modelcontextprotocol/ext-apps
Or edit your package.json manually:
{
"dependencies": {
"@modelcontextprotocol/ext-apps": "^0.0.1"
}
}
![]() |
![]() |
![]() |
| Map | Three.js | ShaderToy |
![]() |
![]() |
![]() |
| Sheet Music | Wiki Explorer | Cohort Heatmap |
![]() |
![]() |
![]() |
| Scenario Modeler | Budget Allocator | Customer Segmentation |
![]() |
![]() |
![]() |
| System Monitor | Transcript | Video Resource |
![]() |
![]() |
|
| PDF Server | QR Code (Python) |
![]() |
The same app built with different frameworks — pick your favorite! React · Vue · Svelte · Preact · Solid · Vanilla JS |
The examples/ directory contains additional demo apps showcasing real-world use cases.
To run all examples:
npm install
npm start
Then open http://localhost:8080/.