# MCP Apps vs A2UI (Agent to UI) Protocol

The map lists them as complementary: sites and agents commonly implement both.

[8 Present](/category/present/) [MCP Apps](/protocols/mcp-apps/) · [8 Present](/category/present/) [A2UI (Agent to UI) Protocol](/protocols/a2ui/)

|  | [MCP Apps](/protocols/mcp-apps/) MCP Apps | [A2UI (Agent to UI) Protocol](/protocols/a2ui/) A2UI |
| --- | --- | --- |
| Lifecycle step | 8 Present: Show a human the result | 8 Present: Show a human the result |
| Answers | How does an MCP tool deliver an interactive UI (chart, form, dashboard) that renders inline in a chat client? | How can an agent describe and stream a framework-neutral, declarative UI to a renderer? |
| Governed by | modelcontextprotocol GitHub org (ext-apps sub-project); same umbrella as core MCP, which is now stewarded by the Agentic AI Foundation / Linux Foundation per this site's existing 'mcp' record | a2ui-project GitHub organisation (moved from google/A2UI) |
| Status (issuer's words) | Active extension to MCP; own repo describes it as extending 'the Model Context Protocol by letting tools declare UI resources' | Early stage public preview: v0.9.1 is the 'Current' production release, v1.0 is a release 'Candidate', v0.8 is legacy |
| Version | v2.0.3 (2026-09-25) | v1.0 (Candidate); v0.9.1 (Current) (2026-06-08) |
| Form / transport | endpoint | document format |
| Found at | ui://<resource-id> (declared per-tool, not a fixed site-wide path) | No fixed well-known path; renderer and agent capabilities (supported catalogs, custom components) are exchanged via transport-specific handshakes, e.g. A2A Agent Cards or MCP initialization metadata |
| Implementation | multi-implementation | multi-implementation |
| Evidence | 4 verified | 4 verified, 1 reported |
| Primary use case | Render agent output as a user interface | Render agent output as a user interface |
| Last verified | 2026-10-23 (current) | 2026-10-23 (current) |
| Specification | [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) | [https://github.com/a2ui-project/A2UI](https://github.com/a2ui-project/A2UI) |

## When to use which

- Choose MCP Apps when your question is “How does an MCP tool deliver an interactive UI (chart, form, dashboard) that renders inline in a chat client?” and you accept its maturity: status "Active extension to MCP; own repo describes it as extending 'the Model Context Protocol by letting tools declare UI resources'", implementation multi-implementation.
- Choose A2UI (Agent to UI) Protocol when your question is “How can an agent describe and stream a framework-neutral, declarative UI to a renderer?” and you accept its maturity: status "Early stage public preview: v0.9.1 is the 'Current' production release, v1.0 is a release 'Candidate', v0.8 is legacy", implementation multi-implementation.

Guidance is derived from the two records (question, status, implementation, prerequisites, pairings), not from opinion. Each record's page carries its numbered references.

## Read the full articles

- [MCP Apps](/protocols/mcp-apps/): How does an MCP tool deliver an interactive UI (chart, form, dashboard) that renders inline in a chat client?
- [A2UI (Agent to UI) Protocol](/protocols/a2ui/): How can an agent describe and stream a framework-neutral, declarative UI to a renderer?

Ask the MCP server to compare any two: the compare-protocols prompt, or get on both ids. [Connect](/connect/).

[mcp-apps.json](/data/protocols/mcp-apps.json) · [a2ui.json](/data/protocols/a2ui.json) · [Markdown](/compare/mcp-apps-vs-a2ui/index.md)
