
一 先别急着造"自己的 Agent 平台"
这两年身边做平台的朋友,基本都踩过同一个坑。
上来就想做一整套"万能智能体平台":沙箱、工具管理、工作流、知识库、观测,一口气全包。
结果半年过去,业务一个没落地,基础设施先把自己卷趴下。
冷静一点看,现在行业趋势已经很清楚了:
- 工具接入这块,有了 MCP 在快速统一,主流厂商都在往这个标准靠。
- 智能体互联这块,大家在围绕 A2A 把它当"Agent 版 HTTP"来建设。
- 能力建模这块,大模型厂在推自己的 Skills 模型,把"技能"做成可配置、可组合、可下发的能力包,而不是散乱的插件。
所以,如果你还在纠结"要不要自研个大而全的 Agent 平台",很大概率是在和产业方向硬刚。
更现实的做法,反而是:承认外面已经有标准,把自己收缩成------接 MCP、接 A2A、管理 Skills 的那层"配置和场景中台"。
这是背景。下面拆开讲。
二 MCP:别再一套套写 SDK 了 ,这么干太累
如果你这两年写过"给大模型接工具"的代码,大概经历过这几步:
HTTP API 一套;Shell 命令一套;公司内部 RPC 再一套。
每换一个模型厂商,再配一遍"工具定义格式"和"结果解析逻辑"。

MCP 出来的目的就很直接:
- 把"模型 ↔ 外部世界"这条链路抽象成统一协议,模型叫的是 MCP 客户端,外部系统是 MCP 服务器,中间走一套标准化消息和生命周期。
- 你写一个 MCP server,把你家的数据库、文件系统、业务 API 暴露成工具;任何支持 MCP 的客户端(桌面助手、在线 IDE、内部 Agent SDK)都能无感接入。
近一年的几个变化,其实挺关键:
- 规范把安全当成一等公民,默认 MCP server 是敏感资源,必须配好鉴权、作用域,避免被恶意 server 趁机拿走更多权限。
- 主流厂商陆续站队:大模型服务、操作系统、浏览器插件都在原生支持 MCP,让"接一次、到处用"变得现实。
这意味着什么?
意味着你完全可以这么干:
- 公司内部只维护一小撮 MCP Server:比如"文档中心 server""监控 server""工单 server"。
- 不管你用哪家模型、哪个 Agent 框架,只要会讲 MCP,就都能复用这几个 server,不用重写工具层。
从工程角度看,MCP 把以前零散的 SDK,收敛成一个**"工具总线"**。
你不用给每个模型、每个产品线都造一堆重复工具,只要把"总线"接好。
三 Skills:别再把"工具"和"能力"混在一起 ,讲真这么做太复杂了
很多团队现在的 Agent 设计,有个很明显的问题:
所有能力都被塞成"一个个 tool"。
结果是什么?
- 模型会了一堆低层 API,却没有"怎么用这些 API 解一个业务问题"的套路。
- 提示词越写越长,系统 prompt 变成垃圾场,既讲"角色",又讲"策略",还顺带贴一堆接口文档。
最近,各家在往一个方向收敛:
把"工具"和"技能"拆开。
- 工具更像"手":能读写数据库、调 HTTP、跑脚本,是具体动作。
- 技能更像"脑子里的一套打法":比如"审阅合同""排查线上事故""做一个发布计划",强调的是流程、判断标准、风险边界。

有的厂商已经把这一套产品化成 Agent Skills:
- 每个 Skill 是一个可复用的能力包,里面有:细粒度指令、元数据、可选的脚本或资源、能力边界说明。
- 一个 Agent 可以绑定多种 Skill,再按场景激活,而不是每次都从零开脑洞。
对要做"数字分身"或者内部助手的团队来说,这个理念很关键:
你要管理的,应该是"某个分身有哪几种技能",而不是"暴露了多少个 tool"。
落到实现上,可以这么拆:
- 把"排查线上告警"写成一个 Skill:
- 输入是什么(告警 ID、时间范围)。
- Agent 应该走哪几步(查监控、查最近变更、查工单、输出推理链)。
- 哪些工具可用,哪些动作必须二次确认。
- 把"写周报"写成另一个 Skill:
- 允许访问哪些日志、哪些项目数据。
- 输出结构、语气有什么约束。
当你有了几十个 Skill,再往上做"数字分身配置中心":
勾选一下"这个分身具备 A、B、C 三种技能",就远比裸配一堆 tool 来得稳。
四 A2A:当 Agent 不再孤立
如果说 MCP 管的是"Agent 怎么伸手碰世界",那 A2A 管的就是"Agent 怎么互相说话"。

