跳到正文
本页内容

A2UI 与 MCP Apps 集成

将原生 A2UI Surface、MCP 资源与沙盒 MCP Apps 组合起来的三种官方架构模式。

更新: 2026/8/6 审校: HiA2UI 编辑团队 A2UI v0.9.1 生产指导

A2UI 与 MCP Apps 集成

A2UI 与 MCP Apps 不是非此即彼。MCP 负责工具和资源连接,A2UI 描述由宿主原生渲染的 UI 意图,MCP Apps 则把高度定制的 Web 体验放进沙盒。真实架构可以单独使用,也可以组合。

原生组件 Surface 与沙盒 Web 应用通过受控 MCP 数据桥连接的架构图

模式一:通过 MCP 传输 A2UI

MCP Server 使用嵌入资源返回 A2UI:

  • MIME:application/a2ui+json
  • URI:a2ui://...
  • 静态负载使用 resources/read,带参数的动态负载使用 tools/call

当表单、卡片、表格、图表或审批步骤能够由宿主可信 Catalog 组合时,应选择该模式。宿主保留原生样式、无障碍能力和组件级策略控制。

模式二:在 A2UI 中承载 MCP App

A2UI Catalog 暴露一个经过审查、能够托管 MCP App 的 Wrapper 组件。外围流程继续使用原生 A2UI,复杂画布、游戏、编辑器或遗留模块放进 iframe。

适合“多数流程原生,单个模块需要任意客户端逻辑”的场景。Wrapper 属于高风险能力,应设置显式白名单、严格 sandbox、窄化 Bridge API,并显示可信来源。

模式三:在 MCP App 中运行 A2UI

MCP App 自带 A2UI Renderer,并在自己的沙盒中挂载生成式 Surface。它可以让只支持 MCP Apps、没有原生 A2UI Renderer 的宿主获得生成式 UI。

这是兼容桥梁,不等同于宿主原生集成:最终无障碍树、样式和运行时仍在 iframe 内。

选型表

需求推荐模式
沿用宿主设计系统和标准工作流控件A2UI over MCP
原生流程中嵌入一个复杂隔离模块MCP App inside A2UI
现有宿主只支持 MCP AppsA2UI inside MCP App
需要完整对话上下文驱动开放式生成通过 A2A 或 AG-UI 等 Agent Transport 传输 A2UI

安全边界

声明式不代表自动安全。必须校验消息、限制 Catalog、净化 URL 属性、限制组件树规模并记录操作。MCP Apps 还要控制 sandbox、Origin、资源完整性、Bridge 消息 Schema 和用户可见来源。详见生产安全清单

官方资料