应用
构建交互式 UI 小部件,让 AI 主机与聊天内容并排渲染——以 Vue SFC 编写,作为 MCP UI 资源提供。

什么是 MCP 应用?

MCP 应用是由 MCP 工具返回的 交互式 HTML 小部件,并由兼容的主机以内联方式渲染。你的工具不会流式返回文本,而是提供一个用户可以阅读、滚动、筛选和点击的小型 UI——通过一个带类型的消息桥接与服务器重新连接。

它们遵循 MCP UI 提案(SEP-1865):工具返回一个由 ui:// 引用的 text/html;profile=mcp-app 资源,主机将其加载到一个沙箱化的 iframe 中,然后 iframe 通过 postMessage 进行回传通信。

@nuxtjs/mcp-toolkit 让这种编写体验就像在写一个普通的 Nuxt 页面:

  • 每个应用在 app/mcp/ 中对应一个 Vue SFC
  • <script setup> 中的 defineMcpApp 宏声明工具、schema 和服务器处理程序。
  • useMcpApp() 可组合函数为你提供响应式数据、主机上下文,以及到主机的类型化桥接。
  • 该工具包会在构建时将 SFC 打包为一个自包含的 HTML 文件,并通过你的 MCP 端点提供它。

搭建一个新的 MCP 应用(Vue SFC)

进一步了解

MCP 应用内部机制

构建流水线、主机桥接协议、安全模型以及高级组合模式。

多处理程序组织

通过子文件夹或 attachTo 将应用路由到专用的 MCP 端点(例如 /mcp/finder)。

验证客户端

使用与工具相同的模式,隐藏匿名调用者对应用的访问。

本节其余部分假定你已经熟悉 工具(Zod、处理程序),并且已经阅读了 连接,了解开发和生产环境中的 MCP URL。