以前做多智能体,大部分人都是在自己系统里硬写:
- 一个大 orchestrator,里面 if-else 切换不同子 Agent。
- 进度、状态、上下文靠自定义结构体在内部传。
这种写法有两个问题:
- 你的 Agent 只能活在自己系统里,没法和别人的 Agent 协作。
- 同一家公司不同团队写的 Agent,根本互不认识,各玩各的。
A2A 的目标就一句话:
给 Agent 之间的通信,补一个"HTTP 级别"的通用协议。
大概长这样:
- 传输层走标准的 JSON-RPC over HTTP,消息格式、错误处理都被写死,减少各家自创方言。
- 每个 Agent 用一张"Agent Card"描述自己:能做什么、提供哪些方法、需要什么鉴权,由此实现自动发现和能力宣告。
- 支持同步、流式、异步推送,适合长任务、协同任务,人可以随时插进来当"环节里的一个参与者"。
- 安全上,沿用成熟的 OAuth2、Token、网关体系,企业侧更好接进现有审计和风控。

你可以想象一下公司的未来形态:
- 财务有一套报销 Agent,运维有一套排障 Agent,HR 有一套招聘 Agent。
- 某个"数字分身"接到任务时,并不需要自己什么都懂,而是通过 A2A 去问别的 Agent:比如让"报销 Agent"去算预算,让"排障 Agent"去查服务。
从此,智能体不再是一个个孤岛,而是一个松耦合的服务网 。
而 A2A 就是这个网的"通用语"。
五 真正落地时,可以怎么选型
说这么多,落成代码其实可以很克制。
给你一个比较现实、适合中型团队的路线:
-
先把"工具总线"站起来:选 MCP,不要自造协议。
- 把最常用的三个系统接成 MCP Server:知识库、监控、工单。
- 内部任何 Agent、助手、插件,不管哪个模型,都统一走 MCP 访问这些资源。
-
在你们现有的 Agent / 数字分身平台里,引入 Skills 概念。
- 把现在写在 prompt 里的"套路"抽出来,做成可配置的技能:有名字、有用途、有输入输出约束。
- 给每个业务场景定义一个"分身配置":绑定模型、绑定技能、绑定可用工具(通过 MCP)。
-
等到业务线里真的出现"多智能体协作"需求,再上 A2A。
- 先挑一件事,比如"从监控到工单再到通知",拆成三个 Agent,用 A2A 接起来,而不是在一个服务里写死整个流程。
- 把每个 Agent 的能力写清楚,用 Agent Card 对外暴露,这一步做得好,将来不同团队、不同语言写的 Agent 也能互通。
-
整个过程中,克制住"做平台"的冲动。
- 你更像是在搭一个"Agent 配置与治理层":
- 管 MCP server 的接入和权限。
- 管 Skills 的版本、灰度和组合。
- 管哪些 Agent 对外暴露 A2A 能力。
- 运行时、沙箱、多模型路由这些,能用云厂商或现成框架就用,不要轻易 All in 自研。
- 你更像是在搭一个"Agent 配置与治理层":
六 写在最后
MCP、Skills、A2A 听起来都挺唬人的,实际上做的事很朴素:
- MCP 让你少写几套"接工具的胶水代码"。
- Skills 让你把"会做事"这件事模块化,别把全部业务逻辑塞进一条 prompt。
- A2A 让不同 Agent 之间有话可聊,不至于每个团队都重新发明一遍"内部调用协议"。
你真正在项目里要做的,是用这三个方向,帮自己把边界划清楚:
哪些是要交给行业标准和厂商生态去扛的,
哪些是你们团队必须吃透、沉淀成自己的"能力资产"的。
搞清楚这一点之后,再回头看市面上一堆"某某 Agent 平台""某某智能体框架",心态会平稳很多。
你会发现,能决定你走多远的,从来不是你选了哪个框架,而是你有没有认真回答一个问题:
------在这个新一轮基础设施洗牌里,你是要当"造轮子的人",还是那个真正把轮子装到车上的人。