docs: standalone mcp apps and apps extension (#6791)

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
This commit is contained in:
dianed-square
2026-02-12 08:25:35 -08:00
committed by GitHub
parent b90484297c
commit af15242b57
7 changed files with 160 additions and 6 deletions
@@ -33,7 +33,7 @@ import VideoCarousel from '@site/src/components/VideoCarousel';
link="/docs/tutorials/building-mcp-apps"
/>
<Card
title="MCP-UI Extensions"
title="Using MCP Apps and MCP-UI"
description="goose transforms text-based responses into engaging graphical and interactive user experiences."
link="/docs/guides/interactive-chat/mcp-ui"
/>
@@ -48,6 +48,11 @@ import VideoCarousel from '@site/src/components/VideoCarousel';
<div className={styles.categorySection}>
<h2 className={styles.categoryTitle}>📝 Featured Blog Posts</h2>
<div className={styles.cardGrid}>
<Card
title="From MCP-UI to MCP Apps: Evolving Interactive Agent UIs"
description="A practical migration guide to MCP Apps: the 4 key changes, what broke, and why this shift matters."
link="/blog/2026/01/22/mcp-ui-to-mcp-apps"
/>
<Card
title="goose Lands MCP Apps"
description="goose ships early support for the draft MCP Apps specification, aligning with the emerging standard for interactive UIs."
@@ -87,6 +92,13 @@ import VideoCarousel from '@site/src/components/VideoCarousel';
<VideoCarousel
id="more-videos"
videos={[
{
type: 'iframe',
src: 'https://youtube.com/embed/QcojQ3Fwqsw',
title: 'What are MCP Apps?',
description: 'Why MCP Apps are different from MCP-UI and what makes them portable, secure, and standardized',
duration: '1:53'
},
{
type: 'iframe',
src: 'https://youtube.com/embed/Kxj-vFBO_9U',
@@ -13,12 +13,49 @@ import { PanelLeft } from 'lucide-react';
# Using MCP Apps and MCP-UI
Extensions built with MCP Apps or MCP-UI allow goose Desktop to provide interactive and engaging user experiences. Imagine using a graphical, clickable UI instead of reading text responses and typing all your prompts. These extensions return content that goose can render as embedded UI elements for rich, dynamic, and streamlined interactions.
Extensions built with MCP Apps or MCP-UI allow goose Desktop to provide interactive and engaging user experiences. Instead of reading text responses and typing prompts, you can interact with a graphical and clickable UI.
:::info MCP Apps is the official specification
[MCP Apps](/docs/tutorials/building-mcp-apps) is now the official MCP specification for interactive UIs. MCP-UI extensions still work in goose, but MCP Apps is the recommended path for new extensions.
:::
:::warning Experimental Features
The features described in this topic are experimental and in active development. Behavior and support may change in future releases.
:::
## MCP Apps
MCP Apps bring interactive interfaces to goose through the official [MCP Apps specification](https://github.com/modelcontextprotocol/ext-apps). Depending on the extension, apps can be launched in standalone, sandboxed windows or embedded in your chat window.
### Launching Apps in Standalone Windows
Some MCP Apps can be launched in their own windows, allowing you to jump straight to the interface without sending messages to goose.
1. Click the <PanelLeft className="inline" size={16} /> button in the top-left to open the sidebar
2. Click `Apps` in the sidebar
3. Browse your available MCP Apps
4. Click `Launch` to launch an app in a new window
:::info Apps Extension
To see the `Apps` page in the sidebar, the [Apps extension](/docs/mcp/apps-mcp) must be enabled from the `Extensions` page. You can also use it to create custom standalone apps.
:::
The `Apps` page displays custom HTML apps you created using the Apps extension, imported HTML apps, and apps from your enabled MCP Apps extensions. The app interface lets you click buttons, fill forms, or use other controls. Apps can call tools and read resources through MCP (if enabled through CORS), but cannot communicate with goose (e.g. via chat).
#### Import an HTML App
Import apps that were created with the Apps extension and shared with you.
1. Click the <PanelLeft className="inline" size={16} /> button in the top-left to open the sidebar
2. Click `Apps` in the sidebar
3. Click `Import App`, browse to the app's `.html` file on your file system, and click `Open`
### Using Apps in Chat Windows
Some MCP Apps render directly in your conversation when goose calls a tool that returns UI. The interactive interface appears inline with the chat, letting you make selections, fill forms, or trigger actions without leaving the conversation flow.
If needed, you can just ask goose whether the UI can be loaded in the chat window.
<div style={{ width: '100%', maxWidth: '800px', margin: '0 auto' }}>
<video
controls
@@ -34,7 +71,11 @@ Extensions built with MCP Apps or MCP-UI allow goose Desktop to provide interact
</video>
</div>
## Try It Out
## MCP-UI
MCP-UI is an earlier specification for interactive UIs that renders content embedded in your chat. While MCP Apps is now the recommended approach, MCP-UI extensions continue to work in goose.
### Try It Out
See how interactive responses work in goose. For this exercise, we'll add an extension that connects to [MCP-UI Demos](https://mcp-aharvard.netlify.app/) provided by Andrew Harvard.
@@ -78,4 +119,5 @@ Try out other demos:
Add interactivity to your own extensions:
- [Building MCP Apps](/docs/tutorials/building-mcp-apps) - Step-by-step tutorial (recommended)
- [MCP-UI Documentation](https://mcpui.dev/guide/introduction) - MCP-UI specification
- [MCP Apps SDK and Specification](https://modelcontextprotocol.github.io/ext-apps/api/)
- [MCP Apps SDK Guide](https://mcpui.dev/guide/introduction)