[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"portal-settings:stajic:zh":3,"public-menus:all":38,"post:mcp-vs-a2a-vs-ucp-vs-ap2-vs-a2ui-the-agent-protocol-stack-explained:zh":205,"related:post:mcp-vs-a2a-vs-ucp-vs-ap2-vs-a2ui-the-agent-protocol-stack-explained:zh:1":1828},{"statusCode":4,"data":5,"message":37},200,{"tenantId":6,"lang":7,"defaultLang":8,"siteUrl":9,"contactEmail":10,"brandName":11,"logoUrl":12,"siteName":11,"siteDescription":13,"ogImage":10,"robotsIndex":14,"socialLinks":10,"reservedSlugs":10,"seoPolicy":15},"stajic","zh","de","https:\u002F\u002Fstajic.de",null,"Stajic Platform","\u002FLogo_Planet.svg","Stajic Portal",true,{"branding":16,"relatedContent":17,"crossDomainLinks":18},{"logoUrl":12},{"enabled":14},[19,22,25,28,31,34],{"url":20,"label":21,"isActive":14,"showInFooter":14,"includeInSameAs":14},"https:\u002F\u002Ffigure.rocks","figure.rocks",{"url":23,"label":24,"isActive":14,"showInFooter":14,"includeInSameAs":14},"https:\u002F\u002Floving.rocks","loving.rocks",{"url":26,"label":27,"isActive":14,"showInFooter":14,"includeInSameAs":14},"https:\u002F\u002Fbazify.com","bazify.com",{"url":29,"label":30,"isActive":14,"showInFooter":14,"includeInSameAs":14},"https:\u002F\u002Fbazify.de","bazify.de",{"url":32,"label":33,"isActive":14,"showInFooter":14,"includeInSameAs":14},"https:\u002F\u002Fbazify.at","bazify.at",{"url":35,"label":36,"isActive":14,"showInFooter":14,"includeInSameAs":14},"https:\u002F\u002Fbazify.ba","bazify.ba","Portal settings resolved",[39,45],{"id":40,"name":41,"location":42,"isActive":14,"isDefault":43,"items":44},1,"main-navigation","header",false,[],{"id":46,"name":47,"location":48,"isActive":14,"isDefault":14,"items":49},4,"main-menu","sidebar",[50,66,79,93,103,118,133],{"id":51,"title":52,"url":60,"target":61,"icon":62,"isActive":14,"type":63,"productId":10,"categoryId":10,"shopCategoryId":10,"articleId":10,"pageId":64,"portfolioId":10,"children":65},"item-18",{"de":53,"en":54,"es":55,"fr":56,"it":54,"ru":57,"sr":58,"zh":59},"Startseite","Home","Inicio","Accueil","Главная","Почетна","首页","\u002Ffull-stack-web-developer-munich-performance-seo-and-maintainable-builds","_self","i-lucide-home","page",111,[],{"id":67,"title":68,"url":75,"target":61,"icon":76,"isActive":14,"type":63,"productId":10,"categoryId":10,"shopCategoryId":10,"articleId":10,"pageId":77,"portfolioId":10,"children":78},"item-22",{"de":69,"en":69,"es":70,"fr":69,"it":71,"ru":72,"sr":73,"zh":74},"Vision","Visión","Visione","Видение","Визија","想象","\u002Fueber-uns-webdesign-muenchen-webaplikation","i-lucide-eye",113,[],{"id":80,"title":81,"url":89,"target":61,"icon":90,"isActive":14,"type":63,"productId":10,"categoryId":10,"shopCategoryId":10,"articleId":10,"pageId":91,"portfolioId":10,"children":92},"item-19",{"de":82,"en":83,"es":84,"fr":83,"it":85,"ru":86,"sr":87,"zh":88},"Leistungen","Services","Servicios","Servizi","Услуги","Услуге","服务","\u002Fservices-dienstleistungen-muenchen","i-lucide-wrench",116,[],{"id":94,"title":95,"url":99,"target":61,"icon":100,"isActive":14,"type":63,"productId":10,"categoryId":10,"shopCategoryId":10,"articleId":10,"pageId":101,"portfolioId":10,"children":102},"item-23",{"de":96,"en":96,"es":96,"fr":96,"it":96,"ru":97,"sr":97,"zh":98},"Blog","Блог","博客","\u002Fblog","i-lucide-book-open",112,[],{"id":104,"title":105,"url":114,"target":61,"icon":115,"isActive":14,"type":63,"productId":10,"categoryId":10,"shopCategoryId":10,"articleId":10,"pageId":116,"portfolioId":10,"children":117},"item-32",{"de":106,"en":107,"es":108,"fr":109,"it":110,"ru":111,"sr":112,"zh":113},"Neue Technologien","New Technologies","Nuevas tecnologías","Nouvelles technologies","Nuove tecnologie","Новые технологии","Нове технологије","新技术！","\u002Fneue-webtechnologien","i-lucide-sparkles",122,[],{"id":119,"title":120,"url":129,"target":61,"icon":130,"isActive":14,"type":63,"productId":10,"categoryId":10,"shopCategoryId":10,"articleId":10,"pageId":131,"portfolioId":10,"children":132},"item-20",{"de":121,"en":122,"es":123,"fr":124,"it":125,"ru":126,"sr":127,"zh":128},"Kontakt","Contact us!","Contacto","Contact","Contatto","Контакт","Контактирајте нас","联系我们！","\u002Fcontact","i-lucide-mail",115,[],{"id":134,"title":135,"url":144,"target":61,"icon":145,"isActive":14,"type":63,"productId":10,"categoryId":10,"shopCategoryId":10,"articleId":10,"pageId":146,"portfolioId":10,"children":147},"item-21",{"de":136,"en":137,"es":138,"fr":139,"it":140,"ru":141,"sr":142,"zh":143},"Unsere Arbeit","Our Work","Nuestro trabajo","Nos réalisations","I nostri lavori","Наши работы","Наши радови","文件夹","\u002Fportfolio","i-lucide-briefcase",114,[148,161,175,181,193],{"id":149,"title":150,"url":144,"target":61,"icon":159,"isActive":14,"type":63,"productId":10,"categoryId":10,"shopCategoryId":10,"articleId":10,"pageId":146,"portfolioId":10,"children":160},"item-24",{"de":151,"en":152,"es":153,"fr":154,"it":155,"ru":156,"sr":157,"zh":158},"Alle Projekte","All Projects","Todos los proyectos","Tous les projets","Tutti i progetti","Все проекты","Сви пројекти","所有项目","i-lucide-grid-3x3",[],{"id":162,"title":163,"url":171,"target":61,"icon":172,"isActive":14,"type":173,"productId":10,"categoryId":10,"shopCategoryId":10,"articleId":10,"pageId":10,"portfolioId":10,"children":174},"item-29",{"de":164,"en":165,"es":166,"fr":167,"it":168,"ru":169,"sr":170,"zh":143},"Local Roots, Global Reach","Local Roots - Global Reach","Empresa local ","Entreprise locale","Azienda locale","Местная компания","Локално предузеће глобално тржиште","\u002Fportfolio\u002Flocal-roots-global-reach-communication-media-systems-for-modern-business","i-lucide-folder","custom",[],{"id":176,"title":177,"url":179,"target":61,"icon":172,"isActive":14,"type":173,"productId":10,"categoryId":10,"shopCategoryId":10,"articleId":10,"pageId":10,"portfolioId":10,"children":180},"item-28",{"de":178,"en":178,"es":178,"fr":178,"it":178,"ru":178,"sr":178,"zh":178},"Solr Suggester","\u002Fportfolio\u002Fsolr-fuzzy-suggester-und-solr-infix-suggester-abfrage-ueber-ajax-und-filterung",[],{"id":182,"title":183,"url":191,"target":61,"icon":172,"isActive":14,"type":173,"productId":10,"categoryId":10,"shopCategoryId":10,"articleId":10,"pageId":10,"portfolioId":10,"children":192},"item-27",{"de":184,"en":185,"es":186,"fr":187,"it":188,"ru":189,"sr":190,"zh":185},"Firmenwebseite SEO","Company Website SEO","Sitio web corporativo SEO","Site web d’entreprise SEO","Sito web aziendale SEO","Корпоративный сайт SEO","Пословна веб-страница SEO","\u002Fportfolio\u002Fseo-sem-branding-mobile-webseite-muenchen",[],{"id":194,"title":195,"url":203,"target":61,"icon":172,"isActive":14,"type":173,"productId":10,"categoryId":10,"shopCategoryId":10,"articleId":10,"pageId":10,"portfolioId":10,"children":204},"item-31",{"de":196,"en":197,"es":198,"fr":199,"it":200,"ru":201,"sr":202,"zh":197},"Digitalisierungsportal","Digitalization Portal","Portal de digitalización","Portail de numérisation","Portale di digitalizzazione","Портал цифровизации","Портал за дигитализацију","\u002Fportfolio\u002Fdigitalisierungsportal-archiv-museum-bibliothek-ead-lido-mets-mods",[],{"statusCode":4,"data":206,"message":1827},{"id":207,"title":208,"slug":209,"content":210,"contentJson":211,"excerpt":896,"featuredImage":897,"featuredImageAlt":898,"featuredImageCaption":10,"featuredImageTitle":10,"featuredImageCopyright":10,"featuredImageAuthor":10,"featuredImageSourceUrl":10,"featuredImageLicense":10,"featuredImageIsAiGenerated":43,"status":899,"publishedAt":900,"createdAt":901,"updatedAt":902,"seoLocalePaths":903,"categories":912,"author":925,"translations":930},"476","MCP vs A2A vs UCP vs AP2 vs A2UI：智能体协议栈详解","mcp-vs-a2a-vs-ucp-vs-ap2-vs-a2ui-the-agent-protocol-stack-explained","\u003Cnav class=\"editorjs-toc\" data-editorjs-toc=\"true\" aria-label=\"目录\">\u003Cstrong class=\"editorjs-toc__title\">目录\u003C\u002Fstrong>\u003Col class=\"editorjs-toc__list editorjs-toc__list--depth-0\">\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-6\" class=\"editorjs-toc__link\">核心错误：比较位于不同边界的协议\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-9\" class=\"editorjs-toc__link\">协议责任栈\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-12\" class=\"editorjs-toc__link\">1. MCP：将智能体连接到能力\u003C\u002Fa>\u003Col class=\"editorjs-toc__list editorjs-toc__list--depth-1\">\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-15\" class=\"editorjs-toc__link\">在以下情况使用 MCP\u003C\u002Fa>\u003C\u002Fli>\u003C\u002Fol>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-18\" class=\"editorjs-toc__link\">2. A2A：连接独立智能体\u003C\u002Fa>\u003Col class=\"editorjs-toc__list editorjs-toc__list--depth-1\">\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-22\" class=\"editorjs-toc__link\">在以下情况下使用 A2A\u003C\u002Fa>\u003C\u002Fli>\u003C\u002Fol>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-24\" class=\"editorjs-toc__link\">MCP 与 A2A：垂直集成与水平协作\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-27\" class=\"editorjs-toc__link\">3. UCP：标准化代理商务\u003C\u002Fa>\u003Col class=\"editorjs-toc__list editorjs-toc__list--depth-1\">\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-31\" class=\"editorjs-toc__link\">在以下情况下使用 UCP\u003C\u002Fa>\u003C\u002Fli>\u003C\u002Fol>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-33\" class=\"editorjs-toc__link\">4. AP2：证明代理被允许消费\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-37\" class=\"editorjs-toc__link\">UCP 与 AP2：交易语义与授权\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-39\" class=\"editorjs-toc__link\">5. A2UI：让代理描述界面，而不拥有你的前端\u003C\u002Fa>\u003Col class=\"editorjs-toc__list editorjs-toc__list--depth-1\">\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-43\" class=\"editorjs-toc__link\">在以下情况使用 A2UI\u003C\u002Fa>\u003C\u002Fli>\u003C\u002Fol>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-45\" class=\"editorjs-toc__link\">协议选择测试\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-48\" class=\"editorjs-toc__link\">一个现实的多协议工作流\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-50\" class=\"editorjs-toc__link\">为什么一个通用代理协议不太可能取代所有协议\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-54\" class=\"editorjs-toc__link\">协议组合会产生新的故障模式\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-56\" class=\"editorjs-toc__link\">协议选择不能替代应用架构\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-60\" class=\"editorjs-toc__link\">什么会改变这个答案？\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-63\" class=\"editorjs-toc__link\">局限性\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-66\" class=\"editorjs-toc__link\">结论\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-69\" class=\"editorjs-toc__link\">常见问题\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-71\" class=\"editorjs-toc__link\">术语表\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-73\" class=\"editorjs-toc__link\">主要来源与延伸阅读\u003C\u002Fa>\u003C\u002Fli>\u003C\u002Fol>\u003C\u002Fnav>\n\u003Cp>AI 智能体协议正在迅速增多：MCP、A2A、UCP、AP2、A2UI 以及相关标准越来越频繁地出现在同一张架构图中。它们常被描述为相互竞争的协议。但在实践中，它们大多是在不同边界上解决不同的互操作性问题。真正有用的问题不是“哪个协议会胜出？”，而是“系统中的哪种关系需要被标准化？”\u003C\u002Fp>\n\u003Caside class=\"editorjs-callout editorjs-callout--info my-6 rounded-xl border p-5 border-blue-300 bg-blue-50 dark:border-blue-900 dark:bg-blue-950\u002F20\" role=\"note\">\u003Cstrong class=\"block mb-2 text-gray-900 dark:text-gray-100\">直接回答\u003C\u002Fstrong>\u003Cdiv class=\"text-gray-700 dark:text-gray-200\">&lt;strong&gt;MCP、A2A、UCP、AP2 和 A2UI 主要是互补关系，而不是替代关系。&lt;\u002Fstrong&gt; MCP 将 AI 应用连接到工具、数据和资源。A2A 将独立智能体彼此连接。UCP 标准化消费者界面、企业和支付生态之间的商业交互。AP2 为智能体主导的交易增加可验证的授权和支付意图。A2UI 让智能体能够描述交互式 UI，而无需发送任意应用代码。一个生产系统完全可以在同一工作流中合理地使用其中多个协议。\u003C\u002Fdiv>\u003C\u002Faside>\n\u003Caside class=\"editorjs-callout editorjs-callout--warning my-6 rounded-xl border p-5 border-amber-300 bg-amber-50 dark:border-amber-900 dark:bg-amber-950\u002F20\" role=\"note\">\u003Cstrong class=\"block mb-2 text-gray-900 dark:text-gray-100\">快速演进的标准\u003C\u002Fstrong>\u003Cdiv class=\"text-gray-700 dark:text-gray-200\">本文反映的是 &lt;strong&gt;2026 年 9 月 25 日&lt;\u002Fstrong&gt; 的协议格局。A2A 已达到 v1.0，MCP 当前的 TypeScript v2 系列实现了 2026-07-28 规范，UCP 已经加入了更新的 2026 协议版本，A2UI 也在持续演进。实施前请务必核实当前规范。\u003C\u002Fdiv>\u003C\u002Faside>\n\u003Caside class=\"editorjs-callout editorjs-callout--note my-6 rounded-xl border p-5 border-gray-300 bg-gray-50 dark:border-gray-700 dark:bg-gray-900\u002F40\" role=\"note\">\u003Cstrong class=\"block mb-2 text-gray-900 dark:text-gray-100\">本文使用的模型\u003C\u002Fstrong>\u003Cdiv class=\"text-gray-700 dark:text-gray-200\">下文的协议责任栈和协议选择测试是本文提出的实用架构模型。它们不是协议项目的官方术语。\u003C\u002Fdiv>\u003C\u002Faside>\n\u003Ch2 id=\"section-6\">核心错误：比较位于不同边界的协议\u003C\u002Fh2>\n\u003Cp>协议之所以有用，是因为两个独立实现的系统需要稳定的契约。只有当边界清晰时，这个契约才有意义。智能体与数据库对话，和智能体将工作委托给另一个智能体、购物者授权购买，或远程智能体请求原生应用渲染表单，所面临的互操作性问题并不相同。\u003C\u002Fp>\n\u003Cp>Google 2026 年的开发者指南明确将 MCP、A2A、UCP、AP2、A2UI 及相关 UI 协议呈现为一组互补标准的栈。同一个示例工作流可以同时使用其中多个协议：用工具处理库存，用远程智能体处理供应商，用商业协议处理下单，用支付授权处理支出，用 UI 协议处理交互。\u003C\u002Fp>\n\u003Ch2 id=\"section-9\">协议责任栈\u003C\u002Fh2>\n\u003Cdiv class=\"overflow-x-auto\">\u003Ctable class=\"w-full border-collapse\">\u003Cthead>\u003Ctr>\u003Cth class=\"border border-gray-300 px-4 py-2 text-left font-semibold\">协议\u003C\u002Fth>\u003Cth class=\"border border-gray-300 px-4 py-2 text-left font-semibold\">标准化哪种关系？\u003C\u002Fth>\u003Cth class=\"border border-gray-300 px-4 py-2 text-left font-semibold\">主要抽象\u003C\u002Fth>\u003Cth class=\"border border-gray-300 px-4 py-2 text-left font-semibold\">主要不用于\u003C\u002Fth>\u003C\u002Ftr>\u003C\u002Fthead>\u003Ctbody>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">MCP\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">AI 应用 ↔ 工具、资源和数据\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">工具、资源、提示词以及主机\u002F服务器能力交换\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">独立智能体协作或商业语义\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">A2A\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">智能体 ↔ 独立智能体\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">智能体发现、消息、任务、产物和长期协作\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">直接的数据库\u002F工具集成\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">UCP\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">消费者\u002F智能体界面 ↔ 商家商业系统\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">商品\u002F购物车\u002F结账\u002F履约\u002F订单能力\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">通用智能体通信\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">AP2\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">用户\u002F智能体意图 ↔ 支付授权\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">授权指令、审批约束和可审计的智能体主导支付权限\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">商品发现或通用结账传输\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">A2UI\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">智能体 ↔ 用户界面宿主\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">由可信原生组件渲染的声明式 UI 意图\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">任意远程前端代码或智能体到智能体的任务委托\u003C\u002Ftd>\u003C\u002Ftr>\u003C\u002Ftbody>\u003C\u002Ftable>\u003C\u002Fdiv>\n\u003Caside class=\"editorjs-callout editorjs-callout--success my-6 rounded-xl border p-5 border-emerald-300 bg-emerald-50 dark:border-emerald-900 dark:bg-emerald-950\u002F20\" role=\"note\">\u003Cstrong class=\"block mb-2 text-gray-900 dark:text-gray-100\">一个工作流可以使用全部五种协议\u003C\u002Fstrong>\u003Cdiv class=\"text-gray-700 dark:text-gray-200\">智能体可以使用 &lt;strong&gt;MCP&lt;\u002Fstrong&gt; 检查库存，使用 &lt;strong&gt;A2A&lt;\u002Fstrong&gt; 向供应商智能体询问可用性，使用 &lt;strong&gt;UCP&lt;\u002Fstrong&gt; 构建商业交易，使用 &lt;strong&gt;AP2&lt;\u002Fstrong&gt; 证明支出权限，并使用 &lt;strong&gt;A2UI&lt;\u002Fstrong&gt; 向用户渲染原生审批界面。\u003C\u002Fdiv>\u003C\u002Faside>\n\u003Ch2 id=\"section-12\">1. MCP：将智能体连接到能力\u003C\u002Fh2>\n\u003Cp>模型上下文协议（Model Context Protocol）是一项开放标准，用于将 AI 应用连接到工具、数据和可复用资源所在的外部系统。服务器暴露能力；MCP 主机连接到该服务器，并使这些能力可供模型或应用使用。\u003C\u002Fp>\n\u003Cp>当前的 MCP TypeScript v2 文档正是用这些术语描述该协议：服务器暴露工具、资源和提示词，而开发环境或自定义应用等主机连接到它们。这使得 MCP 主要是一种能力集成协议。\u003C\u002Fp>\n\u003Ch3 id=\"section-15\">在以下情况使用 MCP\u003C\u002Fh3>\n\u003Cul>\u003Cli>AI 应用需要对工具或 API 的标准化访问。\u003C\u002Fli>\u003Cli>你希望一个能力服务器能够与多个兼容的 AI 主机配合工作。\u003C\u002Fli>\u003Cli>你需要对数据或资源的结构化访问，而不必将每个集成硬编码到每个智能体中。\u003C\u002Fli>\u003Cli>外部系统是能力提供者，而不是自主的对等智能体。\u003C\u002Fli>\u003C\u002Ful>\n\u003Caside class=\"editorjs-callout editorjs-callout--warning my-6 rounded-xl border p-5 border-amber-300 bg-amber-50 dark:border-amber-900 dark:bg-amber-950\u002F20\" role=\"note\">\u003Cstrong class=\"block mb-2 text-gray-900 dark:text-gray-100\">MCP 并不自动等同于 A2A\u003C\u002Fstrong>\u003Cdiv class=\"text-gray-700 dark:text-gray-200\">MCP 服务器可以暴露强大的功能，但这并不会使它成为一个拥有自身任务生命周期、发现语义和不透明内部推理的独立智能体。工具调用和智能体协作是不同的契约。\u003C\u002Fdiv>\u003C\u002Faside>\n\u003Ch2 id=\"section-18\">2. A2A：连接独立智能体\u003C\u002Fh2>\n\u003Cp>Agent2Agent（A2A）专为独立且可能不透明的代理系统之间的通信而设计。其当前的 v1.0 规范侧重于能力发现、消息传递、任务、工件、多模态内容以及长时间运行的协作，而无需一个代理向另一个代理暴露其内部工具、记忆或实现。\u003C\u002Fp>\n\u003Cp>这种不透明性正是重要的边界。调用代理无需知道远程代理在内部使用的是 MCP、自定义工具、专有规划器、其他模型供应商还是人工升级。它需要的是一份用于发现能力和委派工作的契约。\u003C\u002Fp>\n\u003Cp>A2A v1.0 还标准化了版本协商，并围绕通用数据模型支持多种绑定。其发布的 Agent Card 机制为客户端提供了一个标准发现点，用于了解代理的能力、支持的协议、身份验证要求和技能。\u003C\u002Fp>\n\u003Ch3 id=\"section-22\">在以下情况下使用 A2A\u003C\u002Fh3>\n\u003Cul>\u003Cli>一个自主代理需要将工作委派给另一个自主代理。\u003C\u002Fli>\u003Cli>远程系统应保持不透明，隐藏于能力契约之后。\u003C\u002Fli>\u003Cli>任务可能是长时间运行的、异步的，或需要人工参与交互。\u003C\u002Fli>\u003Cli>代理使用不同的框架、语言、供应商或由不同组织构建。\u003C\u002Fli>\u003C\u002Ful>\n\u003Ch2 id=\"section-24\">MCP 与 A2A：垂直集成与水平协作\u003C\u002Fh2>\n\u003Csection class=\"editorjs-comparison my-6\">\u003Ch3 class=\"mb-3 text-lg font-semibold\">MCP 和 A2A 解决不同的互操作性问题\u003C\u002Fh3>\u003Cdiv class=\"overflow-x-auto\">\u003Ctable class=\"w-full border-collapse\">\u003Cthead>\u003Ctr>\u003Cth class=\"border border-gray-300 bg-gray-50 px-4 py-3 text-left dark:border-gray-700 dark:bg-gray-900\">\u003C\u002Fth>\u003Cth class=\"border border-gray-300 bg-gray-50 px-4 py-3 text-left font-semibold dark:border-gray-700 dark:bg-gray-900\">维度\u003C\u002Fth>\u003Cth class=\"border border-gray-300 bg-gray-50 px-4 py-3 text-left font-semibold dark:border-gray-700 dark:bg-gray-900\">MCP\u003C\u002Fth>\u003Cth class=\"border border-gray-300 bg-gray-50 px-4 py-3 text-left font-semibold dark:border-gray-700 dark:bg-gray-900\">A2A\u003C\u002Fth>\u003C\u002Ftr>\u003C\u002Fthead>\u003Ctbody>\u003Ctr>\u003Cth class=\"border border-gray-300 px-4 py-3 text-left font-semibold dark:border-gray-700\">关系\u003C\u002Fth>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Cth class=\"border border-gray-300 px-4 py-3 text-left font-semibold dark:border-gray-700\">抽象\u003C\u002Fth>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Cth class=\"border border-gray-300 px-4 py-3 text-left font-semibold dark:border-gray-700\">内部不透明性\u003C\u002Fth>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Cth class=\"border border-gray-300 px-4 py-3 text-left font-semibold dark:border-gray-700\">长时间运行的工作\u003C\u002Fth>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003C\u002Ftr>\u003C\u002Ftbody>\u003C\u002Ftable>\u003C\u002Fdiv>\u003C\u002Fsection>\n\u003Cp>A2A 项目本身现在将这种区别描述为水平与垂直：MCP 将代理连接到内部工具和数据库，而 A2A 则实现跨代理系统的点对点协作。\u003C\u002Fp>\n\u003Ch2 id=\"section-27\">3. UCP：标准化代理商务\u003C\u002Fh2>\n\u003Cp>通用商务协议（Universal Commerce Protocol）不是一种通用代理协议。它标准化了消费者界面、商家和支付提供商之间的商务流程。Google 的实现已经通过版本化配置文件和 API 支持购物车创建、结账、履约和订单生命周期等能力。\u003C\u002Fp>\n\u003Cp>商家可以在 \u002F.well-known\u002Fucp 下发布 UCP 配置文件，描述服务、协议版本和能力。这种发现模式很重要，因为代理界面不应为每个商家都需要定制的结账契约。\u003C\u002Fp>\n\u003Cp>UCP 也有意设计为可组合的。Google 的技术概述指出，它可以通过 API、A2A 和 MCP 集成，并与 AP2 兼容以实现代理支付授权。\u003C\u002Fp>\n\u003Ch3 id=\"section-31\">在以下情况下使用 UCP\u003C\u002Fh3>\n\u003Cul>\u003Cli>工作流涉及商家产品、购物车、结账、履约或订单生命周期。\u003C\u002Fli>\u003Cli>你正在构建一个应与代理购物体验配合使用的商家界面。\u003C\u002Fli>\u003Cli>集成需要商务特定的语义，而不是通用工具调用。\u003C\u002Fli>\u003Cli>你想要一份可与 MCP、A2A 和支付协议共存的互操作商务契约。\u003C\u002Fli>\u003C\u002Ful>\n\u003Ch2 id=\"section-33\">4. AP2：证明代理被允许消费\u003C\u002Fh2>\n\u003Cp>代理商务引入了一个普通结账流程不必以同样方式解决的问题：代理可能在人类没有实时点击最终按钮的情况下进行交易。代理支付协议（AP2）解决了代理主导支付的授权、真实性和问责问题。\u003C\u002Fp>\n\u003Cp>Google 的 2026 协议指南通过类型化授权来描述 AP2，这些授权捕获用户意图、支出约束和正在授权的具体交易。AP2 可以作为扩展与 UCP 一起工作：UCP 描述商务交易，而 AP2 提供代理有权执行支付的证据。\u003C\u002Fp>\n\u003Cp>这种区别很重要。结账协议可以告诉商家应该购买什么。但它本身并不能证明谁授权代理消费、在什么限额下、针对哪个商家、持续多长时间，或者最终购物车是否仍在该授权范围内。\u003C\u002Fp>\n\u003Ch2 id=\"section-37\">UCP 与 AP2：交易语义与授权\u003C\u002Fh2>\n\u003Cdiv class=\"overflow-x-auto\">\u003Ctable class=\"w-full border-collapse\">\u003Cthead>\u003Ctr>\u003Cth class=\"border border-gray-300 px-4 py-2 text-left font-semibold\">问题\u003C\u002Fth>\u003Cth class=\"border border-gray-300 px-4 py-2 text-left font-semibold\">UCP\u003C\u002Fth>\u003Cth class=\"border border-gray-300 px-4 py-2 text-left font-semibold\">AP2\u003C\u002Fth>\u003C\u002Ftr>\u003C\u002Fthead>\u003Ctbody>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">购买的是什么？\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">商务项目、购物车、结账与履约语义\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">引用已授权的交易上下文\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">谁可以授权？\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">不是协议的主要职责\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">明确的代理\u002F用户授权与委托模型\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">适用哪些支出约束？\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">商务流程可以包含总额与结账数据\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">授权护栏与意图限制\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">交易如何审计？\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">订单与商务生命周期\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">通过委托与收据的加密\u002F可验证授权轨迹\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">它们可以协同工作吗？\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">可以\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">可以——AP2 可以扩展代理式商务流程\u003C\u002Ftd>\u003C\u002Ftr>\u003C\u002Ftbody>\u003C\u002Ftable>\u003C\u002Fdiv>\n\u003Ch2 id=\"section-39\">5. A2UI：让代理描述界面，而不拥有你的前端\u003C\u002Fh2>\n\u003Cp>代理到用户界面（A2UI）解决了另一个边界问题：远程或本地代理如何向宿主应用传达丰富的交互界面。A2UI 不发送任意的 HTML、CSS 和 JavaScript，而是使用声明式数据，由宿主通过其自己受信任的组件目录进行渲染。\u003C\u002Fp>\n\u003Cp>这保留了宿主应用的设计系统和安全模型，同时仍然允许代理请求动态界面。A2UI v0.9 特别强调框架无关的 UI 意图以及跨 Web、移动端和其他客户端的流式更新。\u003C\u002Fp>\n\u003Cp>Google 后来的 A2UI + MCP Apps 工作也表明，这些 UI 模型不一定互斥。声明式原生 UI 和更丰富的嵌入式应用体验可以根据任务共存。\u003C\u002Fp>\n\u003Ch3 id=\"section-43\">在以下情况使用 A2UI\u003C\u002Fh3>\n\u003Cul>\u003Cli>远程代理需要请求表单、卡片、控件或其他交互式 UI。\u003C\u002Fli>\u003Cli>宿主应保留其原生组件、样式和安全边界。\u003C\u002Fli>\u003Cli>你不希望远程代理发布任意可执行的前端代码。\u003C\u002Fli>\u003Cli>同一代理定义的 UI 意图应能在不同的客户端框架中工作。\u003C\u002Fli>\u003C\u002Ful>\n\u003Ch2 id=\"section-45\">协议选择测试\u003C\u002Fh2>\n\u003Cp>不要从缩写开始。从需要互操作的关系开始。\u003C\u002Fp>\n\u003Csection class=\"editorjs-process my-6\">\u003Ch3 class=\"mb-3 text-lg font-semibold\">按边界选择协议\u003C\u002Fh3>\u003Cdiv class=\"grid grid-cols-1 md:grid-cols-2 xl:grid-cols-3 gap-4\">\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">1\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">1. 确定两个独立方\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">这是 AI 到工具、代理到代理、代理到商家、代理到支付授权，还是代理到用户界面？\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">2\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">2. 确定共享对象\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">契约是关于工具调用、任务、购物车、支付委托、工件还是 UI 描述？\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">3\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">3. 检查是否已存在领域协议\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">当问题是商务或授权时，优先使用商务或支付语义，而不是将所有内容编码为通用工具。\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">4\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">4. 保持本地内部事务本地化\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">如果远程方只需要 A2A 能力，不要将整个代理暴露为 MCP 工具，也不要让远程代理负责你的 UI 运行时。\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">5\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">5. 当工作流跨越边界时组合协议\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">一个工作流可以合理地跨越工具、代理、商务、支付和 UI 契约。\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">6\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">6. 独立地对每个契约进行版本控制\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">协议版本以不同的速度演进；不要将每个集成绑定到单一的整体应用版本。\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">7\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">7. 在每个边界保留授权\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">互操作性不能替代产品权限、工具授权、支付授权或数据访问策略。\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fsection>\n\u003Ch2 id=\"section-48\">一个现实的多协议工作流\u003C\u002Fh2>\n\u003Csection class=\"editorjs-process my-6\">\u003Ch3 class=\"mb-3 text-lg font-semibold\">示例：自主采购工作流\u003C\u002Fh3>\u003Cdiv class=\"grid grid-cols-1 md:grid-cols-2 xl:grid-cols-3 gap-4\">\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">1\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">1. 使用 MCP 检查内部库存\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">采购代理调用内部 MCP 服务器暴露的库存和预测能力。\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">2\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">2. 使用 A2A 发现供应商代理\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">代理读取供应商的 Agent Card，并委托一个可用性和交货时间任务。\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">3\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">3. 使用 UCP 协商商务对象\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">供应商或商家界面返回结构化的购物车、结账和履约信息。\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">4\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">4. 使用 AP2 检查支出授权\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">将购买与用户或组织的签名委托、商家约束和支出限额进行比较。\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">5\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">5. 通过 A2UI 请求批准\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">如果需要人工批准，代理发送声明式 UI 意图，宿主使用受信任的原生组件渲染批准体验。\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">6\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">6. 完成并审计\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">商务状态、支付授权、代理任务证据和应用审计记录在各自的边界内保持可追溯。\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fsection>\n\u003Ch2 id=\"section-50\">为什么一个通用代理协议不太可能取代所有协议\u003C\u002Fh2>\n\u003Cp>一个通用协议听起来更简单，直到它必须编码每个领域的语义。工具发现、长时间运行的代理协作、结账、支付授权和原生 UI 都有不同的生命周期、安全和正确性要求。\u003C\u002Fp>\n\u003Cp>Web 本身也是通过分层协议演进的，而不是为每个问题使用一种消息格式。新兴的代理堆栈似乎正朝着同一方向发展：通用的水平原语、专门的领域契约以及明确的发现\u002F版本控制。\u003C\u002Fp>\n\u003Cp>因此，架构挑战从“哪个协议胜出？”转变为协议如何在不重复身份、授权、状态和审计语义的情况下干净地组合。\u003C\u002Fp>\n\u003Ch2 id=\"section-54\">协议组合会产生新的故障模式\u003C\u002Fh2>\n\u003Cdiv class=\"overflow-x-auto\">\u003Ctable class=\"w-full border-collapse\">\u003Cthead>\u003Ctr>\u003Cth class=\"border border-gray-300 px-4 py-2 text-left font-semibold\">故障模式\u003C\u002Fth>\u003Cth class=\"border border-gray-300 px-4 py-2 text-left font-semibold\">会发生什么\u003C\u002Fth>\u003Cth class=\"border border-gray-300 px-4 py-2 text-left font-semibold\">架构控制\u003C\u002Fth>\u003C\u002Ftr>\u003C\u002Fthead>\u003Ctbody>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">权限泄漏\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">有效的工具或代理能力被当作执行业务操作的许可\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">保持产品授权独立于协议能力发现\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">身份不匹配\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">MCP 主机身份、A2A 代理身份和商务\u002F支付身份指向不同的主体\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">跨边界定义明确的主体映射\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">版本漂移\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">一个协议升级，而依赖的适配器仍假设旧语义\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">独立协商并固定协议版本\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">状态重复\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">相同的购物车、任务或审批状态被复制到多个协议层中\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">为每个领域对象定义一个权威所有者\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">审计碎片化\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">工具追踪、代理任务、结账和支付证据无法关联\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">跨协议边界携带关联 ID 和稳定的领域标识符\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">语义隧道\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">一切都作为不透明 JSON 被强制通过通用协议\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">在领域协议的语义能实质性提升正确性的地方使用领域协议\u003C\u002Ftd>\u003C\u002Ftr>\u003C\u002Ftbody>\u003C\u002Ftable>\u003C\u002Fdiv>\n\u003Ch2 id=\"section-56\">协议选择不能替代应用架构\u003C\u002Fh2>\n\u003Cp>开放标准降低了集成耦合，但它们并不决定你的领域模型、授权策略、事实来源、重试策略或验收标准。MCP 工具仍可能暴露错误的能力。A2A 代理仍可能返回糟糕的产物。UCP 结账仍可能包含过期的商家数据。AP2 授权仍可能被应用逻辑误用。\u003C\u002Fp>\n\u003Cp>将协议视为独立演进组件之间的契约。将领域事实和重要策略保留在拥有它们的应用层中，然后使用协议使边界可互操作。\u003C\u002Fp>\n\u003Caside class=\"editorjs-referral my-6\">\u003Ca href=\"https:\u002F\u002Fstajic.de\u002Fzh\u002Fblog\u002Fmanaged-agent-harness-vs-self-hosted-agent-loop-what-you-gain-what-you-lose\" class=\"flex flex-col sm:flex-row gap-4 rounded-xl border border-gray-200 dark:border-gray-700 p-4 transition hover:border-primary-500\">\u003Cdiv class=\"min-w-0 flex-1\">\u003Cstrong class=\"block text-lg text-gray-900 dark:text-gray-100\">托管代理框架 vs 自托管代理循环：你获得什么，失去什么\u003C\u002Fstrong>\u003Cp class=\"mt-2 text-sm text-gray-600 dark:text-gray-300\">协议边界解决互操作性。运行时边界解决谁操作框架、执行环境和应用控制平面。\u003C\u002Fp>\u003Cspan class=\"mt-3 inline-flex text-sm font-medium text-primary-600 dark:text-primary-400\">阅读运行时架构指南 →\u003C\u002Fspan>\u003C\u002Fdiv>\u003C\u002Fa>\u003C\u002Faside>\n\u003Ch2 id=\"section-60\">什么会改变这个答案？\u003C\u002Fh2>\n\u003Cp>如果协议趋同、一个标准正式吸收另一个标准，或者供应商跨多个边界标准化共享的身份和授权层，那么技术栈就会改变。UCP 已经通过支持 API、A2A 和 MCP，并与 AP2 集成而非取代它们，展示了组合能力。\u003C\u002Fp>\n\u003Cp>答案也会因应用范围而变化。一个小型内部代理可能只需要 MCP。一个多公司工作流可能需要 A2A。一个商家可能需要 UCP 而不需要 A2UI。一个委托采购代理可能需要所有这些。使用能代表真实边界且不压平领域语义的最小协议集。\u003C\u002Fp>\n\u003Ch2 id=\"section-63\">局限性\u003C\u002Fh2>\n\u003Cp>这里讨论的协议处于不同的成熟度水平，并具有不同的治理模型。A2A 已达到稳定的 v1.0 规范，而其他标准仍在快速演进。生态系统在不同供应商和框架之间的采用也不均衡。\u003C\u002Fp>\n\u003Cp>本文关注架构责任，而非实现完整性。具体的认证方法、传输绑定、模式和扩展机制必须取自每个协议的当前规范。\u003C\u002Fp>\n\u003Ch2 id=\"section-66\">结论\u003C\u002Fh2>\n\u003Cp>当把 MCP、A2A、UCP、AP2 和 A2UI 视为面向不同关系的协议，而不是五种试图标准化“代理”的竞争性尝试时，它们就更有意义。\u003C\u002Fp>\n\u003Cp>MCP 暴露能力。A2A 协调独立代理。UCP 为商务提供自己的机器可读契约。AP2 增加可验证的支付授权。A2UI 为代理提供进入用户界面的安全声明式路径。因此，新兴的代理式网络并不是用 AI 取代协议；它是在 AI 周围创建新的协议栈。\u003C\u002Fp>\n\u003Ch2 id=\"section-69\">常见问题\u003C\u002Fh2>\n\u003Csection class=\"editorjs-faq my-6 rounded-xl border border-gray-200 p-5 dark:border-gray-700\">\u003Ch3 class=\"mb-3 text-lg font-semibold\">MCP、A2A、UCP、AP2 和 A2UI\u003C\u002Fh3>\u003Cdiv id=\"faq1\" class=\"border-t border-gray-200 py-4 first:border-t-0 dark:border-gray-700\">\u003Ch4 class=\"font-semibold text-gray-900 dark:text-gray-100\">A2A 是 MCP 的替代品吗？\u003C\u002Fh4>\u003Cdiv class=\"mt-2 text-gray-600 dark:text-gray-300\">不是。MCP 主要标准化 AI 应用如何访问工具、资源和数据。A2A 标准化独立代理系统之间的协作。远程代理可以在内部使用 MCP，同时对外暴露 A2A 接口。\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv id=\"faq2\" class=\"border-t border-gray-200 py-4 first:border-t-0 dark:border-gray-700\">\u003Ch4 class=\"font-semibold text-gray-900 dark:text-gray-100\">在购物代理中，UCP 是 MCP 的替代品吗？\u003C\u002Fh4>\u003Cdiv class=\"mt-2 text-gray-600 dark:text-gray-300\">通常不是。UCP 提供商务特定的语义，如购物车、结账和履约。MCP 仍可暴露商家工具或数据，而 UCP 被设计为与 MCP 和 A2A 共存。\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv id=\"faq3\" class=\"border-t border-gray-200 py-4 first:border-t-0 dark:border-gray-700\">\u003Ch4 class=\"font-semibold text-gray-900 dark:text-gray-100\">UCP 和 AP2 有什么区别？\u003C\u002Fh4>\u003Cdiv class=\"mt-2 text-gray-600 dark:text-gray-300\">UCP 标准化商务交互和交易生命周期。AP2 侧重于证明代理在定义的用户或组织约束下有权执行支付。\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv id=\"faq4\" class=\"border-t border-gray-200 py-4 first:border-t-0 dark:border-gray-700\">\u003Ch4 class=\"font-semibold text-gray-900 dark:text-gray-100\">A2UI 解决了什么问题？\u003C\u002Fh4>\u003Cdiv class=\"mt-2 text-gray-600 dark:text-gray-300\">A2UI 让代理向宿主应用发送声明式 UI 意图，宿主应用通过受信任的原生组件渲染体验，而不是执行任意的远程前端代码。\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv id=\"faq5\" class=\"border-t border-gray-200 py-4 first:border-t-0 dark:border-gray-700\">\u003Ch4 class=\"font-semibold text-gray-900 dark:text-gray-100\">一个代理应用可以使用所有这些协议吗？\u003C\u002Fh4>\u003Cdiv class=\"mt-2 text-gray-600 dark:text-gray-300\">可以。一个工作流可以使用 MCP 处理内部工具，使用 A2A 进行远程代理委托，使用 UCP 处理商务，使用 AP2 处理支付授权，使用 A2UI 进行人机交互。\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv id=\"faq6\" class=\"border-t border-gray-200 py-4 first:border-t-0 dark:border-gray-700\">\u003Ch4 class=\"font-semibold text-gray-900 dark:text-gray-100\">我应该先实现哪个协议？\u003C\u002Fh4>\u003Cdiv class=\"mt-2 text-gray-600 dark:text-gray-300\">从互操作性边界开始。如果问题是工具访问，评估 MCP。如果是独立代理协作，评估 A2A。如果是商务，评估 UCP。如果是委托支付授权，评估 AP2。如果是可移植的代理驱动 UI，评估 A2UI。\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fsection>\n\u003Ch2 id=\"section-71\">术语表\u003C\u002Fh2>\n\u003Csection class=\"editorjs-glossary my-6 rounded-xl border border-gray-200 dark:border-gray-700 p-5\">\u003Ch3 class=\"mb-3 text-lg font-semibold\">关键代理协议术语\u003C\u002Fh3>\u003Cdl>\u003Cdiv id=\"mcp\" class=\"border-t border-gray-200 dark:border-gray-700 py-3 first:border-t-0\">\u003Cdt class=\"font-semibold text-gray-900 dark:text-gray-100\">MCP\u003C\u002Fdt>\u003Cdd class=\"mt-1 text-gray-600 dark:text-gray-300\">模型上下文协议，一种开放标准，用于将外部系统中的工具、资源和提示暴露给兼容的 AI 主机。\u003C\u002Fdd>\u003C\u002Fdiv>\u003Cdiv id=\"a2a\" class=\"border-t border-gray-200 dark:border-gray-700 py-3 first:border-t-0\">\u003Cdt class=\"font-semibold text-gray-900 dark:text-gray-100\">A2A\u003C\u002Fdt>\u003Cdd class=\"mt-1 text-gray-600 dark:text-gray-300\">Agent2Agent 协议，一种开放标准，用于通过消息、任务和产物发现独立代理系统并与之协作。\u003C\u002Fdd>\u003C\u002Fdiv>\u003Cdiv id=\"ucp\" class=\"border-t border-gray-200 dark:border-gray-700 py-3 first:border-t-0\">\u003Cdt class=\"font-semibold text-gray-900 dark:text-gray-100\">UCP\u003C\u002Fdt>\u003Cdd class=\"mt-1 text-gray-600 dark:text-gray-300\">通用商务协议，一种开放标准，用于消费者界面、企业和支付提供商之间可互操作的代理式商务旅程。\u003C\u002Fdd>\u003C\u002Fdiv>\u003Cdiv id=\"ap2\" class=\"border-t border-gray-200 dark:border-gray-700 py-3 first:border-t-0\">\u003Cdt class=\"font-semibold text-gray-900 dark:text-gray-100\">AP2\u003C\u002Fdt>\u003Cdd class=\"mt-1 text-gray-600 dark:text-gray-300\">代理支付协议，一种开放标准，用于在代理主导的支付中表示和验证授权、意图和问责。\u003C\u002Fdd>\u003C\u002Fdiv>\u003Cdiv id=\"a2ui\" class=\"border-t border-gray-200 dark:border-gray-700 py-3 first:border-t-0\">\u003Cdt class=\"font-semibold text-gray-900 dark:text-gray-100\">A2UI\u003C\u002Fdt>\u003Cdd class=\"mt-1 text-gray-600 dark:text-gray-300\">代理到用户界面，一种声明式协议，允许代理请求使用宿主应用受信任组件渲染的 UI。\u003C\u002Fdd>\u003C\u002Fdiv>\u003Cdiv id=\"protocol-composition\" class=\"border-t border-gray-200 dark:border-gray-700 py-3 first:border-t-0\">\u003Cdt class=\"font-semibold text-gray-900 dark:text-gray-100\">协议组合\u003C\u002Fdt>\u003Cdd class=\"mt-1 text-gray-600 dark:text-gray-300\">在一个工作流中使用多个协议，每个协议负责不同的互操作性边界，而不是强制所有语义通过一个契约。\u003C\u002Fdd>\u003C\u002Fdiv>\u003C\u002Fdl>\u003C\u002Fsection>\n\u003Ch2 id=\"section-73\">主要来源与延伸阅读\u003C\u002Fh2>\n\u003Ca href=\"https:\u002F\u002Fdevelopers.googleblog.com\u002Fdevelopers-guide-to-ai-agent-protocols\u002F\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"editorjs-link-tool block border border-gray-200 dark:border-gray-700 rounded-lg p-4 transition text-gray-900 dark:text-gray-100 hover:border-primary-500 hover:bg-primary-50 dark:hover:bg-gray-900 hover:text-gray-900 dark:hover:text-gray-100\">\u003Cstrong class=\"block font-semibold\">Google Developers — AI 智能体协议开发者指南\u003C\u002Fstrong>\u003Cp class=\"text-sm text-gray-600 dark:text-gray-400\">一份实用概览，展示 MCP、A2A、UCP、AP2、A2UI 及相关协议如何在一个多步骤智能体工作流中协同运作。\u003C\u002Fp>\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fts.sdk.modelcontextprotocol.io\u002Fv2\u002F\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"editorjs-link-tool block border border-gray-200 dark:border-gray-700 rounded-lg p-4 transition text-gray-900 dark:text-gray-100 hover:border-primary-500 hover:bg-primary-50 dark:hover:bg-gray-900 hover:text-gray-900 dark:hover:text-gray-100\">\u003Cstrong class=\"block font-semibold\">模型上下文协议 — TypeScript SDK v2\u003C\u002Fstrong>\u003Cp class=\"text-sm text-gray-600 dark:text-gray-400\">当前稳定版 SDK 文档，实现 2026-07-28 MCP 规范，并定义工具、资源、提示词以及主机\u002F服务器集成。\u003C\u002Fp>\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fa2a-protocol.org\u002Fdev\u002Fspecification\u002F\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"editorjs-link-tool block border border-gray-200 dark:border-gray-700 rounded-lg p-4 transition text-gray-900 dark:text-gray-100 hover:border-primary-500 hover:bg-primary-50 dark:hover:bg-gray-900 hover:text-gray-900 dark:hover:text-gray-100\">\u003Cstrong class=\"block font-semibold\">A2A 协议 — v1.0 规范\u003C\u002Fstrong>\u003Cp class=\"text-sm text-gray-600 dark:text-gray-400\">当前 A2A 协议规范，涵盖智能体卡片、消息、任务、产物、绑定和版本协商。\u003C\u002Fp>\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fa2a-protocol.org\u002Flatest\u002Fblog\u002F2026\u002F08\u002F27\u002Fa-new-chapter-for-a2a-joining-the-agentic-ai-foundation\u002F\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"editorjs-link-tool block border border-gray-200 dark:border-gray-700 rounded-lg p-4 transition text-gray-900 dark:text-gray-100 hover:border-primary-500 hover:bg-primary-50 dark:hover:bg-gray-900 hover:text-gray-900 dark:hover:text-gray-100\">\u003Cstrong class=\"block font-semibold\">A2A — 加入智能体 AI 基金会\u003C\u002Fstrong>\u003Cp class=\"text-sm text-gray-600 dark:text-gray-400\">当前项目定位将 A2A 视为横向的智能体协作层，而 MCP 则是纵向的工具\u002F数据集成层。\u003C\u002Fp>\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fdevelopers.googleblog.com\u002Funder-the-hood-universal-commerce-protocol-ucp\u002F\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"editorjs-link-tool block border border-gray-200 dark:border-gray-700 rounded-lg p-4 transition text-gray-900 dark:text-gray-100 hover:border-primary-500 hover:bg-primary-50 dark:hover:bg-gray-900 hover:text-gray-900 dark:hover:text-gray-100\">\u003Cstrong class=\"block font-semibold\">Google Developers — 深入解析：通用商务协议\u003C\u002Fstrong>\u003Cp class=\"text-sm text-gray-600 dark:text-gray-400\">UCP 的技术概览，包括其商务原语及其与 API、A2A、MCP 和 AP2 组合的能力。\u003C\u002Fp>\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fdevelopers.google.com\u002Fmerchant\u002Fucp\u002Fimplementation\u002F2026-04-08\u002Fpublish-profile\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"editorjs-link-tool block border border-gray-200 dark:border-gray-700 rounded-lg p-4 transition text-gray-900 dark:text-gray-100 hover:border-primary-500 hover:bg-primary-50 dark:hover:bg-gray-900 hover:text-gray-900 dark:hover:text-gray-100\">\u003Cstrong class=\"block font-semibold\">Google 通用商务协议 — UCP 配置文件\u003C\u002Fstrong>\u003Cp class=\"text-sm text-gray-600 dark:text-gray-400\">当前用于发布 UCP 服务和商家商务能力的版本化配置文件机制。\u003C\u002Fp>\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fcloud.google.com\u002Fblog\u002Fproducts\u002Fai-machine-learning\u002Fannouncing-agents-to-payments-ap2-protocol\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"editorjs-link-tool block border border-gray-200 dark:border-gray-700 rounded-lg p-4 transition text-gray-900 dark:text-gray-100 hover:border-primary-500 hover:bg-primary-50 dark:hover:bg-gray-900 hover:text-gray-900 dark:hover:text-gray-100\">\u003Cstrong class=\"block font-semibold\">Google Cloud — 智能体支付协议（AP2）\u003C\u002Fstrong>\u003Cp class=\"text-sm text-gray-600 dark:text-gray-400\">关于一项开放协议的公告及其理由，该协议涵盖智能体主导支付中的授权、真实性和问责制。\u003C\u002Fp>\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fdevelopers.googleblog.com\u002Fa2ui-v0-9-generative-ui\u002F\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"editorjs-link-tool block border border-gray-200 dark:border-gray-700 rounded-lg p-4 transition text-gray-900 dark:text-gray-100 hover:border-primary-500 hover:bg-primary-50 dark:hover:bg-gray-900 hover:text-gray-900 dark:hover:text-gray-100\">\u003Cstrong class=\"block font-semibold\">Google Developers — A2UI v0.9\u003C\u002Fstrong>\u003Cp class=\"text-sm text-gray-600 dark:text-gray-400\">A2UI 的框架无关声明式模型，用于由宿主原生组件渲染的可移植智能体驱动界面。\u003C\u002Fp>\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fdevelopers.googleblog.com\u002Fa2ui-and-mcp-apps\u002F\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"editorjs-link-tool block border border-gray-200 dark:border-gray-700 rounded-lg p-4 transition text-gray-900 dark:text-gray-100 hover:border-primary-500 hover:bg-primary-50 dark:hover:bg-gray-900 hover:text-gray-900 dark:hover:text-gray-100\">\u003Cstrong class=\"block font-semibold\">Google Developers — A2UI + MCP Apps\u003C\u002Fstrong>\u003Cp class=\"text-sm text-gray-600 dark:text-gray-400\">声明式 A2UI 与更丰富的 MCP App 体验如何共存，而不是被视为互斥的 UI 模型。\u003C\u002Fp>\u003C\u002Fa>",{"time":212,"blocks":213,"version":895},1790364462132,[214,222,228,236,243,250,255,260,265,270,306,313,318,323,328,333,345,351,356,361,366,371,376,386,391,423,428,433,438,443,448,453,463,468,473,478,483,488,515,520,525,530,535,540,550,555,560,589,594,618,623,628,633,638,643,676,681,686,691,700,705,710,715,720,725,730,735,740,745,750,780,785,808,813,823,832,841,850,859,868,877,886],{"id":215,"data":216,"type":220,"tunes":221},"_z4yTl5Fh-",{"title":217,"maxLevel":218,"minLevel":219},"目录",3,2,"tableOfContents",{},{"id":223,"data":224,"type":226,"tunes":227},"intro",{"text":225},"AI 智能体协议正在迅速增多：MCP、A2A、UCP、AP2、A2UI 以及相关标准越来越频繁地出现在同一张架构图中。它们常被描述为相互竞争的协议。但在实践中，它们大多是在不同边界上解决不同的互操作性问题。真正有用的问题不是“哪个协议会胜出？”，而是“系统中的哪种关系需要被标准化？”","paragraph",{},{"id":229,"data":230,"type":234,"tunes":235},"direct",{"body":231,"title":232,"variant":233},"\u003Cstrong>MCP、A2A、UCP、AP2 和 A2UI 主要是互补关系，而不是替代关系。\u003C\u002Fstrong> MCP 将 AI 应用连接到工具、数据和资源。A2A 将独立智能体彼此连接。UCP 标准化消费者界面、企业和支付生态之间的商业交互。AP2 为智能体主导的交易增加可验证的授权和支付意图。A2UI 让智能体能够描述交互式 UI，而无需发送任意应用代码。一个生产系统完全可以在同一工作流中合理地使用其中多个协议。","直接回答","info","callout",{},{"id":237,"data":238,"type":234,"tunes":242},"freshness",{"body":239,"title":240,"variant":241},"本文反映的是 \u003Cstrong>2026 年 9 月 25 日\u003C\u002Fstrong> 的协议格局。A2A 已达到 v1.0，MCP 当前的 TypeScript v2 系列实现了 2026-07-28 规范，UCP 已经加入了更新的 2026 协议版本，A2UI 也在持续演进。实施前请务必核实当前规范。","快速演进的标准","warning",{},{"id":244,"data":245,"type":234,"tunes":249},"model-note",{"body":246,"title":247,"variant":248},"下文的协议责任栈和协议选择测试是本文提出的实用架构模型。它们不是协议项目的官方术语。","本文使用的模型","note",{},{"id":251,"data":252,"type":42,"tunes":254},"h-core",{"text":253,"level":219},"核心错误：比较位于不同边界的协议",{},{"id":256,"data":257,"type":226,"tunes":259},"p-core-1",{"text":258},"协议之所以有用，是因为两个独立实现的系统需要稳定的契约。只有当边界清晰时，这个契约才有意义。智能体与数据库对话，和智能体将工作委托给另一个智能体、购物者授权购买，或远程智能体请求原生应用渲染表单，所面临的互操作性问题并不相同。",{},{"id":261,"data":262,"type":226,"tunes":264},"p-core-2",{"text":263},"Google 2026 年的开发者指南明确将 MCP、A2A、UCP、AP2、A2UI 及相关 UI 协议呈现为一组互补标准的栈。同一个示例工作流可以同时使用其中多个协议：用工具处理库存，用远程智能体处理供应商，用商业协议处理下单，用支付授权处理支出，用 UI 协议处理交互。",{},{"id":266,"data":267,"type":42,"tunes":269},"h-stack",{"text":268,"level":219},"协议责任栈",{},{"id":271,"data":272,"type":304,"tunes":305},"stack-table",{"content":273,"stretched":43,"withHeadings":14},[274,279,284,289,294,299],[275,276,277,278],"协议","标准化哪种关系？","主要抽象","主要不用于",[280,281,282,283],"MCP","AI 应用 ↔ 工具、资源和数据","工具、资源、提示词以及主机\u002F服务器能力交换","独立智能体协作或商业语义",[285,286,287,288],"A2A","智能体 ↔ 独立智能体","智能体发现、消息、任务、产物和长期协作","直接的数据库\u002F工具集成",[290,291,292,293],"UCP","消费者\u002F智能体界面 ↔ 商家商业系统","商品\u002F购物车\u002F结账\u002F履约\u002F订单能力","通用智能体通信",[295,296,297,298],"AP2","用户\u002F智能体意图 ↔ 支付授权","授权指令、审批约束和可审计的智能体主导支付权限","商品发现或通用结账传输",[300,301,302,303],"A2UI","智能体 ↔ 用户界面宿主","由可信原生组件渲染的声明式 UI 意图","任意远程前端代码或智能体到智能体的任务委托","table",{},{"id":307,"data":308,"type":234,"tunes":312},"all-five",{"body":309,"title":310,"variant":311},"智能体可以使用 \u003Cstrong>MCP\u003C\u002Fstrong> 检查库存，使用 \u003Cstrong>A2A\u003C\u002Fstrong> 向供应商智能体询问可用性，使用 \u003Cstrong>UCP\u003C\u002Fstrong> 构建商业交易，使用 \u003Cstrong>AP2\u003C\u002Fstrong> 证明支出权限，并使用 \u003Cstrong>A2UI\u003C\u002Fstrong> 向用户渲染原生审批界面。","一个工作流可以使用全部五种协议","success",{},{"id":314,"data":315,"type":42,"tunes":317},"h-mcp",{"text":316,"level":219},"1. MCP：将智能体连接到能力",{},{"id":319,"data":320,"type":226,"tunes":322},"p-mcp-1",{"text":321},"模型上下文协议（Model Context Protocol）是一项开放标准，用于将 AI 应用连接到工具、数据和可复用资源所在的外部系统。服务器暴露能力；MCP 主机连接到该服务器，并使这些能力可供模型或应用使用。",{},{"id":324,"data":325,"type":226,"tunes":327},"p-mcp-2",{"text":326},"当前的 MCP TypeScript v2 文档正是用这些术语描述该协议：服务器暴露工具、资源和提示词，而开发环境或自定义应用等主机连接到它们。这使得 MCP 主要是一种能力集成协议。",{},{"id":329,"data":330,"type":42,"tunes":332},"h-mcp-use",{"text":331,"level":218},"在以下情况使用 MCP",{},{"id":334,"data":335,"type":343,"tunes":344},"mcp-list",{"meta":336,"items":337,"style":342},{},[338,339,340,341],"AI 应用需要对工具或 API 的标准化访问。","你希望一个能力服务器能够与多个兼容的 AI 主机配合工作。","你需要对数据或资源的结构化访问，而不必将每个集成硬编码到每个智能体中。","外部系统是能力提供者，而不是自主的对等智能体。","unordered","list",{},{"id":346,"data":347,"type":234,"tunes":350},"mcp-warning",{"body":348,"title":349,"variant":241},"MCP 服务器可以暴露强大的功能，但这并不会使它成为一个拥有自身任务生命周期、发现语义和不透明内部推理的独立智能体。工具调用和智能体协作是不同的契约。","MCP 并不自动等同于 A2A",{},{"id":352,"data":353,"type":42,"tunes":355},"h-a2a",{"text":354,"level":219},"2. A2A：连接独立智能体",{},{"id":357,"data":358,"type":226,"tunes":360},"p-a2a-1",{"text":359},"Agent2Agent（A2A）专为独立且可能不透明的代理系统之间的通信而设计。其当前的 v1.0 规范侧重于能力发现、消息传递、任务、工件、多模态内容以及长时间运行的协作，而无需一个代理向另一个代理暴露其内部工具、记忆或实现。",{},{"id":362,"data":363,"type":226,"tunes":365},"p-a2a-2",{"text":364},"这种不透明性正是重要的边界。调用代理无需知道远程代理在内部使用的是 MCP、自定义工具、专有规划器、其他模型供应商还是人工升级。它需要的是一份用于发现能力和委派工作的契约。",{},{"id":367,"data":368,"type":226,"tunes":370},"p-a2a-3",{"text":369},"A2A v1.0 还标准化了版本协商，并围绕通用数据模型支持多种绑定。其发布的 Agent Card 机制为客户端提供了一个标准发现点，用于了解代理的能力、支持的协议、身份验证要求和技能。",{},{"id":372,"data":373,"type":42,"tunes":375},"h-a2a-use",{"text":374,"level":218},"在以下情况下使用 A2A",{},{"id":377,"data":378,"type":343,"tunes":385},"a2a-list",{"meta":379,"items":380,"style":342},{},[381,382,383,384],"一个自主代理需要将工作委派给另一个自主代理。","远程系统应保持不透明，隐藏于能力契约之后。","任务可能是长时间运行的、异步的，或需要人工参与交互。","代理使用不同的框架、语言、供应商或由不同组织构建。",{},{"id":387,"data":388,"type":42,"tunes":390},"h-mcp-a2a",{"text":389,"level":219},"MCP 与 A2A：垂直集成与水平协作",{},{"id":392,"data":393,"type":421,"tunes":422},"mcp-a2a-comparison",{"rows":394,"title":412,"layout":304,"columns":413},[395,400,404,408],{"id":396,"label":397,"values":398},"relationship","关系",[399,399,399],"",{"id":401,"label":402,"values":403},"abstraction","抽象",[399,399,399],{"id":405,"label":406,"values":407},"opacity","内部不透明性",[399,399,399],{"id":409,"label":410,"values":411},"long","长时间运行的工作",[399,399,399],"MCP 和 A2A 解决不同的互操作性问题",[414,417,419],{"id":415,"label":416},"dimension","维度",{"id":418,"label":280},"mcp",{"id":420,"label":285},"a2a","comparison",{},{"id":424,"data":425,"type":226,"tunes":427},"p-mcp-a2a-1",{"text":426},"A2A 项目本身现在将这种区别描述为水平与垂直：MCP 将代理连接到内部工具和数据库，而 A2A 则实现跨代理系统的点对点协作。",{},{"id":429,"data":430,"type":42,"tunes":432},"h-ucp",{"text":431,"level":219},"3. UCP：标准化代理商务",{},{"id":434,"data":435,"type":226,"tunes":437},"p-ucp-1",{"text":436},"通用商务协议（Universal Commerce Protocol）不是一种通用代理协议。它标准化了消费者界面、商家和支付提供商之间的商务流程。Google 的实现已经通过版本化配置文件和 API 支持购物车创建、结账、履约和订单生命周期等能力。",{},{"id":439,"data":440,"type":226,"tunes":442},"p-ucp-2",{"text":441},"商家可以在 \u002F.well-known\u002Fucp 下发布 UCP 配置文件，描述服务、协议版本和能力。这种发现模式很重要，因为代理界面不应为每个商家都需要定制的结账契约。",{},{"id":444,"data":445,"type":226,"tunes":447},"p-ucp-3",{"text":446},"UCP 也有意设计为可组合的。Google 的技术概述指出，它可以通过 API、A2A 和 MCP 集成，并与 AP2 兼容以实现代理支付授权。",{},{"id":449,"data":450,"type":42,"tunes":452},"h-ucp-use",{"text":451,"level":218},"在以下情况下使用 UCP",{},{"id":454,"data":455,"type":343,"tunes":462},"ucp-list",{"meta":456,"items":457,"style":342},{},[458,459,460,461],"工作流涉及商家产品、购物车、结账、履约或订单生命周期。","你正在构建一个应与代理购物体验配合使用的商家界面。","集成需要商务特定的语义，而不是通用工具调用。","你想要一份可与 MCP、A2A 和支付协议共存的互操作商务契约。",{},{"id":464,"data":465,"type":42,"tunes":467},"h-ap2",{"text":466,"level":219},"4. AP2：证明代理被允许消费",{},{"id":469,"data":470,"type":226,"tunes":472},"p-ap2-1",{"text":471},"代理商务引入了一个普通结账流程不必以同样方式解决的问题：代理可能在人类没有实时点击最终按钮的情况下进行交易。代理支付协议（AP2）解决了代理主导支付的授权、真实性和问责问题。",{},{"id":474,"data":475,"type":226,"tunes":477},"p-ap2-2",{"text":476},"Google 的 2026 协议指南通过类型化授权来描述 AP2，这些授权捕获用户意图、支出约束和正在授权的具体交易。AP2 可以作为扩展与 UCP 一起工作：UCP 描述商务交易，而 AP2 提供代理有权执行支付的证据。",{},{"id":479,"data":480,"type":226,"tunes":482},"p-ap2-3",{"text":481},"这种区别很重要。结账协议可以告诉商家应该购买什么。但它本身并不能证明谁授权代理消费、在什么限额下、针对哪个商家、持续多长时间，或者最终购物车是否仍在该授权范围内。",{},{"id":484,"data":485,"type":42,"tunes":487},"h-ucp-ap2",{"text":486,"level":219},"UCP 与 AP2：交易语义与授权",{},{"id":489,"data":490,"type":304,"tunes":514},"ucp-ap2-table",{"content":491,"stretched":43,"withHeadings":14},[492,494,498,502,506,510],[493,290,295],"问题",[495,496,497],"购买的是什么？","商务项目、购物车、结账与履约语义","引用已授权的交易上下文",[499,500,501],"谁可以授权？","不是协议的主要职责","明确的代理\u002F用户授权与委托模型",[503,504,505],"适用哪些支出约束？","商务流程可以包含总额与结账数据","授权护栏与意图限制",[507,508,509],"交易如何审计？","订单与商务生命周期","通过委托与收据的加密\u002F可验证授权轨迹",[511,512,513],"它们可以协同工作吗？","可以","可以——AP2 可以扩展代理式商务流程",{},{"id":516,"data":517,"type":42,"tunes":519},"h-a2ui",{"text":518,"level":219},"5. A2UI：让代理描述界面，而不拥有你的前端",{},{"id":521,"data":522,"type":226,"tunes":524},"p-a2ui-1",{"text":523},"代理到用户界面（A2UI）解决了另一个边界问题：远程或本地代理如何向宿主应用传达丰富的交互界面。A2UI 不发送任意的 HTML、CSS 和 JavaScript，而是使用声明式数据，由宿主通过其自己受信任的组件目录进行渲染。",{},{"id":526,"data":527,"type":226,"tunes":529},"p-a2ui-2",{"text":528},"这保留了宿主应用的设计系统和安全模型，同时仍然允许代理请求动态界面。A2UI v0.9 特别强调框架无关的 UI 意图以及跨 Web、移动端和其他客户端的流式更新。",{},{"id":531,"data":532,"type":226,"tunes":534},"p-a2ui-3",{"text":533},"Google 后来的 A2UI + MCP Apps 工作也表明，这些 UI 模型不一定互斥。声明式原生 UI 和更丰富的嵌入式应用体验可以根据任务共存。",{},{"id":536,"data":537,"type":42,"tunes":539},"h-a2ui-use",{"text":538,"level":218},"在以下情况使用 A2UI",{},{"id":541,"data":542,"type":343,"tunes":549},"a2ui-list",{"meta":543,"items":544,"style":342},{},[545,546,547,548],"远程代理需要请求表单、卡片、控件或其他交互式 UI。","宿主应保留其原生组件、样式和安全边界。","你不希望远程代理发布任意可执行的前端代码。","同一代理定义的 UI 意图应能在不同的客户端框架中工作。",{},{"id":551,"data":552,"type":42,"tunes":554},"h-selection",{"text":553,"level":219},"协议选择测试",{},{"id":556,"data":557,"type":226,"tunes":559},"p-selection-intro",{"text":558},"不要从缩写开始。从需要互操作的关系开始。",{},{"id":561,"data":562,"type":587,"tunes":588},"selection-flow",{"steps":563,"title":585,"orientation":586},[564,567,570,573,576,579,582],{"label":565,"description":566},"1. 确定两个独立方","这是 AI 到工具、代理到代理、代理到商家、代理到支付授权，还是代理到用户界面？",{"label":568,"description":569},"2. 确定共享对象","契约是关于工具调用、任务、购物车、支付委托、工件还是 UI 描述？",{"label":571,"description":572},"3. 检查是否已存在领域协议","当问题是商务或授权时，优先使用商务或支付语义，而不是将所有内容编码为通用工具。",{"label":574,"description":575},"4. 保持本地内部事务本地化","如果远程方只需要 A2A 能力，不要将整个代理暴露为 MCP 工具，也不要让远程代理负责你的 UI 运行时。",{"label":577,"description":578},"5. 当工作流跨越边界时组合协议","一个工作流可以合理地跨越工具、代理、商务、支付和 UI 契约。",{"label":580,"description":581},"6. 独立地对每个契约进行版本控制","协议版本以不同的速度演进；不要将每个集成绑定到单一的整体应用版本。",{"label":583,"description":584},"7. 在每个边界保留授权","互操作性不能替代产品权限、工具授权、支付授权或数据访问策略。","按边界选择协议","auto","processFlow",{},{"id":590,"data":591,"type":42,"tunes":593},"h-workflow",{"text":592,"level":219},"一个现实的多协议工作流",{},{"id":595,"data":596,"type":587,"tunes":617},"workflow-flow",{"steps":597,"title":616,"orientation":586},[598,601,604,607,610,613],{"label":599,"description":600},"1. 使用 MCP 检查内部库存","采购代理调用内部 MCP 服务器暴露的库存和预测能力。",{"label":602,"description":603},"2. 使用 A2A 发现供应商代理","代理读取供应商的 Agent Card，并委托一个可用性和交货时间任务。",{"label":605,"description":606},"3. 使用 UCP 协商商务对象","供应商或商家界面返回结构化的购物车、结账和履约信息。",{"label":608,"description":609},"4. 使用 AP2 检查支出授权","将购买与用户或组织的签名委托、商家约束和支出限额进行比较。",{"label":611,"description":612},"5. 通过 A2UI 请求批准","如果需要人工批准，代理发送声明式 UI 意图，宿主使用受信任的原生组件渲染批准体验。",{"label":614,"description":615},"6. 完成并审计","商务状态、支付授权、代理任务证据和应用审计记录在各自的边界内保持可追溯。","示例：自主采购工作流",{},{"id":619,"data":620,"type":42,"tunes":622},"h-universal",{"text":621,"level":219},"为什么一个通用代理协议不太可能取代所有协议",{},{"id":624,"data":625,"type":226,"tunes":627},"p-universal-1",{"text":626},"一个通用协议听起来更简单，直到它必须编码每个领域的语义。工具发现、长时间运行的代理协作、结账、支付授权和原生 UI 都有不同的生命周期、安全和正确性要求。",{},{"id":629,"data":630,"type":226,"tunes":632},"p-universal-2",{"text":631},"Web 本身也是通过分层协议演进的，而不是为每个问题使用一种消息格式。新兴的代理堆栈似乎正朝着同一方向发展：通用的水平原语、专门的领域契约以及明确的发现\u002F版本控制。",{},{"id":634,"data":635,"type":226,"tunes":637},"p-universal-3",{"text":636},"因此，架构挑战从“哪个协议胜出？”转变为协议如何在不重复身份、授权、状态和审计语义的情况下干净地组合。",{},{"id":639,"data":640,"type":42,"tunes":642},"h-failures",{"text":641,"level":219},"协议组合会产生新的故障模式",{},{"id":644,"data":645,"type":304,"tunes":675},"failure-table",{"content":646,"stretched":43,"withHeadings":14},[647,651,655,659,663,667,671],[648,649,650],"故障模式","会发生什么","架构控制",[652,653,654],"权限泄漏","有效的工具或代理能力被当作执行业务操作的许可","保持产品授权独立于协议能力发现",[656,657,658],"身份不匹配","MCP 主机身份、A2A 代理身份和商务\u002F支付身份指向不同的主体","跨边界定义明确的主体映射",[660,661,662],"版本漂移","一个协议升级，而依赖的适配器仍假设旧语义","独立协商并固定协议版本",[664,665,666],"状态重复","相同的购物车、任务或审批状态被复制到多个协议层中","为每个领域对象定义一个权威所有者",[668,669,670],"审计碎片化","工具追踪、代理任务、结账和支付证据无法关联","跨协议边界携带关联 ID 和稳定的领域标识符",[672,673,674],"语义隧道","一切都作为不透明 JSON 被强制通过通用协议","在领域协议的语义能实质性提升正确性的地方使用领域协议",{},{"id":677,"data":678,"type":42,"tunes":680},"h-app-arch",{"text":679,"level":219},"协议选择不能替代应用架构",{},{"id":682,"data":683,"type":226,"tunes":685},"p-app-1",{"text":684},"开放标准降低了集成耦合，但它们并不决定你的领域模型、授权策略、事实来源、重试策略或验收标准。MCP 工具仍可能暴露错误的能力。A2A 代理仍可能返回糟糕的产物。UCP 结账仍可能包含过期的商家数据。AP2 授权仍可能被应用逻辑误用。",{},{"id":687,"data":688,"type":226,"tunes":690},"p-app-2",{"text":689},"将协议视为独立演进组件之间的契约。将领域事实和重要策略保留在拥有它们的应用层中，然后使用协议使边界可互操作。",{},{"id":692,"data":693,"type":698,"tunes":699},"ref-harness",{"url":694,"title":695,"excerpt":696,"ctaLabel":697},"https:\u002F\u002Fstajic.de\u002Fzh\u002Fblog\u002Fmanaged-agent-harness-vs-self-hosted-agent-loop-what-you-gain-what-you-lose","托管代理框架 vs 自托管代理循环：你获得什么，失去什么","协议边界解决互操作性。运行时边界解决谁操作框架、执行环境和应用控制平面。","阅读运行时架构指南","referralArticle",{},{"id":701,"data":702,"type":42,"tunes":704},"h-change",{"text":703,"level":219},"什么会改变这个答案？",{},{"id":706,"data":707,"type":226,"tunes":709},"p-change-1",{"text":708},"如果协议趋同、一个标准正式吸收另一个标准，或者供应商跨多个边界标准化共享的身份和授权层，那么技术栈就会改变。UCP 已经通过支持 API、A2A 和 MCP，并与 AP2 集成而非取代它们，展示了组合能力。",{},{"id":711,"data":712,"type":226,"tunes":714},"p-change-2",{"text":713},"答案也会因应用范围而变化。一个小型内部代理可能只需要 MCP。一个多公司工作流可能需要 A2A。一个商家可能需要 UCP 而不需要 A2UI。一个委托采购代理可能需要所有这些。使用能代表真实边界且不压平领域语义的最小协议集。",{},{"id":716,"data":717,"type":42,"tunes":719},"h-limitations",{"text":718,"level":219},"局限性",{},{"id":721,"data":722,"type":226,"tunes":724},"p-limit-1",{"text":723},"这里讨论的协议处于不同的成熟度水平，并具有不同的治理模型。A2A 已达到稳定的 v1.0 规范，而其他标准仍在快速演进。生态系统在不同供应商和框架之间的采用也不均衡。",{},{"id":726,"data":727,"type":226,"tunes":729},"p-limit-2",{"text":728},"本文关注架构责任，而非实现完整性。具体的认证方法、传输绑定、模式和扩展机制必须取自每个协议的当前规范。",{},{"id":731,"data":732,"type":42,"tunes":734},"h-conclusion",{"text":733,"level":219},"结论",{},{"id":736,"data":737,"type":226,"tunes":739},"p-conclusion-1",{"text":738},"当把 MCP、A2A、UCP、AP2 和 A2UI 视为面向不同关系的协议，而不是五种试图标准化“代理”的竞争性尝试时，它们就更有意义。",{},{"id":741,"data":742,"type":226,"tunes":744},"p-conclusion-2",{"text":743},"MCP 暴露能力。A2A 协调独立代理。UCP 为商务提供自己的机器可读契约。AP2 增加可验证的支付授权。A2UI 为代理提供进入用户界面的安全声明式路径。因此，新兴的代理式网络并不是用 AI 取代协议；它是在 AI 周围创建新的协议栈。",{},{"id":746,"data":747,"type":42,"tunes":749},"h-faq",{"text":748,"level":219},"常见问题",{},{"id":751,"data":752,"type":751,"tunes":779},"faq",{"items":753,"title":778},[754,758,762,766,770,774],{"id":755,"answer":756,"question":757},"faq1","不是。MCP 主要标准化 AI 应用如何访问工具、资源和数据。A2A 标准化独立代理系统之间的协作。远程代理可以在内部使用 MCP，同时对外暴露 A2A 接口。","A2A 是 MCP 的替代品吗？",{"id":759,"answer":760,"question":761},"faq2","通常不是。UCP 提供商务特定的语义，如购物车、结账和履约。MCP 仍可暴露商家工具或数据，而 UCP 被设计为与 MCP 和 A2A 共存。","在购物代理中，UCP 是 MCP 的替代品吗？",{"id":763,"answer":764,"question":765},"faq3","UCP 标准化商务交互和交易生命周期。AP2 侧重于证明代理在定义的用户或组织约束下有权执行支付。","UCP 和 AP2 有什么区别？",{"id":767,"answer":768,"question":769},"faq4","A2UI 让代理向宿主应用发送声明式 UI 意图，宿主应用通过受信任的原生组件渲染体验，而不是执行任意的远程前端代码。","A2UI 解决了什么问题？",{"id":771,"answer":772,"question":773},"faq5","可以。一个工作流可以使用 MCP 处理内部工具，使用 A2A 进行远程代理委托，使用 UCP 处理商务，使用 AP2 处理支付授权，使用 A2UI 进行人机交互。","一个代理应用可以使用所有这些协议吗？",{"id":775,"answer":776,"question":777},"faq6","从互操作性边界开始。如果问题是工具访问，评估 MCP。如果是独立代理协作，评估 A2A。如果是商务，评估 UCP。如果是委托支付授权，评估 AP2。如果是可移植的代理驱动 UI，评估 A2UI。","我应该先实现哪个协议？","MCP、A2A、UCP、AP2 和 A2UI",{},{"id":781,"data":782,"type":42,"tunes":784},"h-glossary",{"text":783,"level":219},"术语表",{},{"id":786,"data":787,"type":786,"tunes":807},"glossary",{"title":788,"entries":789},"关键代理协议术语",[790,792,794,797,800,803],{"term":280,"anchor":418,"definition":791},"模型上下文协议，一种开放标准，用于将外部系统中的工具、资源和提示暴露给兼容的 AI 主机。",{"term":285,"anchor":420,"definition":793},"Agent2Agent 协议，一种开放标准，用于通过消息、任务和产物发现独立代理系统并与之协作。",{"term":290,"anchor":795,"definition":796},"ucp","通用商务协议，一种开放标准，用于消费者界面、企业和支付提供商之间可互操作的代理式商务旅程。",{"term":295,"anchor":798,"definition":799},"ap2","代理支付协议，一种开放标准，用于在代理主导的支付中表示和验证授权、意图和问责。",{"term":300,"anchor":801,"definition":802},"a2ui","代理到用户界面，一种声明式协议，允许代理请求使用宿主应用受信任组件渲染的 UI。",{"term":804,"anchor":805,"definition":806},"协议组合","protocol-composition","在一个工作流中使用多个协议，每个协议负责不同的互操作性边界，而不是强制所有语义通过一个契约。",{},{"id":809,"data":810,"type":42,"tunes":812},"h-sources",{"text":811,"level":219},"主要来源与延伸阅读",{},{"id":814,"data":815,"type":821,"tunes":822},"src-google-guide",{"link":816,"meta":817},"https:\u002F\u002Fdevelopers.googleblog.com\u002Fdevelopers-guide-to-ai-agent-protocols\u002F",{"image":818,"title":819,"description":820},{"url":399},"Google Developers — AI 智能体协议开发者指南","一份实用概览，展示 MCP、A2A、UCP、AP2、A2UI 及相关协议如何在一个多步骤智能体工作流中协同运作。","linkTool",{},{"id":824,"data":825,"type":821,"tunes":831},"src-mcp",{"link":826,"meta":827},"https:\u002F\u002Fts.sdk.modelcontextprotocol.io\u002Fv2\u002F",{"image":828,"title":829,"description":830},{"url":399},"模型上下文协议 — TypeScript SDK v2","当前稳定版 SDK 文档，实现 2026-07-28 MCP 规范，并定义工具、资源、提示词以及主机\u002F服务器集成。",{},{"id":833,"data":834,"type":821,"tunes":840},"src-a2a-spec",{"link":835,"meta":836},"https:\u002F\u002Fa2a-protocol.org\u002Fdev\u002Fspecification\u002F",{"image":837,"title":838,"description":839},{"url":399},"A2A 协议 — v1.0 规范","当前 A2A 协议规范，涵盖智能体卡片、消息、任务、产物、绑定和版本协商。",{},{"id":842,"data":843,"type":821,"tunes":849},"src-a2a-aaif",{"link":844,"meta":845},"https:\u002F\u002Fa2a-protocol.org\u002Flatest\u002Fblog\u002F2026\u002F08\u002F27\u002Fa-new-chapter-for-a2a-joining-the-agentic-ai-foundation\u002F",{"image":846,"title":847,"description":848},{"url":399},"A2A — 加入智能体 AI 基金会","当前项目定位将 A2A 视为横向的智能体协作层，而 MCP 则是纵向的工具\u002F数据集成层。",{},{"id":851,"data":852,"type":821,"tunes":858},"src-ucp",{"link":853,"meta":854},"https:\u002F\u002Fdevelopers.googleblog.com\u002Funder-the-hood-universal-commerce-protocol-ucp\u002F",{"image":855,"title":856,"description":857},{"url":399},"Google Developers — 深入解析：通用商务协议","UCP 的技术概览，包括其商务原语及其与 API、A2A、MCP 和 AP2 组合的能力。",{},{"id":860,"data":861,"type":821,"tunes":867},"src-ucp-profile",{"link":862,"meta":863},"https:\u002F\u002Fdevelopers.google.com\u002Fmerchant\u002Fucp\u002Fimplementation\u002F2026-04-08\u002Fpublish-profile",{"image":864,"title":865,"description":866},{"url":399},"Google 通用商务协议 — UCP 配置文件","当前用于发布 UCP 服务和商家商务能力的版本化配置文件机制。",{},{"id":869,"data":870,"type":821,"tunes":876},"src-ap2",{"link":871,"meta":872},"https:\u002F\u002Fcloud.google.com\u002Fblog\u002Fproducts\u002Fai-machine-learning\u002Fannouncing-agents-to-payments-ap2-protocol",{"image":873,"title":874,"description":875},{"url":399},"Google Cloud — 智能体支付协议（AP2）","关于一项开放协议的公告及其理由，该协议涵盖智能体主导支付中的授权、真实性和问责制。",{},{"id":878,"data":879,"type":821,"tunes":885},"src-a2ui",{"link":880,"meta":881},"https:\u002F\u002Fdevelopers.googleblog.com\u002Fa2ui-v0-9-generative-ui\u002F",{"image":882,"title":883,"description":884},{"url":399},"Google Developers — A2UI v0.9","A2UI 的框架无关声明式模型，用于由宿主原生组件渲染的可移植智能体驱动界面。",{},{"id":887,"data":888,"type":821,"tunes":894},"src-a2ui-mcp",{"link":889,"meta":890},"https:\u002F\u002Fdevelopers.googleblog.com\u002Fa2ui-and-mcp-apps\u002F",{"image":891,"title":892,"description":893},{"url":399},"Google Developers — A2UI + MCP Apps","声明式 A2UI 与更丰富的 MCP App 体验如何共存，而不是被视为互斥的 UI 模型。",{},"2.31","MCP、A2A、UCP、AP2 和 A2UI 常被描述为相互竞争的智能体标准。它们大多解决的是不同的互操作性问题。本指南将每个协议映射到其实际标准化的边界，并展示它们如何在同一个生产系统中协同工作。","\u002Fuploads\u002F2026\u002F09\u002Fmcp-vs-a2a-vs-ucp-vs-ap2-vs-a2ui-the-agent-protocol-stack-explained-1790352625869-2ezle0.webp","mcp-vs-a2a-vs-ucp-vs-ap2-vs-a2ui-the-agent-protocol-stack-explained-1790352625869-2ezle0","PUBLISHED","2026-09-25T12:09:00.000Z","2026-09-25T16:09:26.909Z","2026-09-25T19:27:42.182Z",{"en":904,"de":905,"sr":906,"es":907,"fr":908,"it":909,"ru":910,"zh":911},"\u002Fblog\u002Fmcp-vs-a2a-vs-ucp-vs-ap2-vs-a2ui-the-agent-protocol-stack-explained","\u002Fde\u002Fblog\u002Fmcp-vs-a2a-vs-ucp-vs-ap2-vs-a2ui-the-agent-protocol-stack-explained","\u002Fsr\u002Fblog\u002Fmcp-vs-a2a-vs-ucp-vs-ap2-vs-a2ui-the-agent-protocol-stack-explained","\u002Fes\u002Fblog\u002Fmcp-vs-a2a-vs-ucp-vs-ap2-vs-a2ui-the-agent-protocol-stack-explained","\u002Ffr\u002Fblog\u002Fmcp-vs-a2a-vs-ucp-vs-ap2-vs-a2ui-the-agent-protocol-stack-explained","\u002Fit\u002Fblog\u002Fmcp-vs-a2a-vs-ucp-vs-ap2-vs-a2ui-the-agent-protocol-stack-explained","\u002Fru\u002Fblog\u002Fmcp-vs-a2a-vs-ucp-vs-ap2-vs-a2ui-the-agent-protocol-stack-explained","\u002Fzh\u002Fblog\u002Fmcp-vs-a2a-vs-ucp-vs-ap2-vs-a2ui-the-agent-protocol-stack-explained",[913,917,921],{"id":914,"name":915,"slug":916},57,"数据边界","data-boundaries",{"id":918,"name":919,"slug":920},84,"策略与数据边界","policy-and-data",{"id":922,"name":923,"slug":924},46,"概览","overview",{"id":926,"login":927,"email":928,"displayName":929},"20","rooth8233","aleksandar@stajic.de","Aleksandar Stajić",[931,1488],{"lang":932,"title":933,"content":934,"contentJson":935,"excerpt":1487},"en","MCP vs A2A vs UCP vs AP2 vs A2UI: The Agent Protocol Stack Explained","{\"time\":1790352626854,\"blocks\":[{\"id\":\"_z4yTl5Fh-\",\"type\":\"tableOfContents\",\"data\":{\"title\":\"Contents\",\"minLevel\":2,\"maxLevel\":3},\"tunes\":{}},{\"id\":\"intro\",\"type\":\"paragraph\",\"data\":{\"text\":\"AI agent protocols are multiplying quickly: MCP, A2A, UCP, AP2, A2UI and adjacent standards increasingly appear in the same architecture diagrams. They are often described as competing protocols. In practice, most of them solve different interoperability problems at different boundaries. The useful question is not “Which protocol wins?” but “Which relationship in the system needs to be standardized?”\"},\"tunes\":{}},{\"id\":\"direct\",\"type\":\"callout\",\"data\":{\"variant\":\"info\",\"title\":\"Direct answer\",\"body\":\"\u003Cstrong>MCP, A2A, UCP, AP2 and A2UI are mostly complementary, not substitutes.\u003C\u002Fstrong> MCP connects an AI application to tools, data and resources. A2A connects independent agents to one another. UCP standardizes commerce interactions between consumer surfaces, businesses and payment ecosystems. AP2 adds verifiable authorization and payment intent to agent-led transactions. A2UI lets an agent describe interactive UI without sending arbitrary application code. A production system may legitimately use several of them in one workflow.\"},\"tunes\":{}},{\"id\":\"freshness\",\"type\":\"callout\",\"data\":{\"variant\":\"warning\",\"title\":\"Fast-moving standards\",\"body\":\"This article reflects the protocol landscape on \u003Cstrong>25 September 2026\u003C\u002Fstrong>. A2A has reached v1.0, MCP's current TypeScript v2 line implements the 2026-07-28 specification, UCP has already added newer 2026 protocol versions, and A2UI continues to evolve. Always verify the current specification before implementation.\"},\"tunes\":{}},{\"id\":\"model-note\",\"type\":\"callout\",\"data\":{\"variant\":\"note\",\"title\":\"The model used in this article\",\"body\":\"The Protocol Responsibility Stack and Protocol Selection Test below are practical architecture models proposed here. They are not official terminology from the protocol projects.\"},\"tunes\":{}},{\"id\":\"h-core\",\"type\":\"header\",\"data\":{\"text\":\"The core mistake: comparing protocols that sit at different boundaries\",\"level\":2},\"tunes\":{}},{\"id\":\"p-core-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"A protocol is useful because two independently implemented systems need a stable contract. The contract only makes sense if the boundary is clear. An agent talking to a database has a different interoperability problem from one agent delegating work to another, a shopper authorizing a purchase, or a remote agent asking a native application to render a form.\"},\"tunes\":{}},{\"id\":\"p-core-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"Google's 2026 developer guide explicitly presents MCP, A2A, UCP, AP2, A2UI and related UI protocols as a stack of complementary standards. The same example workflow can use several of them together: tools for inventory, remote agents for suppliers, commerce for ordering, payment authorization for spending and UI protocols for interaction.\"},\"tunes\":{}},{\"id\":\"h-stack\",\"type\":\"header\",\"data\":{\"text\":\"The Protocol Responsibility Stack\",\"level\":2},\"tunes\":{}},{\"id\":\"stack-table\",\"type\":\"table\",\"data\":{\"withHeadings\":true,\"stretched\":false,\"content\":[[\"Protocol\",\"Standardizes which relationship?\",\"Primary abstraction\",\"Not primarily for\"],[\"MCP\",\"AI application ↔ tools, resources and data\",\"Tools, resources, prompts and host\u002Fserver capability exchange\",\"Independent agent collaboration or commerce semantics\"],[\"A2A\",\"Agent ↔ independent agent\",\"Agent discovery, messages, tasks, artifacts and long-running collaboration\",\"Direct database\u002Ftool integration\"],[\"UCP\",\"Consumer\u002Fagent surface ↔ merchant commerce system\",\"Product\u002Fcart\u002Fcheckout\u002Ffulfillment\u002Forder capabilities\",\"General-purpose agent communication\"],[\"AP2\",\"User\u002Fagent intent ↔ payment authorization\",\"Mandates, approval constraints and auditable agent-led payment authority\",\"Product discovery or generic checkout transport\"],[\"A2UI\",\"Agent ↔ user interface host\",\"Declarative UI intent rendered by trusted native components\",\"Arbitrary remote frontend code or agent-to-agent task delegation\"]]},\"tunes\":{}},{\"id\":\"all-five\",\"type\":\"callout\",\"data\":{\"variant\":\"success\",\"title\":\"One workflow can use all five\",\"body\":\"An agent may use \u003Cstrong>MCP\u003C\u002Fstrong> to inspect inventory, \u003Cstrong>A2A\u003C\u002Fstrong> to ask a supplier agent for availability, \u003Cstrong>UCP\u003C\u002Fstrong> to build a commerce transaction, \u003Cstrong>AP2\u003C\u002Fstrong> to prove spending authority, and \u003Cstrong>A2UI\u003C\u002Fstrong> to render a native approval interface to the user.\"},\"tunes\":{}},{\"id\":\"h-mcp\",\"type\":\"header\",\"data\":{\"text\":\"1. MCP: connect the agent to capabilities\",\"level\":2},\"tunes\":{}},{\"id\":\"p-mcp-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"The Model Context Protocol is an open standard for connecting AI applications to external systems where tools, data and reusable resources live. A server exposes capabilities; an MCP host connects to that server and makes those capabilities available to the model or application.\"},\"tunes\":{}},{\"id\":\"p-mcp-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"The current MCP TypeScript v2 documentation describes the protocol in exactly those terms: servers expose tools, resources and prompts, while hosts such as development environments or custom applications connect to them. This makes MCP primarily a capability integration protocol.\"},\"tunes\":{}},{\"id\":\"h-mcp-use\",\"type\":\"header\",\"data\":{\"text\":\"Use MCP when\",\"level\":3},\"tunes\":{}},{\"id\":\"mcp-list\",\"type\":\"list\",\"data\":{\"style\":\"unordered\",\"meta\":{},\"items\":[\"An AI application needs standardized access to tools or APIs.\",\"You want one capability server to work with multiple compatible AI hosts.\",\"You need structured access to data or resources without hard-coding every integration into each agent.\",\"The external system is a capability provider, not an autonomous peer agent.\"]},\"tunes\":{}},{\"id\":\"mcp-warning\",\"type\":\"callout\",\"data\":{\"variant\":\"warning\",\"title\":\"MCP is not automatically A2A\",\"body\":\"An MCP server can expose powerful functions, but that does not make it an independent agent with its own task lifecycle, discovery semantics and opaque internal reasoning. Tool invocation and agent collaboration are different contracts.\"},\"tunes\":{}},{\"id\":\"h-a2a\",\"type\":\"header\",\"data\":{\"text\":\"2. A2A: connect independent agents\",\"level\":2},\"tunes\":{}},{\"id\":\"p-a2a-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"Agent2Agent (A2A) is designed for communication between independent, potentially opaque agent systems. Its current v1.0 specification focuses on capability discovery, messaging, tasks, artifacts, multimodal content and long-running collaboration without requiring one agent to expose its internal tools, memory or implementation to another.\"},\"tunes\":{}},{\"id\":\"p-a2a-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"That opacity is the important boundary. The calling agent does not need to know whether the remote agent uses MCP, custom tools, a proprietary planner, another model vendor, or human escalation internally. It needs a contract for discovering capabilities and delegating work.\"},\"tunes\":{}},{\"id\":\"p-a2a-3\",\"type\":\"paragraph\",\"data\":{\"text\":\"A2A v1.0 also standardizes version negotiation and supports multiple bindings around a common data model. Its published Agent Card mechanism gives clients a standard discovery point for an agent's capabilities, supported protocols, authentication requirements and skills.\"},\"tunes\":{}},{\"id\":\"h-a2a-use\",\"type\":\"header\",\"data\":{\"text\":\"Use A2A when\",\"level\":3},\"tunes\":{}},{\"id\":\"a2a-list\",\"type\":\"list\",\"data\":{\"style\":\"unordered\",\"meta\":{},\"items\":[\"One autonomous agent needs to delegate work to another autonomous agent.\",\"The remote system should remain opaque behind a capability contract.\",\"Tasks may be long-running, asynchronous or require human-in-the-loop interaction.\",\"Agents are built with different frameworks, languages, vendors or organizational ownership.\"]},\"tunes\":{}},{\"id\":\"h-mcp-a2a\",\"type\":\"header\",\"data\":{\"text\":\"MCP vs A2A: vertical integration vs horizontal collaboration\",\"level\":2},\"tunes\":{}},{\"id\":\"mcp-a2a-comparison\",\"type\":\"comparison\",\"data\":{\"title\":\"MCP and A2A solve different interoperability problems\",\"layout\":\"table\",\"columns\":[{\"id\":\"dimension\",\"label\":\"Dimension\"},{\"id\":\"mcp\",\"label\":\"MCP\"},{\"id\":\"a2a\",\"label\":\"A2A\"}],\"rows\":[{\"id\":\"relationship\",\"label\":\"Relationship\",\"values\":[\"\",\"\",\"\"]},{\"id\":\"abstraction\",\"label\":\"Abstraction\",\"values\":[\"\",\"\",\"\"]},{\"id\":\"opacity\",\"label\":\"Internal opacity\",\"values\":[\"\",\"\",\"\"]},{\"id\":\"long\",\"label\":\"Long-running work\",\"values\":[\"\",\"\",\"\"]}]},\"tunes\":{}},{\"id\":\"p-mcp-a2a-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"The A2A project itself now describes the distinction as horizontal versus vertical: MCP connects agents to internal tools and databases, while A2A enables peer-to-peer collaboration across agent systems.\"},\"tunes\":{}},{\"id\":\"h-ucp\",\"type\":\"header\",\"data\":{\"text\":\"3. UCP: standardize agentic commerce\",\"level\":2},\"tunes\":{}},{\"id\":\"p-ucp-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"The Universal Commerce Protocol is not a generic agent protocol. It standardizes commerce journeys between consumer surfaces, merchants and payment providers. Google's implementation already supports capabilities such as cart creation, checkout, fulfillment and order lifecycle through versioned profiles and APIs.\"},\"tunes\":{}},{\"id\":\"p-ucp-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"A merchant can publish a UCP profile under \u002F.well-known\u002Fucp describing services, protocol versions and capabilities. That discovery pattern matters because an agentic surface should not need a bespoke checkout contract for every merchant.\"},\"tunes\":{}},{\"id\":\"p-ucp-3\",\"type\":\"paragraph\",\"data\":{\"text\":\"UCP is also intentionally composable. Google's technical overview says it can integrate through APIs, A2A and MCP and is compatible with AP2 for agentic payment authorization.\"},\"tunes\":{}},{\"id\":\"h-ucp-use\",\"type\":\"header\",\"data\":{\"text\":\"Use UCP when\",\"level\":3},\"tunes\":{}},{\"id\":\"ucp-list\",\"type\":\"list\",\"data\":{\"style\":\"unordered\",\"meta\":{},\"items\":[\"The workflow involves merchant products, carts, checkout, fulfillment or order lifecycle.\",\"You are building a merchant surface that should work with agentic shopping experiences.\",\"The integration needs commerce-specific semantics rather than generic tool calls.\",\"You want an interoperable commerce contract that can coexist with MCP, A2A and payment protocols.\"]},\"tunes\":{}},{\"id\":\"h-ap2\",\"type\":\"header\",\"data\":{\"text\":\"4. AP2: prove that the agent was allowed to spend\",\"level\":2},\"tunes\":{}},{\"id\":\"p-ap2-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"Agentic commerce introduces a problem that ordinary checkout flows did not have to solve in the same way: an agent may transact when the human is not clicking the final button in real time. The Agent Payments Protocol (AP2) addresses authorization, authenticity and accountability for agent-led payments.\"},\"tunes\":{}},{\"id\":\"p-ap2-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"Google's 2026 protocol guide describes AP2 through typed mandates that capture user intent, spending constraints and the specific transaction being authorized. AP2 can work as an extension alongside UCP: UCP describes the commerce transaction, while AP2 provides evidence that the agent had authority to perform the payment.\"},\"tunes\":{}},{\"id\":\"p-ap2-3\",\"type\":\"paragraph\",\"data\":{\"text\":\"This distinction is important. A checkout protocol can tell a merchant what should be purchased. It does not by itself prove who authorized the agent to spend, under what limit, for which merchant, for how long, or whether the final cart remained inside that authority.\"},\"tunes\":{}},{\"id\":\"h-ucp-ap2\",\"type\":\"header\",\"data\":{\"text\":\"UCP vs AP2: transaction semantics vs authority\",\"level\":2},\"tunes\":{}},{\"id\":\"ucp-ap2-table\",\"type\":\"table\",\"data\":{\"withHeadings\":true,\"stretched\":false,\"content\":[[\"Question\",\"UCP\",\"AP2\"],[\"What is being bought?\",\"Commerce items, cart, checkout and fulfillment semantics\",\"References the authorized transaction context\"],[\"Who may authorize it?\",\"Not the primary protocol responsibility\",\"Explicit agent\u002Fuser authority and mandate model\"],[\"What spending constraints apply?\",\"Commerce flow can contain totals and checkout data\",\"Authorization guardrails and intent limits\"],[\"How is the transaction audited?\",\"Order and commerce lifecycle\",\"Cryptographic \u002F verifiable authorization trail through mandates and receipts\"],[\"Can they work together?\",\"Yes\",\"Yes — AP2 can extend agentic commerce flows\"]]},\"tunes\":{}},{\"id\":\"h-a2ui\",\"type\":\"header\",\"data\":{\"text\":\"5. A2UI: let agents describe interfaces without owning your frontend\",\"level\":2},\"tunes\":{}},{\"id\":\"p-a2ui-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"Agent-to-User Interface (A2UI) tackles another boundary: how a remote or local agent communicates a rich interactive interface to a host application. Instead of sending arbitrary HTML, CSS and JavaScript, A2UI uses declarative data that the host renders through its own trusted component catalog.\"},\"tunes\":{}},{\"id\":\"p-a2ui-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"This preserves the host application's design system and security model while still allowing an agent to request dynamic interfaces. A2UI v0.9 specifically emphasizes framework-agnostic UI intent and streaming updates across web, mobile and other clients.\"},\"tunes\":{}},{\"id\":\"p-a2ui-3\",\"type\":\"paragraph\",\"data\":{\"text\":\"Google's later A2UI + MCP Apps work also demonstrates that these UI models are not necessarily mutually exclusive. Declarative native UI and richer embedded application experiences can coexist depending on the task.\"},\"tunes\":{}},{\"id\":\"h-a2ui-use\",\"type\":\"header\",\"data\":{\"text\":\"Use A2UI when\",\"level\":3},\"tunes\":{}},{\"id\":\"a2ui-list\",\"type\":\"list\",\"data\":{\"style\":\"unordered\",\"meta\":{},\"items\":[\"A remote agent needs to request forms, cards, controls or other interactive UI.\",\"The host should preserve its native components, styling and security boundary.\",\"You do not want remote agents shipping arbitrary executable frontend code.\",\"The same agent-defined UI intent should work across different client frameworks.\"]},\"tunes\":{}},{\"id\":\"h-selection\",\"type\":\"header\",\"data\":{\"text\":\"The Protocol Selection Test\",\"level\":2},\"tunes\":{}},{\"id\":\"p-selection-intro\",\"type\":\"paragraph\",\"data\":{\"text\":\"Do not start from the acronym. Start from the relationship that needs interoperability.\"},\"tunes\":{}},{\"id\":\"selection-flow\",\"type\":\"processFlow\",\"data\":{\"title\":\"Choose the protocol by the boundary\",\"orientation\":\"auto\",\"steps\":[{\"label\":\"1. Identify the two independent parties\",\"description\":\"Is this AI-to-tool, agent-to-agent, agent-to-merchant, agent-to-payment authority, or agent-to-user-interface?\"},{\"label\":\"2. Identify the shared object\",\"description\":\"Is the contract about a tool call, task, cart, payment mandate, artifact, or UI description?\"},{\"label\":\"3. Check whether a domain protocol already exists\",\"description\":\"Prefer commerce or payment semantics when the problem is commerce or authorization instead of encoding everything as generic tools.\"},{\"label\":\"4. Keep local internals local\",\"description\":\"Do not expose an entire agent as MCP tools if the remote party only needs an A2A capability, and do not make a remote agent responsible for your UI runtime.\"},{\"label\":\"5. Compose protocols when the workflow crosses boundaries\",\"description\":\"One workflow can legitimately cross tool, agent, commerce, payment and UI contracts.\"},{\"label\":\"6. Version each contract independently\",\"description\":\"Protocol versions evolve at different speeds; do not tie every integration to one monolithic application version.\"},{\"label\":\"7. Preserve authorization at every boundary\",\"description\":\"Interoperability does not replace product permissions, tool authorization, payment authority or data-access policy.\"}]},\"tunes\":{}},{\"id\":\"h-workflow\",\"type\":\"header\",\"data\":{\"text\":\"A realistic multi-protocol workflow\",\"level\":2},\"tunes\":{}},{\"id\":\"workflow-flow\",\"type\":\"processFlow\",\"data\":{\"title\":\"Example: an autonomous procurement workflow\",\"orientation\":\"auto\",\"steps\":[{\"label\":\"1. Inspect internal stock with MCP\",\"description\":\"The purchasing agent calls inventory and forecasting capabilities exposed by internal MCP servers.\"},{\"label\":\"2. Discover a supplier agent with A2A\",\"description\":\"The agent reads the supplier's Agent Card and delegates an availability and lead-time task.\"},{\"label\":\"3. Negotiate the commerce object with UCP\",\"description\":\"The supplier or merchant surface returns structured cart, checkout and fulfillment information.\"},{\"label\":\"4. Check spending authority with AP2\",\"description\":\"The purchase is compared with the user's or organization's signed mandate, merchant constraints and spending limits.\"},{\"label\":\"5. Ask for approval through A2UI\",\"description\":\"If human approval is required, the agent sends declarative UI intent and the host renders the approval experience using trusted native components.\"},{\"label\":\"6. Complete and audit\",\"description\":\"Commerce state, payment authorization, agent task evidence and application audit records remain traceable across their respective boundaries.\"}]},\"tunes\":{}},{\"id\":\"h-universal\",\"type\":\"header\",\"data\":{\"text\":\"Why one universal agent protocol is unlikely to replace all of them\",\"level\":2},\"tunes\":{}},{\"id\":\"p-universal-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"A universal protocol sounds simpler until it must encode every domain's semantics. Tool discovery, long-running agent collaboration, checkout, payment authorization and native UI all have different lifecycle, security and correctness requirements.\"},\"tunes\":{}},{\"id\":\"p-universal-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"The web itself evolved through layered protocols rather than one message format for every problem. The emerging agentic stack appears to be moving in the same direction: common horizontal primitives, specialized domain contracts and explicit discovery\u002Fversioning.\"},\"tunes\":{}},{\"id\":\"p-universal-3\",\"type\":\"paragraph\",\"data\":{\"text\":\"The architecture challenge therefore shifts from “which protocol wins?” to how cleanly protocols compose without duplicating identity, authorization, state and audit semantics.\"},\"tunes\":{}},{\"id\":\"h-failures\",\"type\":\"header\",\"data\":{\"text\":\"Protocol composition creates new failure modes\",\"level\":2},\"tunes\":{}},{\"id\":\"failure-table\",\"type\":\"table\",\"data\":{\"withHeadings\":true,\"stretched\":false,\"content\":[[\"Failure mode\",\"What happens\",\"Architecture control\"],[\"Authority leakage\",\"A valid tool or agent capability is treated as permission to perform a business action\",\"Keep product authorization independent from protocol capability discovery\"],[\"Identity mismatch\",\"MCP host identity, A2A agent identity and commerce\u002Fpayment identity refer to different principals\",\"Define explicit principal mapping across boundaries\"],[\"Version drift\",\"One protocol upgrades while dependent adapters assume older semantics\",\"Negotiate and pin protocol versions independently\"],[\"State duplication\",\"The same cart, task or approval state is copied into several protocol layers\",\"Define one authoritative owner per domain object\"],[\"Audit fragmentation\",\"Tool traces, agent tasks, checkout and payment evidence cannot be joined\",\"Carry correlation IDs and stable domain identifiers across protocol boundaries\"],[\"Semantic tunneling\",\"Everything is forced through a generic protocol as opaque JSON\",\"Use domain protocols where their semantics materially improve correctness\"]]},\"tunes\":{}},{\"id\":\"h-app-arch\",\"type\":\"header\",\"data\":{\"text\":\"Protocol choice does not replace application architecture\",\"level\":2},\"tunes\":{}},{\"id\":\"p-app-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"Open standards reduce integration coupling, but they do not decide your domain model, authorization policy, source of truth, retry strategy or acceptance criteria. An MCP tool can still expose the wrong capability. An A2A agent can still return a bad artifact. A UCP checkout can still contain stale merchant data. An AP2 mandate can still be misapplied by application logic.\"},\"tunes\":{}},{\"id\":\"p-app-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"Treat protocols as contracts between independently evolving components. Keep domain truth and consequential policy in the application layer that owns them, then use protocols to make the boundaries interoperable.\"},\"tunes\":{}},{\"id\":\"ref-harness\",\"type\":\"referralArticle\",\"data\":{\"url\":\"https:\u002F\u002Fstajic.de\u002Fblog\u002Fmanaged-agent-harness-vs-self-hosted-agent-loop-what-you-gain-what-you-lose\",\"title\":\"Managed Agent Harness vs Self-Hosted Agent Loop: What You Gain, What You Lose\",\"excerpt\":\"Protocol boundaries solve interoperability. Runtime boundaries solve who operates the harness, execution environment and application control plane.\",\"ctaLabel\":\"Read the runtime architecture guide\"},\"tunes\":{}},{\"id\":\"h-change\",\"type\":\"header\",\"data\":{\"text\":\"What would change this answer?\",\"level\":2},\"tunes\":{}},{\"id\":\"p-change-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"The stack changes if protocols converge, one standard formally absorbs another, or vendors standardize a shared identity and authorization layer across several boundaries. UCP already demonstrates composition by supporting APIs, A2A and MCP and by integrating with AP2 rather than replacing them.\"},\"tunes\":{}},{\"id\":\"p-change-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"The answer also changes by application scope. A small internal agent may need only MCP. A multi-company workflow may need A2A. A merchant may need UCP without A2UI. A delegated purchasing agent may need all of them. Use the smallest protocol set that represents the real boundaries without flattening domain semantics.\"},\"tunes\":{}},{\"id\":\"h-limitations\",\"type\":\"header\",\"data\":{\"text\":\"Limitations\",\"level\":2},\"tunes\":{}},{\"id\":\"p-limit-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"The protocols discussed here are at different maturity levels and have different governance models. A2A has reached a stable v1.0 specification, while other standards continue to evolve rapidly. Ecosystem adoption is also uneven across vendors and frameworks.\"},\"tunes\":{}},{\"id\":\"p-limit-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"This article focuses on architecture responsibility rather than implementation completeness. Specific authentication methods, transport bindings, schemas and extension mechanisms must be taken from each protocol's current specification.\"},\"tunes\":{}},{\"id\":\"h-conclusion\",\"type\":\"header\",\"data\":{\"text\":\"Conclusion\",\"level\":2},\"tunes\":{}},{\"id\":\"p-conclusion-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"MCP, A2A, UCP, AP2 and A2UI make more sense when viewed as protocols for different relationships, not five competing attempts to standardize “agents.”\"},\"tunes\":{}},{\"id\":\"p-conclusion-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"MCP exposes capabilities. A2A coordinates independent agents. UCP gives commerce its own machine-readable contract. AP2 adds verifiable payment authority. A2UI gives agents a safe declarative path into user interfaces. The emerging agentic web is therefore not replacing protocols with AI; it is creating a new protocol stack around AI.\"},\"tunes\":{}},{\"id\":\"h-faq\",\"type\":\"header\",\"data\":{\"text\":\"FAQ\",\"level\":2},\"tunes\":{}},{\"id\":\"faq\",\"type\":\"faq\",\"data\":{\"title\":\"MCP, A2A, UCP, AP2 and A2UI\",\"items\":[{\"id\":\"faq1\",\"question\":\"Is A2A a replacement for MCP?\",\"answer\":\"No. MCP primarily standardizes how AI applications access tools, resources and data. A2A standardizes collaboration between independent agent systems. A remote agent can internally use MCP while exposing an A2A interface.\"},{\"id\":\"faq2\",\"question\":\"Is UCP a replacement for MCP in shopping agents?\",\"answer\":\"Not generally. UCP provides commerce-specific semantics such as cart, checkout and fulfillment. MCP can still expose merchant tools or data, and UCP is designed to coexist with MCP and A2A.\"},{\"id\":\"faq3\",\"question\":\"What is the difference between UCP and AP2?\",\"answer\":\"UCP standardizes commerce interactions and transaction lifecycle. AP2 focuses on proving that an agent had authority to perform a payment under defined user or organizational constraints.\"},{\"id\":\"faq4\",\"question\":\"What problem does A2UI solve?\",\"answer\":\"A2UI lets agents send declarative UI intent to a host application, which renders the experience through trusted native components instead of executing arbitrary remote frontend code.\"},{\"id\":\"faq5\",\"question\":\"Can one agent application use all of these protocols?\",\"answer\":\"Yes. A workflow can use MCP for internal tools, A2A for remote-agent delegation, UCP for commerce, AP2 for payment authorization and A2UI for human interaction.\"},{\"id\":\"faq6\",\"question\":\"Which protocol should I implement first?\",\"answer\":\"Start from the interoperability boundary. If the problem is tool access, evaluate MCP. If it is independent-agent collaboration, evaluate A2A. If it is commerce, UCP. If it is delegated payment authority, AP2. If it is portable agent-driven UI, A2UI.\"}]},\"tunes\":{}},{\"id\":\"h-glossary\",\"type\":\"header\",\"data\":{\"text\":\"Glossary\",\"level\":2},\"tunes\":{}},{\"id\":\"glossary\",\"type\":\"glossary\",\"data\":{\"title\":\"Key agent-protocol terms\",\"entries\":[{\"term\":\"MCP\",\"definition\":\"Model Context Protocol, an open standard for exposing tools, resources and prompts from external systems to compatible AI hosts.\",\"anchor\":\"mcp\"},{\"term\":\"A2A\",\"definition\":\"Agent2Agent Protocol, an open standard for discovering and collaborating with independent agent systems through messages, tasks and artifacts.\",\"anchor\":\"a2a\"},{\"term\":\"UCP\",\"definition\":\"Universal Commerce Protocol, an open standard for interoperable agentic commerce journeys between consumer surfaces, businesses and payment providers.\",\"anchor\":\"ucp\"},{\"term\":\"AP2\",\"definition\":\"Agent Payments Protocol, an open standard for representing and verifying authority, intent and accountability in agent-led payments.\",\"anchor\":\"ap2\"},{\"term\":\"A2UI\",\"definition\":\"Agent-to-User Interface, a declarative protocol for allowing agents to request UI that is rendered using the host application's trusted components.\",\"anchor\":\"a2ui\"},{\"term\":\"Protocol composition\",\"definition\":\"Using multiple protocols in one workflow, each responsible for a distinct interoperability boundary rather than forcing all semantics through one contract.\",\"anchor\":\"protocol-composition\"}]},\"tunes\":{}},{\"id\":\"h-sources\",\"type\":\"header\",\"data\":{\"text\":\"Primary sources and further reading\",\"level\":2},\"tunes\":{}},{\"id\":\"src-google-guide\",\"type\":\"linkTool\",\"data\":{\"link\":\"https:\u002F\u002Fdevelopers.googleblog.com\u002Fdevelopers-guide-to-ai-agent-protocols\u002F\",\"meta\":{\"image\":{\"url\":\"\"},\"title\":\"Google Developers — Developer's Guide to AI Agent Protocols\",\"description\":\"A practical overview showing MCP, A2A, UCP, AP2, A2UI and related protocols working together in one multi-step agent workflow.\"}},\"tunes\":{}},{\"id\":\"src-mcp\",\"type\":\"linkTool\",\"data\":{\"link\":\"https:\u002F\u002Fts.sdk.modelcontextprotocol.io\u002Fv2\u002F\",\"meta\":{\"image\":{\"url\":\"\"},\"title\":\"Model Context Protocol — TypeScript SDK v2\",\"description\":\"Current stable SDK documentation implementing the 2026-07-28 MCP specification and defining tools, resources, prompts and host\u002Fserver integration.\"}},\"tunes\":{}},{\"id\":\"src-a2a-spec\",\"type\":\"linkTool\",\"data\":{\"link\":\"https:\u002F\u002Fa2a-protocol.org\u002Fdev\u002Fspecification\u002F\",\"meta\":{\"image\":{\"url\":\"\"},\"title\":\"A2A Protocol — v1.0 Specification\",\"description\":\"Current A2A protocol specification covering Agent Cards, messages, tasks, artifacts, bindings and version negotiation.\"}},\"tunes\":{}},{\"id\":\"src-a2a-aaif\",\"type\":\"linkTool\",\"data\":{\"link\":\"https:\u002F\u002Fa2a-protocol.org\u002Flatest\u002Fblog\u002F2026\u002F08\u002F27\u002Fa-new-chapter-for-a2a-joining-the-agentic-ai-foundation\u002F\",\"meta\":{\"image\":{\"url\":\"\"},\"title\":\"A2A — Joining the Agentic AI Foundation\",\"description\":\"Current project framing of A2A as the horizontal agent-collaboration layer alongside MCP as vertical tool\u002Fdata integration.\"}},\"tunes\":{}},{\"id\":\"src-ucp\",\"type\":\"linkTool\",\"data\":{\"link\":\"https:\u002F\u002Fdevelopers.googleblog.com\u002Funder-the-hood-universal-commerce-protocol-ucp\u002F\",\"meta\":{\"image\":{\"url\":\"\"},\"title\":\"Google Developers — Under the Hood: Universal Commerce Protocol\",\"description\":\"Technical overview of UCP, its commerce primitives and its ability to compose with APIs, A2A, MCP and AP2.\"}},\"tunes\":{}},{\"id\":\"src-ucp-profile\",\"type\":\"linkTool\",\"data\":{\"link\":\"https:\u002F\u002Fdevelopers.google.com\u002Fmerchant\u002Fucp\u002Fimplementation\u002F2026-04-08\u002Fpublish-profile\",\"meta\":{\"image\":{\"url\":\"\"},\"title\":\"Google Universal Commerce Protocol — UCP Profile\",\"description\":\"Current versioned profile mechanism for publishing UCP services and merchant commerce capabilities.\"}},\"tunes\":{}},{\"id\":\"src-ap2\",\"type\":\"linkTool\",\"data\":{\"link\":\"https:\u002F\u002Fcloud.google.com\u002Fblog\u002Fproducts\u002Fai-machine-learning\u002Fannouncing-agents-to-payments-ap2-protocol\",\"meta\":{\"image\":{\"url\":\"\"},\"title\":\"Google Cloud — Agent Payments Protocol (AP2)\",\"description\":\"Announcement and rationale for an open protocol covering authorization, authenticity and accountability in agent-led payments.\"}},\"tunes\":{}},{\"id\":\"src-a2ui\",\"type\":\"linkTool\",\"data\":{\"link\":\"https:\u002F\u002Fdevelopers.googleblog.com\u002Fa2ui-v0-9-generative-ui\u002F\",\"meta\":{\"image\":{\"url\":\"\"},\"title\":\"Google Developers — A2UI v0.9\",\"description\":\"A2UI's framework-agnostic declarative model for portable agent-driven interfaces rendered by host-native components.\"}},\"tunes\":{}},{\"id\":\"src-a2ui-mcp\",\"type\":\"linkTool\",\"data\":{\"link\":\"https:\u002F\u002Fdevelopers.googleblog.com\u002Fa2ui-and-mcp-apps\u002F\",\"meta\":{\"image\":{\"url\":\"\"},\"title\":\"Google Developers — A2UI + MCP Apps\",\"description\":\"How declarative A2UI and richer MCP App experiences can coexist rather than being treated as mutually exclusive UI models.\"}},\"tunes\":{}}],\"version\":\"2.31.6\"}",{"time":936,"blocks":937,"version":1486},1790352626854,[938,942,946,951,956,961,965,969,973,977,1006,1011,1015,1019,1023,1027,1036,1041,1045,1049,1053,1057,1061,1070,1074,1096,1100,1104,1108,1112,1116,1120,1129,1133,1137,1141,1145,1149,1175,1179,1183,1187,1191,1195,1204,1208,1212,1238,1242,1265,1269,1273,1277,1281,1285,1317,1321,1325,1329,1336,1340,1344,1348,1352,1356,1360,1364,1368,1372,1376,1399,1403,1421,1425,1432,1439,1446,1453,1460,1467,1474,1480],{"id":215,"data":939,"type":220,"tunes":941},{"title":940,"maxLevel":218,"minLevel":219},"Contents",{},{"id":223,"data":943,"type":226,"tunes":945},{"text":944},"AI agent protocols are multiplying quickly: MCP, A2A, UCP, AP2, A2UI and adjacent standards increasingly appear in the same architecture diagrams. They are often described as competing protocols. In practice, most of them solve different interoperability problems at different boundaries. The useful question is not “Which protocol wins?” but “Which relationship in the system needs to be standardized?”",{},{"id":229,"data":947,"type":234,"tunes":950},{"body":948,"title":949,"variant":233},"\u003Cstrong>MCP, A2A, UCP, AP2 and A2UI are mostly complementary, not substitutes.\u003C\u002Fstrong> MCP connects an AI application to tools, data and resources. A2A connects independent agents to one another. UCP standardizes commerce interactions between consumer surfaces, businesses and payment ecosystems. AP2 adds verifiable authorization and payment intent to agent-led transactions. A2UI lets an agent describe interactive UI without sending arbitrary application code. A production system may legitimately use several of them in one workflow.","Direct answer",{},{"id":237,"data":952,"type":234,"tunes":955},{"body":953,"title":954,"variant":241},"This article reflects the protocol landscape on \u003Cstrong>25 September 2026\u003C\u002Fstrong>. A2A has reached v1.0, MCP's current TypeScript v2 line implements the 2026-07-28 specification, UCP has already added newer 2026 protocol versions, and A2UI continues to evolve. Always verify the current specification before implementation.","Fast-moving standards",{},{"id":244,"data":957,"type":234,"tunes":960},{"body":958,"title":959,"variant":248},"The Protocol Responsibility Stack and Protocol Selection Test below are practical architecture models proposed here. They are not official terminology from the protocol projects.","The model used in this article",{},{"id":251,"data":962,"type":42,"tunes":964},{"text":963,"level":219},"The core mistake: comparing protocols that sit at different boundaries",{},{"id":256,"data":966,"type":226,"tunes":968},{"text":967},"A protocol is useful because two independently implemented systems need a stable contract. The contract only makes sense if the boundary is clear. An agent talking to a database has a different interoperability problem from one agent delegating work to another, a shopper authorizing a purchase, or a remote agent asking a native application to render a form.",{},{"id":261,"data":970,"type":226,"tunes":972},{"text":971},"Google's 2026 developer guide explicitly presents MCP, A2A, UCP, AP2, A2UI and related UI protocols as a stack of complementary standards. The same example workflow can use several of them together: tools for inventory, remote agents for suppliers, commerce for ordering, payment authorization for spending and UI protocols for interaction.",{},{"id":266,"data":974,"type":42,"tunes":976},{"text":975,"level":219},"The Protocol Responsibility Stack",{},{"id":271,"data":978,"type":304,"tunes":1005},{"content":979,"stretched":43,"withHeadings":14},[980,985,989,993,997,1001],[981,982,983,984],"Protocol","Standardizes which relationship?","Primary abstraction","Not primarily for",[280,986,987,988],"AI application ↔ tools, resources and data","Tools, resources, prompts and host\u002Fserver capability exchange","Independent agent collaboration or commerce semantics",[285,990,991,992],"Agent ↔ independent agent","Agent discovery, messages, tasks, artifacts and long-running collaboration","Direct database\u002Ftool integration",[290,994,995,996],"Consumer\u002Fagent surface ↔ merchant commerce system","Product\u002Fcart\u002Fcheckout\u002Ffulfillment\u002Forder capabilities","General-purpose agent communication",[295,998,999,1000],"User\u002Fagent intent ↔ payment authorization","Mandates, approval constraints and auditable agent-led payment authority","Product discovery or generic checkout transport",[300,1002,1003,1004],"Agent ↔ user interface host","Declarative UI intent rendered by trusted native components","Arbitrary remote frontend code or agent-to-agent task delegation",{},{"id":307,"data":1007,"type":234,"tunes":1010},{"body":1008,"title":1009,"variant":311},"An agent may use \u003Cstrong>MCP\u003C\u002Fstrong> to inspect inventory, \u003Cstrong>A2A\u003C\u002Fstrong> to ask a supplier agent for availability, \u003Cstrong>UCP\u003C\u002Fstrong> to build a commerce transaction, \u003Cstrong>AP2\u003C\u002Fstrong> to prove spending authority, and \u003Cstrong>A2UI\u003C\u002Fstrong> to render a native approval interface to the user.","One workflow can use all five",{},{"id":314,"data":1012,"type":42,"tunes":1014},{"text":1013,"level":219},"1. MCP: connect the agent to capabilities",{},{"id":319,"data":1016,"type":226,"tunes":1018},{"text":1017},"The Model Context Protocol is an open standard for connecting AI applications to external systems where tools, data and reusable resources live. A server exposes capabilities; an MCP host connects to that server and makes those capabilities available to the model or application.",{},{"id":324,"data":1020,"type":226,"tunes":1022},{"text":1021},"The current MCP TypeScript v2 documentation describes the protocol in exactly those terms: servers expose tools, resources and prompts, while hosts such as development environments or custom applications connect to them. This makes MCP primarily a capability integration protocol.",{},{"id":329,"data":1024,"type":42,"tunes":1026},{"text":1025,"level":218},"Use MCP when",{},{"id":334,"data":1028,"type":343,"tunes":1035},{"meta":1029,"items":1030,"style":342},{},[1031,1032,1033,1034],"An AI application needs standardized access to tools or APIs.","You want one capability server to work with multiple compatible AI hosts.","You need structured access to data or resources without hard-coding every integration into each agent.","The external system is a capability provider, not an autonomous peer agent.",{},{"id":346,"data":1037,"type":234,"tunes":1040},{"body":1038,"title":1039,"variant":241},"An MCP server can expose powerful functions, but that does not make it an independent agent with its own task lifecycle, discovery semantics and opaque internal reasoning. Tool invocation and agent collaboration are different contracts.","MCP is not automatically A2A",{},{"id":352,"data":1042,"type":42,"tunes":1044},{"text":1043,"level":219},"2. A2A: connect independent agents",{},{"id":357,"data":1046,"type":226,"tunes":1048},{"text":1047},"Agent2Agent (A2A) is designed for communication between independent, potentially opaque agent systems. Its current v1.0 specification focuses on capability discovery, messaging, tasks, artifacts, multimodal content and long-running collaboration without requiring one agent to expose its internal tools, memory or implementation to another.",{},{"id":362,"data":1050,"type":226,"tunes":1052},{"text":1051},"That opacity is the important boundary. The calling agent does not need to know whether the remote agent uses MCP, custom tools, a proprietary planner, another model vendor, or human escalation internally. It needs a contract for discovering capabilities and delegating work.",{},{"id":367,"data":1054,"type":226,"tunes":1056},{"text":1055},"A2A v1.0 also standardizes version negotiation and supports multiple bindings around a common data model. Its published Agent Card mechanism gives clients a standard discovery point for an agent's capabilities, supported protocols, authentication requirements and skills.",{},{"id":372,"data":1058,"type":42,"tunes":1060},{"text":1059,"level":218},"Use A2A when",{},{"id":377,"data":1062,"type":343,"tunes":1069},{"meta":1063,"items":1064,"style":342},{},[1065,1066,1067,1068],"One autonomous agent needs to delegate work to another autonomous agent.","The remote system should remain opaque behind a capability contract.","Tasks may be long-running, asynchronous or require human-in-the-loop interaction.","Agents are built with different frameworks, languages, vendors or organizational ownership.",{},{"id":387,"data":1071,"type":42,"tunes":1073},{"text":1072,"level":219},"MCP vs A2A: vertical integration vs horizontal collaboration",{},{"id":392,"data":1075,"type":421,"tunes":1095},{"rows":1076,"title":1089,"layout":304,"columns":1090},[1077,1080,1083,1086],{"id":396,"label":1078,"values":1079},"Relationship",[399,399,399],{"id":401,"label":1081,"values":1082},"Abstraction",[399,399,399],{"id":405,"label":1084,"values":1085},"Internal opacity",[399,399,399],{"id":409,"label":1087,"values":1088},"Long-running work",[399,399,399],"MCP and A2A solve different interoperability problems",[1091,1093,1094],{"id":415,"label":1092},"Dimension",{"id":418,"label":280},{"id":420,"label":285},{},{"id":424,"data":1097,"type":226,"tunes":1099},{"text":1098},"The A2A project itself now describes the distinction as horizontal versus vertical: MCP connects agents to internal tools and databases, while A2A enables peer-to-peer collaboration across agent systems.",{},{"id":429,"data":1101,"type":42,"tunes":1103},{"text":1102,"level":219},"3. UCP: standardize agentic commerce",{},{"id":434,"data":1105,"type":226,"tunes":1107},{"text":1106},"The Universal Commerce Protocol is not a generic agent protocol. It standardizes commerce journeys between consumer surfaces, merchants and payment providers. Google's implementation already supports capabilities such as cart creation, checkout, fulfillment and order lifecycle through versioned profiles and APIs.",{},{"id":439,"data":1109,"type":226,"tunes":1111},{"text":1110},"A merchant can publish a UCP profile under \u002F.well-known\u002Fucp describing services, protocol versions and capabilities. That discovery pattern matters because an agentic surface should not need a bespoke checkout contract for every merchant.",{},{"id":444,"data":1113,"type":226,"tunes":1115},{"text":1114},"UCP is also intentionally composable. Google's technical overview says it can integrate through APIs, A2A and MCP and is compatible with AP2 for agentic payment authorization.",{},{"id":449,"data":1117,"type":42,"tunes":1119},{"text":1118,"level":218},"Use UCP when",{},{"id":454,"data":1121,"type":343,"tunes":1128},{"meta":1122,"items":1123,"style":342},{},[1124,1125,1126,1127],"The workflow involves merchant products, carts, checkout, fulfillment or order lifecycle.","You are building a merchant surface that should work with agentic shopping experiences.","The integration needs commerce-specific semantics rather than generic tool calls.","You want an interoperable commerce contract that can coexist with MCP, A2A and payment protocols.",{},{"id":464,"data":1130,"type":42,"tunes":1132},{"text":1131,"level":219},"4. AP2: prove that the agent was allowed to spend",{},{"id":469,"data":1134,"type":226,"tunes":1136},{"text":1135},"Agentic commerce introduces a problem that ordinary checkout flows did not have to solve in the same way: an agent may transact when the human is not clicking the final button in real time. The Agent Payments Protocol (AP2) addresses authorization, authenticity and accountability for agent-led payments.",{},{"id":474,"data":1138,"type":226,"tunes":1140},{"text":1139},"Google's 2026 protocol guide describes AP2 through typed mandates that capture user intent, spending constraints and the specific transaction being authorized. AP2 can work as an extension alongside UCP: UCP describes the commerce transaction, while AP2 provides evidence that the agent had authority to perform the payment.",{},{"id":479,"data":1142,"type":226,"tunes":1144},{"text":1143},"This distinction is important. A checkout protocol can tell a merchant what should be purchased. It does not by itself prove who authorized the agent to spend, under what limit, for which merchant, for how long, or whether the final cart remained inside that authority.",{},{"id":484,"data":1146,"type":42,"tunes":1148},{"text":1147,"level":219},"UCP vs AP2: transaction semantics vs authority",{},{"id":489,"data":1150,"type":304,"tunes":1174},{"content":1151,"stretched":43,"withHeadings":14},[1152,1154,1158,1162,1166,1170],[1153,290,295],"Question",[1155,1156,1157],"What is being bought?","Commerce items, cart, checkout and fulfillment semantics","References the authorized transaction context",[1159,1160,1161],"Who may authorize it?","Not the primary protocol responsibility","Explicit agent\u002Fuser authority and mandate model",[1163,1164,1165],"What spending constraints apply?","Commerce flow can contain totals and checkout data","Authorization guardrails and intent limits",[1167,1168,1169],"How is the transaction audited?","Order and commerce lifecycle","Cryptographic \u002F verifiable authorization trail through mandates and receipts",[1171,1172,1173],"Can they work together?","Yes","Yes — AP2 can extend agentic commerce flows",{},{"id":516,"data":1176,"type":42,"tunes":1178},{"text":1177,"level":219},"5. A2UI: let agents describe interfaces without owning your frontend",{},{"id":521,"data":1180,"type":226,"tunes":1182},{"text":1181},"Agent-to-User Interface (A2UI) tackles another boundary: how a remote or local agent communicates a rich interactive interface to a host application. Instead of sending arbitrary HTML, CSS and JavaScript, A2UI uses declarative data that the host renders through its own trusted component catalog.",{},{"id":526,"data":1184,"type":226,"tunes":1186},{"text":1185},"This preserves the host application's design system and security model while still allowing an agent to request dynamic interfaces. A2UI v0.9 specifically emphasizes framework-agnostic UI intent and streaming updates across web, mobile and other clients.",{},{"id":531,"data":1188,"type":226,"tunes":1190},{"text":1189},"Google's later A2UI + MCP Apps work also demonstrates that these UI models are not necessarily mutually exclusive. Declarative native UI and richer embedded application experiences can coexist depending on the task.",{},{"id":536,"data":1192,"type":42,"tunes":1194},{"text":1193,"level":218},"Use A2UI when",{},{"id":541,"data":1196,"type":343,"tunes":1203},{"meta":1197,"items":1198,"style":342},{},[1199,1200,1201,1202],"A remote agent needs to request forms, cards, controls or other interactive UI.","The host should preserve its native components, styling and security boundary.","You do not want remote agents shipping arbitrary executable frontend code.","The same agent-defined UI intent should work across different client frameworks.",{},{"id":551,"data":1205,"type":42,"tunes":1207},{"text":1206,"level":219},"The Protocol Selection Test",{},{"id":556,"data":1209,"type":226,"tunes":1211},{"text":1210},"Do not start from the acronym. Start from the relationship that needs interoperability.",{},{"id":561,"data":1213,"type":587,"tunes":1237},{"steps":1214,"title":1236,"orientation":586},[1215,1218,1221,1224,1227,1230,1233],{"label":1216,"description":1217},"1. Identify the two independent parties","Is this AI-to-tool, agent-to-agent, agent-to-merchant, agent-to-payment authority, or agent-to-user-interface?",{"label":1219,"description":1220},"2. Identify the shared object","Is the contract about a tool call, task, cart, payment mandate, artifact, or UI description?",{"label":1222,"description":1223},"3. Check whether a domain protocol already exists","Prefer commerce or payment semantics when the problem is commerce or authorization instead of encoding everything as generic tools.",{"label":1225,"description":1226},"4. Keep local internals local","Do not expose an entire agent as MCP tools if the remote party only needs an A2A capability, and do not make a remote agent responsible for your UI runtime.",{"label":1228,"description":1229},"5. Compose protocols when the workflow crosses boundaries","One workflow can legitimately cross tool, agent, commerce, payment and UI contracts.",{"label":1231,"description":1232},"6. Version each contract independently","Protocol versions evolve at different speeds; do not tie every integration to one monolithic application version.",{"label":1234,"description":1235},"7. Preserve authorization at every boundary","Interoperability does not replace product permissions, tool authorization, payment authority or data-access policy.","Choose the protocol by the boundary",{},{"id":590,"data":1239,"type":42,"tunes":1241},{"text":1240,"level":219},"A realistic multi-protocol workflow",{},{"id":595,"data":1243,"type":587,"tunes":1264},{"steps":1244,"title":1263,"orientation":586},[1245,1248,1251,1254,1257,1260],{"label":1246,"description":1247},"1. Inspect internal stock with MCP","The purchasing agent calls inventory and forecasting capabilities exposed by internal MCP servers.",{"label":1249,"description":1250},"2. Discover a supplier agent with A2A","The agent reads the supplier's Agent Card and delegates an availability and lead-time task.",{"label":1252,"description":1253},"3. Negotiate the commerce object with UCP","The supplier or merchant surface returns structured cart, checkout and fulfillment information.",{"label":1255,"description":1256},"4. Check spending authority with AP2","The purchase is compared with the user's or organization's signed mandate, merchant constraints and spending limits.",{"label":1258,"description":1259},"5. Ask for approval through A2UI","If human approval is required, the agent sends declarative UI intent and the host renders the approval experience using trusted native components.",{"label":1261,"description":1262},"6. Complete and audit","Commerce state, payment authorization, agent task evidence and application audit records remain traceable across their respective boundaries.","Example: an autonomous procurement workflow",{},{"id":619,"data":1266,"type":42,"tunes":1268},{"text":1267,"level":219},"Why one universal agent protocol is unlikely to replace all of them",{},{"id":624,"data":1270,"type":226,"tunes":1272},{"text":1271},"A universal protocol sounds simpler until it must encode every domain's semantics. Tool discovery, long-running agent collaboration, checkout, payment authorization and native UI all have different lifecycle, security and correctness requirements.",{},{"id":629,"data":1274,"type":226,"tunes":1276},{"text":1275},"The web itself evolved through layered protocols rather than one message format for every problem. The emerging agentic stack appears to be moving in the same direction: common horizontal primitives, specialized domain contracts and explicit discovery\u002Fversioning.",{},{"id":634,"data":1278,"type":226,"tunes":1280},{"text":1279},"The architecture challenge therefore shifts from “which protocol wins?” to how cleanly protocols compose without duplicating identity, authorization, state and audit semantics.",{},{"id":639,"data":1282,"type":42,"tunes":1284},{"text":1283,"level":219},"Protocol composition creates new failure modes",{},{"id":644,"data":1286,"type":304,"tunes":1316},{"content":1287,"stretched":43,"withHeadings":14},[1288,1292,1296,1300,1304,1308,1312],[1289,1290,1291],"Failure mode","What happens","Architecture control",[1293,1294,1295],"Authority leakage","A valid tool or agent capability is treated as permission to perform a business action","Keep product authorization independent from protocol capability discovery",[1297,1298,1299],"Identity mismatch","MCP host identity, A2A agent identity and commerce\u002Fpayment identity refer to different principals","Define explicit principal mapping across boundaries",[1301,1302,1303],"Version drift","One protocol upgrades while dependent adapters assume older semantics","Negotiate and pin protocol versions independently",[1305,1306,1307],"State duplication","The same cart, task or approval state is copied into several protocol layers","Define one authoritative owner per domain object",[1309,1310,1311],"Audit fragmentation","Tool traces, agent tasks, checkout and payment evidence cannot be joined","Carry correlation IDs and stable domain identifiers across protocol boundaries",[1313,1314,1315],"Semantic tunneling","Everything is forced through a generic protocol as opaque JSON","Use domain protocols where their semantics materially improve correctness",{},{"id":677,"data":1318,"type":42,"tunes":1320},{"text":1319,"level":219},"Protocol choice does not replace application architecture",{},{"id":682,"data":1322,"type":226,"tunes":1324},{"text":1323},"Open standards reduce integration coupling, but they do not decide your domain model, authorization policy, source of truth, retry strategy or acceptance criteria. An MCP tool can still expose the wrong capability. An A2A agent can still return a bad artifact. A UCP checkout can still contain stale merchant data. An AP2 mandate can still be misapplied by application logic.",{},{"id":687,"data":1326,"type":226,"tunes":1328},{"text":1327},"Treat protocols as contracts between independently evolving components. Keep domain truth and consequential policy in the application layer that owns them, then use protocols to make the boundaries interoperable.",{},{"id":692,"data":1330,"type":698,"tunes":1335},{"url":1331,"title":1332,"excerpt":1333,"ctaLabel":1334},"https:\u002F\u002Fstajic.de\u002Fblog\u002Fmanaged-agent-harness-vs-self-hosted-agent-loop-what-you-gain-what-you-lose","Managed Agent Harness vs Self-Hosted Agent Loop: What You Gain, What You Lose","Protocol boundaries solve interoperability. Runtime boundaries solve who operates the harness, execution environment and application control plane.","Read the runtime architecture guide",{},{"id":701,"data":1337,"type":42,"tunes":1339},{"text":1338,"level":219},"What would change this answer?",{},{"id":706,"data":1341,"type":226,"tunes":1343},{"text":1342},"The stack changes if protocols converge, one standard formally absorbs another, or vendors standardize a shared identity and authorization layer across several boundaries. UCP already demonstrates composition by supporting APIs, A2A and MCP and by integrating with AP2 rather than replacing them.",{},{"id":711,"data":1345,"type":226,"tunes":1347},{"text":1346},"The answer also changes by application scope. A small internal agent may need only MCP. A multi-company workflow may need A2A. A merchant may need UCP without A2UI. A delegated purchasing agent may need all of them. Use the smallest protocol set that represents the real boundaries without flattening domain semantics.",{},{"id":716,"data":1349,"type":42,"tunes":1351},{"text":1350,"level":219},"Limitations",{},{"id":721,"data":1353,"type":226,"tunes":1355},{"text":1354},"The protocols discussed here are at different maturity levels and have different governance models. A2A has reached a stable v1.0 specification, while other standards continue to evolve rapidly. Ecosystem adoption is also uneven across vendors and frameworks.",{},{"id":726,"data":1357,"type":226,"tunes":1359},{"text":1358},"This article focuses on architecture responsibility rather than implementation completeness. Specific authentication methods, transport bindings, schemas and extension mechanisms must be taken from each protocol's current specification.",{},{"id":731,"data":1361,"type":42,"tunes":1363},{"text":1362,"level":219},"Conclusion",{},{"id":736,"data":1365,"type":226,"tunes":1367},{"text":1366},"MCP, A2A, UCP, AP2 and A2UI make more sense when viewed as protocols for different relationships, not five competing attempts to standardize “agents.”",{},{"id":741,"data":1369,"type":226,"tunes":1371},{"text":1370},"MCP exposes capabilities. A2A coordinates independent agents. UCP gives commerce its own machine-readable contract. AP2 adds verifiable payment authority. A2UI gives agents a safe declarative path into user interfaces. The emerging agentic web is therefore not replacing protocols with AI; it is creating a new protocol stack around AI.",{},{"id":746,"data":1373,"type":42,"tunes":1375},{"text":1374,"level":219},"FAQ",{},{"id":751,"data":1377,"type":751,"tunes":1398},{"items":1378,"title":1397},[1379,1382,1385,1388,1391,1394],{"id":755,"answer":1380,"question":1381},"No. MCP primarily standardizes how AI applications access tools, resources and data. A2A standardizes collaboration between independent agent systems. A remote agent can internally use MCP while exposing an A2A interface.","Is A2A a replacement for MCP?",{"id":759,"answer":1383,"question":1384},"Not generally. UCP provides commerce-specific semantics such as cart, checkout and fulfillment. MCP can still expose merchant tools or data, and UCP is designed to coexist with MCP and A2A.","Is UCP a replacement for MCP in shopping agents?",{"id":763,"answer":1386,"question":1387},"UCP standardizes commerce interactions and transaction lifecycle. AP2 focuses on proving that an agent had authority to perform a payment under defined user or organizational constraints.","What is the difference between UCP and AP2?",{"id":767,"answer":1389,"question":1390},"A2UI lets agents send declarative UI intent to a host application, which renders the experience through trusted native components instead of executing arbitrary remote frontend code.","What problem does A2UI solve?",{"id":771,"answer":1392,"question":1393},"Yes. A workflow can use MCP for internal tools, A2A for remote-agent delegation, UCP for commerce, AP2 for payment authorization and A2UI for human interaction.","Can one agent application use all of these protocols?",{"id":775,"answer":1395,"question":1396},"Start from the interoperability boundary. If the problem is tool access, evaluate MCP. If it is independent-agent collaboration, evaluate A2A. If it is commerce, UCP. If it is delegated payment authority, AP2. If it is portable agent-driven UI, A2UI.","Which protocol should I implement first?","MCP, A2A, UCP, AP2 and A2UI",{},{"id":781,"data":1400,"type":42,"tunes":1402},{"text":1401,"level":219},"Glossary",{},{"id":786,"data":1404,"type":786,"tunes":1420},{"title":1405,"entries":1406},"Key agent-protocol terms",[1407,1409,1411,1413,1415,1417],{"term":280,"anchor":418,"definition":1408},"Model Context Protocol, an open standard for exposing tools, resources and prompts from external systems to compatible AI hosts.",{"term":285,"anchor":420,"definition":1410},"Agent2Agent Protocol, an open standard for discovering and collaborating with independent agent systems through messages, tasks and artifacts.",{"term":290,"anchor":795,"definition":1412},"Universal Commerce Protocol, an open standard for interoperable agentic commerce journeys between consumer surfaces, businesses and payment providers.",{"term":295,"anchor":798,"definition":1414},"Agent Payments Protocol, an open standard for representing and verifying authority, intent and accountability in agent-led payments.",{"term":300,"anchor":801,"definition":1416},"Agent-to-User Interface, a declarative protocol for allowing agents to request UI that is rendered using the host application's trusted components.",{"term":1418,"anchor":805,"definition":1419},"Protocol composition","Using multiple protocols in one workflow, each responsible for a distinct interoperability boundary rather than forcing all semantics through one contract.",{},{"id":809,"data":1422,"type":42,"tunes":1424},{"text":1423,"level":219},"Primary sources and further reading",{},{"id":814,"data":1426,"type":821,"tunes":1431},{"link":816,"meta":1427},{"image":1428,"title":1429,"description":1430},{"url":399},"Google Developers — Developer's Guide to AI Agent Protocols","A practical overview showing MCP, A2A, UCP, AP2, A2UI and related protocols working together in one multi-step agent workflow.",{},{"id":824,"data":1433,"type":821,"tunes":1438},{"link":826,"meta":1434},{"image":1435,"title":1436,"description":1437},{"url":399},"Model Context Protocol — TypeScript SDK v2","Current stable SDK documentation implementing the 2026-07-28 MCP specification and defining tools, resources, prompts and host\u002Fserver integration.",{},{"id":833,"data":1440,"type":821,"tunes":1445},{"link":835,"meta":1441},{"image":1442,"title":1443,"description":1444},{"url":399},"A2A Protocol — v1.0 Specification","Current A2A protocol specification covering Agent Cards, messages, tasks, artifacts, bindings and version negotiation.",{},{"id":842,"data":1447,"type":821,"tunes":1452},{"link":844,"meta":1448},{"image":1449,"title":1450,"description":1451},{"url":399},"A2A — Joining the Agentic AI Foundation","Current project framing of A2A as the horizontal agent-collaboration layer alongside MCP as vertical tool\u002Fdata integration.",{},{"id":851,"data":1454,"type":821,"tunes":1459},{"link":853,"meta":1455},{"image":1456,"title":1457,"description":1458},{"url":399},"Google Developers — Under the Hood: Universal Commerce Protocol","Technical overview of UCP, its commerce primitives and its ability to compose with APIs, A2A, MCP and AP2.",{},{"id":860,"data":1461,"type":821,"tunes":1466},{"link":862,"meta":1462},{"image":1463,"title":1464,"description":1465},{"url":399},"Google Universal Commerce Protocol — UCP Profile","Current versioned profile mechanism for publishing UCP services and merchant commerce capabilities.",{},{"id":869,"data":1468,"type":821,"tunes":1473},{"link":871,"meta":1469},{"image":1470,"title":1471,"description":1472},{"url":399},"Google Cloud — Agent Payments Protocol (AP2)","Announcement and rationale for an open protocol covering authorization, authenticity and accountability in agent-led payments.",{},{"id":878,"data":1475,"type":821,"tunes":1479},{"link":880,"meta":1476},{"image":1477,"title":883,"description":1478},{"url":399},"A2UI's framework-agnostic declarative model for portable agent-driven interfaces rendered by host-native components.",{},{"id":887,"data":1481,"type":821,"tunes":1485},{"link":889,"meta":1482},{"image":1483,"title":892,"description":1484},{"url":399},"How declarative A2UI and richer MCP App experiences can coexist rather than being treated as mutually exclusive UI models.",{},"2.31.6","MCP, A2A, UCP, AP2 and A2UI are often presented as competing agent standards. They mostly solve different interoperability problems. This guide maps each protocol to the boundary it actually standardizes—and shows how they can work together in one production system.",{"lang":7,"title":208,"content":210,"contentJson":1489,"excerpt":896},{"time":212,"blocks":1490,"version":895},[1491,1494,1497,1500,1503,1506,1509,1512,1515,1518,1528,1531,1534,1537,1540,1543,1548,1551,1554,1557,1560,1563,1566,1571,1574,1590,1593,1596,1599,1602,1605,1608,1613,1616,1619,1622,1625,1628,1638,1641,1644,1647,1650,1653,1658,1661,1664,1675,1678,1688,1691,1694,1697,1700,1703,1714,1717,1720,1723,1726,1729,1732,1735,1738,1741,1744,1747,1750,1753,1756,1766,1769,1779,1782,1787,1792,1797,1802,1807,1812,1817,1822],{"id":215,"data":1492,"type":220,"tunes":1493},{"title":217,"maxLevel":218,"minLevel":219},{},{"id":223,"data":1495,"type":226,"tunes":1496},{"text":225},{},{"id":229,"data":1498,"type":234,"tunes":1499},{"body":231,"title":232,"variant":233},{},{"id":237,"data":1501,"type":234,"tunes":1502},{"body":239,"title":240,"variant":241},{},{"id":244,"data":1504,"type":234,"tunes":1505},{"body":246,"title":247,"variant":248},{},{"id":251,"data":1507,"type":42,"tunes":1508},{"text":253,"level":219},{},{"id":256,"data":1510,"type":226,"tunes":1511},{"text":258},{},{"id":261,"data":1513,"type":226,"tunes":1514},{"text":263},{},{"id":266,"data":1516,"type":42,"tunes":1517},{"text":268,"level":219},{},{"id":271,"data":1519,"type":304,"tunes":1527},{"content":1520,"stretched":43,"withHeadings":14},[1521,1522,1523,1524,1525,1526],[275,276,277,278],[280,281,282,283],[285,286,287,288],[290,291,292,293],[295,296,297,298],[300,301,302,303],{},{"id":307,"data":1529,"type":234,"tunes":1530},{"body":309,"title":310,"variant":311},{},{"id":314,"data":1532,"type":42,"tunes":1533},{"text":316,"level":219},{},{"id":319,"data":1535,"type":226,"tunes":1536},{"text":321},{},{"id":324,"data":1538,"type":226,"tunes":1539},{"text":326},{},{"id":329,"data":1541,"type":42,"tunes":1542},{"text":331,"level":218},{},{"id":334,"data":1544,"type":343,"tunes":1547},{"meta":1545,"items":1546,"style":342},{},[338,339,340,341],{},{"id":346,"data":1549,"type":234,"tunes":1550},{"body":348,"title":349,"variant":241},{},{"id":352,"data":1552,"type":42,"tunes":1553},{"text":354,"level":219},{},{"id":357,"data":1555,"type":226,"tunes":1556},{"text":359},{},{"id":362,"data":1558,"type":226,"tunes":1559},{"text":364},{},{"id":367,"data":1561,"type":226,"tunes":1562},{"text":369},{},{"id":372,"data":1564,"type":42,"tunes":1565},{"text":374,"level":218},{},{"id":377,"data":1567,"type":343,"tunes":1570},{"meta":1568,"items":1569,"style":342},{},[381,382,383,384],{},{"id":387,"data":1572,"type":42,"tunes":1573},{"text":389,"level":219},{},{"id":392,"data":1575,"type":421,"tunes":1589},{"rows":1576,"title":412,"layout":304,"columns":1585},[1577,1579,1581,1583],{"id":396,"label":397,"values":1578},[399,399,399],{"id":401,"label":402,"values":1580},[399,399,399],{"id":405,"label":406,"values":1582},[399,399,399],{"id":409,"label":410,"values":1584},[399,399,399],[1586,1587,1588],{"id":415,"label":416},{"id":418,"label":280},{"id":420,"label":285},{},{"id":424,"data":1591,"type":226,"tunes":1592},{"text":426},{},{"id":429,"data":1594,"type":42,"tunes":1595},{"text":431,"level":219},{},{"id":434,"data":1597,"type":226,"tunes":1598},{"text":436},{},{"id":439,"data":1600,"type":226,"tunes":1601},{"text":441},{},{"id":444,"data":1603,"type":226,"tunes":1604},{"text":446},{},{"id":449,"data":1606,"type":42,"tunes":1607},{"text":451,"level":218},{},{"id":454,"data":1609,"type":343,"tunes":1612},{"meta":1610,"items":1611,"style":342},{},[458,459,460,461],{},{"id":464,"data":1614,"type":42,"tunes":1615},{"text":466,"level":219},{},{"id":469,"data":1617,"type":226,"tunes":1618},{"text":471},{},{"id":474,"data":1620,"type":226,"tunes":1621},{"text":476},{},{"id":479,"data":1623,"type":226,"tunes":1624},{"text":481},{},{"id":484,"data":1626,"type":42,"tunes":1627},{"text":486,"level":219},{},{"id":489,"data":1629,"type":304,"tunes":1637},{"content":1630,"stretched":43,"withHeadings":14},[1631,1632,1633,1634,1635,1636],[493,290,295],[495,496,497],[499,500,501],[503,504,505],[507,508,509],[511,512,513],{},{"id":516,"data":1639,"type":42,"tunes":1640},{"text":518,"level":219},{},{"id":521,"data":1642,"type":226,"tunes":1643},{"text":523},{},{"id":526,"data":1645,"type":226,"tunes":1646},{"text":528},{},{"id":531,"data":1648,"type":226,"tunes":1649},{"text":533},{},{"id":536,"data":1651,"type":42,"tunes":1652},{"text":538,"level":218},{},{"id":541,"data":1654,"type":343,"tunes":1657},{"meta":1655,"items":1656,"style":342},{},[545,546,547,548],{},{"id":551,"data":1659,"type":42,"tunes":1660},{"text":553,"level":219},{},{"id":556,"data":1662,"type":226,"tunes":1663},{"text":558},{},{"id":561,"data":1665,"type":587,"tunes":1674},{"steps":1666,"title":585,"orientation":586},[1667,1668,1669,1670,1671,1672,1673],{"label":565,"description":566},{"label":568,"description":569},{"label":571,"description":572},{"label":574,"description":575},{"label":577,"description":578},{"label":580,"description":581},{"label":583,"description":584},{},{"id":590,"data":1676,"type":42,"tunes":1677},{"text":592,"level":219},{},{"id":595,"data":1679,"type":587,"tunes":1687},{"steps":1680,"title":616,"orientation":586},[1681,1682,1683,1684,1685,1686],{"label":599,"description":600},{"label":602,"description":603},{"label":605,"description":606},{"label":608,"description":609},{"label":611,"description":612},{"label":614,"description":615},{},{"id":619,"data":1689,"type":42,"tunes":1690},{"text":621,"level":219},{},{"id":624,"data":1692,"type":226,"tunes":1693},{"text":626},{},{"id":629,"data":1695,"type":226,"tunes":1696},{"text":631},{},{"id":634,"data":1698,"type":226,"tunes":1699},{"text":636},{},{"id":639,"data":1701,"type":42,"tunes":1702},{"text":641,"level":219},{},{"id":644,"data":1704,"type":304,"tunes":1713},{"content":1705,"stretched":43,"withHeadings":14},[1706,1707,1708,1709,1710,1711,1712],[648,649,650],[652,653,654],[656,657,658],[660,661,662],[664,665,666],[668,669,670],[672,673,674],{},{"id":677,"data":1715,"type":42,"tunes":1716},{"text":679,"level":219},{},{"id":682,"data":1718,"type":226,"tunes":1719},{"text":684},{},{"id":687,"data":1721,"type":226,"tunes":1722},{"text":689},{},{"id":692,"data":1724,"type":698,"tunes":1725},{"url":694,"title":695,"excerpt":696,"ctaLabel":697},{},{"id":701,"data":1727,"type":42,"tunes":1728},{"text":703,"level":219},{},{"id":706,"data":1730,"type":226,"tunes":1731},{"text":708},{},{"id":711,"data":1733,"type":226,"tunes":1734},{"text":713},{},{"id":716,"data":1736,"type":42,"tunes":1737},{"text":718,"level":219},{},{"id":721,"data":1739,"type":226,"tunes":1740},{"text":723},{},{"id":726,"data":1742,"type":226,"tunes":1743},{"text":728},{},{"id":731,"data":1745,"type":42,"tunes":1746},{"text":733,"level":219},{},{"id":736,"data":1748,"type":226,"tunes":1749},{"text":738},{},{"id":741,"data":1751,"type":226,"tunes":1752},{"text":743},{},{"id":746,"data":1754,"type":42,"tunes":1755},{"text":748,"level":219},{},{"id":751,"data":1757,"type":751,"tunes":1765},{"items":1758,"title":778},[1759,1760,1761,1762,1763,1764],{"id":755,"answer":756,"question":757},{"id":759,"answer":760,"question":761},{"id":763,"answer":764,"question":765},{"id":767,"answer":768,"question":769},{"id":771,"answer":772,"question":773},{"id":775,"answer":776,"question":777},{},{"id":781,"data":1767,"type":42,"tunes":1768},{"text":783,"level":219},{},{"id":786,"data":1770,"type":786,"tunes":1778},{"title":788,"entries":1771},[1772,1773,1774,1775,1776,1777],{"term":280,"anchor":418,"definition":791},{"term":285,"anchor":420,"definition":793},{"term":290,"anchor":795,"definition":796},{"term":295,"anchor":798,"definition":799},{"term":300,"anchor":801,"definition":802},{"term":804,"anchor":805,"definition":806},{},{"id":809,"data":1780,"type":42,"tunes":1781},{"text":811,"level":219},{},{"id":814,"data":1783,"type":821,"tunes":1786},{"link":816,"meta":1784},{"image":1785,"title":819,"description":820},{"url":399},{},{"id":824,"data":1788,"type":821,"tunes":1791},{"link":826,"meta":1789},{"image":1790,"title":829,"description":830},{"url":399},{},{"id":833,"data":1793,"type":821,"tunes":1796},{"link":835,"meta":1794},{"image":1795,"title":838,"description":839},{"url":399},{},{"id":842,"data":1798,"type":821,"tunes":1801},{"link":844,"meta":1799},{"image":1800,"title":847,"description":848},{"url":399},{},{"id":851,"data":1803,"type":821,"tunes":1806},{"link":853,"meta":1804},{"image":1805,"title":856,"description":857},{"url":399},{},{"id":860,"data":1808,"type":821,"tunes":1811},{"link":862,"meta":1809},{"image":1810,"title":865,"description":866},{"url":399},{},{"id":869,"data":1813,"type":821,"tunes":1816},{"link":871,"meta":1814},{"image":1815,"title":874,"description":875},{"url":399},{},{"id":878,"data":1818,"type":821,"tunes":1821},{"link":880,"meta":1819},{"image":1820,"title":883,"description":884},{"url":399},{},{"id":887,"data":1823,"type":821,"tunes":1826},{"link":889,"meta":1824},{"image":1825,"title":892,"description":893},{"url":399},{},"Post erfolgreich abgerufen",{"items":1829,"source":1879,"manualIds":1880,"manualMatchedIds":1881},[1830,1837,1844,1851,1858,1865,1872],{"id":1831,"slug":1832,"title":1833,"excerpt":1834,"featuredImage":1835,"publishedAt":1836},"478","what-is-rag-the-simplest-explanation-of-how-it-works","什么是RAG？对其工作原理的最简单解释","RAG听起来很复杂，但想法很简单：在AI回答之前，它先从知识源查找有用的信息，并将该信息提供给语言模型。本指南使用一个简单的思维模型来解释RAG、LLM、状态、记忆和工具。","\u002Fuploads\u002F2026\u002F09\u002Fwhat-is-rag-the-simplest-explanation-of-how-it-works-1790377492124-khjagt.webp","2026-09-25T19:03:00.000Z",{"id":1838,"slug":1839,"title":1840,"excerpt":1841,"featuredImage":1842,"publishedAt":1843},"470","what-should-an-ai-agent-remember-forget-recompute-or-retrieve-again","AI代理应该记住、遗忘、重新计算还是再次检索什么？","长时间运行的代理不应记住所有内容。本文提供了一个实用的生命周期模型，用于决定哪些内容应属于持久记忆、哪些内容应重新检索、哪些内容重新计算更安全，以及哪些内容应过期或被取代。","\u002Fuploads\u002F2026\u002F09\u002Fwhat-should-an-ai-agent-remember-forget-recompute-or-retrieve-again-1790351131087-iehz28.webp","2026-09-25T09:43:00.000Z",{"id":1845,"slug":1846,"title":1847,"excerpt":1848,"featuredImage":1849,"publishedAt":1850},"468","ai-agent-memory-is-not-rag-how-to-separate-memory-retrieval-state-and-context","AI代理记忆不是RAG：如何区分记忆、检索、状态和上下文","代理记忆、RAG、状态和上下文经常被当作可以互换的概念来使用。它们并不是。这个实用的架构模型将这四个层次区分开来，展示了每一层各自应处的位置，并解释了当系统将它们合并为一层时会出现什么问题。","\u002Fuploads\u002F2026\u002F09\u002Fai-agent-memory-is-not-rag-how-to-separate-memory-retrieval-state-and-context-1790350560308-np0xy6.webp","2026-09-25T11:34:00.000Z",{"id":1852,"slug":1853,"title":1854,"excerpt":1855,"featuredImage":1856,"publishedAt":1857},"473","openai-agents-api-vs-agents-sdk-vs-responses-api-what-should-you-build-on-in-2026","OpenAI Agents API 与 Agents SDK 与 Responses API：2026 年你应该基于什么来构建？","OpenAI 的智能体技术栈在 2026 年 9 月发生了变化。本架构指南按运行时归属将 Agents API、Agents SDK、Responses API 和 Codex SDK 区分开来——以便团队能够选择正确的控制边界，而不是比较产品名称。","\u002Fuploads\u002F2026\u002F09\u002Fopenai-agents-api-vs-agents-sdk-vs-responses-api-what-should-you-build-on-in-2026-1790351846714-zi7lus.webp","2026-09-25T11:56:00.000Z",{"id":1859,"slug":1860,"title":1861,"excerpt":1862,"featuredImage":1863,"publishedAt":1864},"467","the-answer-validity-boundary-the-missing-layer-between-relevance-and-reliable-ai-answers","答案有效性边界：相关性到可靠AI答案之间缺失的层级","一个来源可能相关、权威，但对于所提出的问题仍然是错误的。缺失的层次是适用性：答案成立的条件，以及迫使其被重新考虑的变化。本文介绍了“答案有效性边界”这一面向人类、AI搜索和RAG系统的来源设计模式。","\u002Fuploads\u002F2026\u002F09\u002Fthe-answer-validity-boundary-the-missing-layer-between-relevance-and-reliable-ai-answers-1790272901306-1g5jly.webp","2026-09-24T11:59:00.000Z",{"id":1866,"slug":1867,"title":1868,"excerpt":1869,"featuredImage":1870,"publishedAt":1871},"471","how-to-know-whether-an-ai-agent-actually-used-the-right-evidence","如何判断一个AI智能体是否真正使用了正确的证据","AI代理可以引用来源，却仍然使用错误的证据。本文介绍一种实用方法，用于核查主张支持、来源权威性、适用性、出处，以及证据是否实际影响了答案。","\u002Fuploads\u002F2026\u002F09\u002Fhow-to-know-whether-an-ai-agent-actually-used-the-right-evidence-1790351317188-o5z9ve.webp","2026-09-25T11:47:00.000Z",{"id":1873,"slug":1874,"title":1875,"excerpt":1876,"featuredImage":1877,"publishedAt":1878},"466","the-gpu-is-not-the-product-future-proof-private-ai-architecture","GPU 不是产品：面向未来的私有 AI 架构","私有 AI 基础设施不应围绕单一 GPU 或单一模型来设计。更具韧性的做法是将快速推理 GPU、内存充裕的 AI 系统、物理 AI 节点以及可选的前沿云模型，统一置于一个具备能力感知的路由层之后。","\u002Fuploads\u002F2026\u002F09\u002Fthe-gpu-is-not-the-product-future-proof-private-ai-architecture-1790140878812-8hsl39.webp","2026-09-23T01:19:00.000Z","fallback",[],[]]