用途:当用户要求创建 MCP App、为 MCP 工具添加 UI、构建交互式 MCP View,或需要 MCP Apps 指导时使用。MCP App 由两部分组成:工具(由 LLM/宿主调用并返回数据)与资源(提供打包的 HTML UI),工具通过 _meta.ui.resourceUri 关联资源。
主要能力:提供框架选择建议(React 有 useApp hook;Vanilla JS 手动生命周期;Vue/Svelte/Preact/Solid 手动生命周期);支持在现有 MCP 服务器中导入 registerAppTool、registerAppResource 并注册工具与资源,或新建服务器并配置 stdio/HTTP 传输与 vite-plugin-singlefile 构建;提供基础模板与高级示例(流式部分输入、callServerTool、轮询、二进制资源、ontoolinput、ontoolinputpartial、updateModelContext、sendMessage、参考宿主 AppBridge)。
使用方式:克隆 SDK 仓库获取示例与 API 文档:git clone --branch "v$(npm view @modelcontextprotocol/ext-apps version)" --depth 1 https://github.com/modelcontextprotocol/ext-apps.git /tmp/mcp-ext-apps。安装依赖用 npm install @modelcontextprotocol/ext-apps @modelcontextprotocol/sdk zod;TypeScript 服务器用 npm install -D tsx,脚本 "serve": "tsx server.ts"。所有处理器必须在 app.connect() 之前注册。工具可见性通过 _meta.ui.visibility 控制(model、app)。样式集成可用 applyDocumentTheme、applyHostStyleVariables、applyHostFonts 或 React 的 useHostStyles,并使用 var(--*) 变量;需处理 safeAreaInsets;大输入可用 ontoolinputpartial 做渐进渲染;可用 IntersectionObserver 在视图不可见时暂停动画/轮询;全屏用 app.requestDisplayMode()。测试可用 basic-host 示例,SERVERS 配置服务器 URL 数组,默认 http://localhost:3001/mcp,打开 http://localhost:8080;调试用 app.sendLog。
限制与注意:必须使用 vite-plugin-singlefile 打包;工具与资源都要注册且需 resourceUri 链接;忽略安全区、无文本回退、硬编码样式、大输入不流式均为常见错误。Golang/Rust 需先确认框架。具体收费、价格、平台与效果资料暂未提供。