{"name":"ext-apps: Standard for UIs Embedded in AI Chatbots with MCP Protocol","description":"MCP Apps provides a standardized way to deliver interactive UIs from MCP servers, rendering inline in compliant chat clients like Claude and ChatGPT. This repository contains the official specification and SDK for building these interactive UIs. It enables developers to create rich user experiences, such as charts, forms, and dashboards, directly within AI chatbot conversations.","github":"https://github.com/modelcontextprotocol/ext-apps","url":"https://osrepos.com/repo/modelcontextprotocol-ext-apps","source":"osrepos.com","sourceDescription":"This repository profile is provided by osrepos.com, an open source repository discovery platform.","repositoryProfile":"https://osrepos.com/repo/modelcontextprotocol-ext-apps","generatedFor":"open source discovery and AI-assisted research","markdown":"https://osrepos.com/repo/modelcontextprotocol-ext-apps.md","json":"https://osrepos.com/repo/modelcontextprotocol-ext-apps.json","topics":["ai","apps","mcp","chatbot-ui","sdk","typescript","ui-framework","protocol"],"keywords":["ai","apps","mcp","chatbot-ui","sdk","typescript","ui-framework","protocol"],"stars":null,"summary":"MCP Apps provides a standardized way to deliver interactive UIs from MCP servers, rendering inline in compliant chat clients like Claude and ChatGPT. This repository contains the official specification and SDK for building these interactive UIs. It enables developers to create rich user experiences, such as charts, forms, and dashboards, directly within AI chatbot conversations.","content":"## Introduction\n\nThe `ext-apps` repository hosts the official specification and SDK for the Model Context Protocol (MCP) Apps. This protocol establishes a standard for embedding interactive user interfaces (UIs) directly within AI chatbot clients, served by MCP servers. It allows developers to build rich, dynamic UIs, such as charts, forms, and dashboards, that render seamlessly within conversational AI experiences like Claude and ChatGPT.\n\nMCP Apps extend the core Model Context Protocol, enabling tools to declare UI resources. This means your AI tools can go beyond returning text or structured data, offering a fully interactive experience to users directly within their chat client.\n\n## Installation\n\nGetting started with MCP Apps is straightforward. You can install the SDK via npm:\n\nbash\nnpm install -S @modelcontextprotocol/ext-apps\n\n\nFor a comprehensive guide, refer to the [Quickstart Guide](https://apps.extensions.modelcontextprotocol.io/api/documents/Quickstart.html).\n\nThe repository also ships with four [Agent Skills](https://agentskills.io/) to accelerate development: `create-mcp-app`, `migrate-oai-app`, `add-app-to-server`, and `convert-web-app`. These skills can be installed in clients like Claude Code:\n\n\n/plugin marketplace add modelcontextprotocol/ext-apps\n/plugin install mcp-apps@modelcontextprotocol-ext-apps\n\n\n## Examples\n\nThe `examples/` directory showcases various real-world use cases and starter templates for MCP Apps. Some notable examples include:\n\n*   **Map**: An interactive 3D globe viewer using CesiumJS.\n*   **Three.js**: An interactive 3D scene renderer.\n*   **Sheet Music**: Converts ABC notation to sheet music.\n*   **PDF Server**: An interactive PDF viewer with chunked loading.\n*   **Starter Templates**: Basic apps built with popular frameworks like React, Vue, Svelte, Preact, Solid, and Vanilla JS.\n\nYou can run all examples locally using the `basic-host` reference implementation:\n\nbash\ngit clone https://github.com/modelcontextprotocol/ext-apps.git\ncd ext-apps\nnpm install\nnpm start\n\n\nThen open `http://localhost:8080/` in your browser.\n\n## Why Use MCP Apps?\n\nWhile traditional MCP tools are excellent for returning text and structured data, they fall short when interactive UIs are required. MCP Apps fill this gap by providing a standardized method to deliver interactive UIs from MCP servers. These UIs render inline within the conversation, maintaining context across any compliant host.\n\nThe process involves:\n1.  **Tool definition**: Your tool declares a `ui://` resource containing its HTML interface.\n2.  **Tool call**: The Large Language Model (LLM) calls the tool on your server.\n3.  **Host renders**: The host fetches the resource and displays it in a sandboxed iframe.\n4.  **Bidirectional communication**: The host passes tool data to the UI via notifications, and the UI can call other tools through the host.\n\nThis approach allows for powerful integrations, transforming AI chatbots into platforms for rich, interactive applications.\n\n## Links\n\n*   **GitHub Repository**: [https://github.com/modelcontextprotocol/ext-apps](https://github.com/modelcontextprotocol/ext-apps)\n*   **Quickstart Guide**: [https://apps.extensions.modelcontextprotocol.io/api/documents/Quickstart.html](https://apps.extensions.modelcontextprotocol.io/api/documents/Quickstart.html)\n*   **API Documentation**: [https://apps.extensions.modelcontextprotocol.io/api/](https://apps.extensions.modelcontextprotocol.io/api/)\n*   **Specification (2026-01-26)**: [https://github.com/modelcontextprotocol/ext-apps/blob/main/specification/2026-01-26/apps.mdx](https://github.com/modelcontextprotocol/ext-apps/blob/main/specification/2026-01-26/apps.mdx)","metrics":{"detailViews":1,"githubClicks":0},"dates":{"published":null,"modified":"2026-08-06T15:06:34.000Z"}}