- TypeScript 76.4%
- MDX 19.3%
- JavaScript 4.3%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
1. video-resource-server: Add missing server-utils.ts and fix import path - Was importing from non-existent ../shared/server-utils.js - Now correctly imports from ./src/server-utils.js 2. basic-host: Be resilient to individual server connection failures - Use Promise.allSettled instead of Promise.all - Failed connections are logged as warnings but don't crash the UI - Only throws if ALL servers fail to connect 3. threejs-server: Add id to canvas for reliable screenshot masking - Added id="threejs-canvas" to the canvas element - Updated e2e test masks to use #threejs-canvas and .threejs-container - Fixes flaky Three.js screenshot comparisons in CI 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-authored-by: Claude <noreply@anthropic.com> |
||
| .github/workflows | ||
| .husky | ||
| docs | ||
| examples | ||
| scripts | ||
| specification/draft | ||
| src | ||
| tests/e2e | ||
| .gitattributes | ||
| .gitignore | ||
| .prettierignore | ||
| .prettierrc.json | ||
| build.bun.ts | ||
| CONTRIBUTING.md | ||
| LICENSE | ||
| package-lock.json | ||
| package.json | ||
| playwright.config.ts | ||
| README.md | ||
| tsconfig.json | ||
| typedoc.json | ||
@modelcontextprotocol/ext-apps
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.
Overview
This SDK serves two audiences:
App Developers
Build interactive UIs that run inside MCP-enabled chat clients.
- SDK for Apps:
@modelcontextprotocol/ext-apps— API Docs - React hooks:
@modelcontextprotocol/ext-apps/react— API Docs
Host Developers
Embed and communicate with MCP Apps in your chat application.
- SDK for Hosts:
@modelcontextprotocol/ext-apps/app-bridge— API Docs
There'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.
Installation
npm install -S @modelcontextprotocol/ext-apps
Or edit your package.json manually:
{
"dependencies": {
"@modelcontextprotocol/ext-apps": "^0.0.1"
}
}
Examples
Start with these foundational examples to learn the SDK:
examples/basic-server-vanillajs— MCP server + MCP App using vanilla JSexamples/basic-server-react— MCP server + MCP App using Reactexamples/basic-server-vue— MCP server + MCP App using Vueexamples/basic-server-svelte— MCP server + MCP App using Svelteexamples/basic-server-preact— MCP server + MCP App using Preactexamples/basic-server-solid— MCP server + MCP App using Solidexamples/basic-host— MCP host application supporting MCP Apps
The examples/ directory contains additional demo apps showcasing real-world use cases.
To run all examples together:
npm install
npm start
Then open http://localhost:8080/.