首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >一文读懂Function Call、Tools、MCP、A2A、Multi-Agent与Skills

一文读懂Function Call、Tools、MCP、A2A、Multi-Agent与Skills

作者头像
匙亮旭
发布2026-06-17 20:57:53
发布2026-06-17 20:57:53
1520
举报

其实Skills的爆火也有一段时间了,最近的热点已经被OpenClaw(原Clawbot)霸屏了,但还是有不少人问我Skills是啥,和之前MCP或和SubAgent有什么区别,那今天我就不只介绍Skills了,而是会从AI技术发展的角度,盘一盘Function Call、Tools、MCP、A2A、Multi-Agent与Skills这几个技术有什么关联和区别。

Funtion Call、Tools与MCP

2022年底,ChatGPT-3.5推出后不久,大家很快意识到了一个问题,大模型只能回答自己固有的知识,无法回答自己固有知识以外的内容,或者即使回答了,也是胡说八道,例如你问大模型,现在某地天气如何,它是无法正确回答的。

这时候,OpenAI率先出手,引入了Function Call(函数调用)的概念。其背后的原因很简单,既然有些事大模型自己做不了,那就告诉大模型有哪些函数可以调用,然后让大模型自己决定什么时候该调用哪个函数,例如询问某地天气时,大模型自己会调用你事先写好的get_weather函数,传入参数是city,最后将get_weather函数执行后的结果返回再喂给大模型,大模型生成最终回复。

随着Function Call的流行,继而出现了一个新的概念,Tools,代表了一套标准化的工具体系,每个工具有统一的描述格式(名称、功能说明、输入和输出Schema),更方便大模型自主发现和调用工具。

但是,新问题又来了,OpenAI也好,Anthropic也好,Google也好,都有自己的工具体系,例如我写了一个get_weather工具给ChatGPT能用,但是我还想让Claude也能调用,那就需要依据Anthropic的标准再写一套才行,因为标准不统一。

所以这时候,Anthropic站了出来,提出了MCP(Model Context Protocol),即模型上下文协议。MCP也很好理解,它定义一个标准接口,就像USB一样,将所有的工具服务都做成MCP Server,所有基于大模型的应用都做成MCP Client。任何Client可以即插即用地连接任何Server。

MCP的出现,迅速引爆了AI开发社区,现在社区里有很多现成的MCP Server,直接集成访问即可,例如GitHub MCP Server等(否则之前是需要自己写一堆代码对接才可以)。

最后对上面内容进行总结,Function Call让大模型开启了可以获取外部知识的能力,Tools给了AI一个工具箱,而MCP则是给整个工具生态定义了万能的接口

A2A

既然MCP打通了大模型与工具之间的调用,那智能体间通信是不是也需要有一个协议呢,而这次则是Google站了出来, 推出了A2A(Agent-to-Agent)协议,作为Agent之间的标准化通信方式。但是遗憾的是,A2A没有达到MCP的热度,MCP已在开发者社区中形成了既定的事实标准,而A2A因为落地场景偏向企业级、上手门槛高等原因,推进速度缓慢。

Multi-Agent

在MCP爆火之后,除了A2A,还有一个得到广泛应用的思想是Multi-Agent(多智能体协作),SubAgent的使用也属于这一范畴。核心思想不是让一个Agent去处理所有的事,而是让多个Agent分工合作,每个Agent有自己的角色定位、专属工具和专业领域,还会有一个主Agent负责整体调度,它们相互协调共同完成复杂任务。

Multi-Agent整体来看,并不是类似于上面那些,由谁提出的某种规范或协议,只是一种广泛应用的复杂场景下Agent实现方式。

Skills

Skills(技能)的爆火,我个人感觉,完全是一个意外,也是Anthropic的杰作。Claude Code作为2025年爆火的AI编程工具之一,在10月发布了Skills,但当时没有掀起那么大热潮,因为我也一直在用CC,也没过多关注推出的Skills,官方也没有大肆去推这个特性,毕竟只在Claude Code中出现,使用者也很有限。后来可能是因为大家看了Simon Willison写的一篇博文《Claude Skills are awesome, maybe a bigger deal than MCP》,慢慢大家去用Skills,口碑开始传开了,持续发酵。在2025年12月,Anthropic才将Skills作为开放标准正式发布,OpenAI也迅速在Codex CLI中采用了同样的SKILL.md格式,所以Skills的爆火,也没有多少时间,而且得益于在Claude Code中的成功。下面,就来具体给大家讲讲Skills,到底是什么,也是大家问得最多的。

Skills的本质,可以理解为是一个最佳实践方式的集合,积累了过去一些好的任务实践方式,例如,使用某类工具完成某类任务时,应该遵循哪些规范、注意哪些坑、采用哪些经过了验证的正确做法。

具体实践上,你需要在工程中创建一个skills文件夹,里面可以有各种技能文件夹,如下图所示,是Anthropic官方给出的一些skills。具体可以参照Github地址:https://github.com/anthropics/skills

每个Skill文件中,核心是一个SKILL.md文件,该文件以---标记之间的YAML元数据开始,必须包含name和description,然后是Claude在Skill活跃时遵循的Markdown说明,除此之外,也可以附带脚本、模板等资源。

AI在执行任务时会自动判断需要加载哪些Skill,然后按Skill中的指导来操作,本质上是一种按需加载的即时经验注入。具体流程如下:

1、元数据发现:当Claude Code启动时,它会扫描所有可用的Skills。但是,它只会加载每个SKILL.md文件中头部的信息,尤其是name和description字段,所以这两个字段一定要描述清楚你的Skill是干嘛的。扫描后,它会将这些信息注入到System Prompt中。

2、即时加载:用户提出一个具体任务后,会去加载Skills进行匹配,如果发现有符合可用的,就会触发这个Skill。只有这个时候,它才会去真正地读取对应SKILL.md文件的主体内容(下面的Markdown部分)。

3、指令执行:对于SKILL.md中的指令,如果发现该Skill用到了目录中的其他文件,例如某个Python脚本,AI只有在执行时,才会去加载那个Python脚本,所以这是更深层次的按需加载,它允许我们构建包含大量脚本、模板、数据和文档。这样设计的好处,对于复杂的Skill,我们不用担心会一次性撑爆AI的上下文窗口。

最后对Skills做一个总结,SKills的本质是经验,解决了如何能把任务做得更好,而上面说的Tools和MCP是能力,解决的是能不能做的问题,二者是有区别的。

Skills因为现在非常火,类似于MCP的影响力,开源社区也有大量Skills涌现,大家都可以拿来参考直接用,AI各大厂商更是纷纷在自己的产品中,都支持了Skills。

----

好了,今天的文章就写到这吧,最后感叹这三年AI的进化史,有一条暗线贯穿始终:AI正在从一个对话工具变成了生产力的基础设施。现在爆火很多AI热点内容,终归只是AI发展过程的中间产物,一定不会是最终答案。2026年初,Claude的Skills与龙虾OpenClaw爆火,打响了第一枪,接下来,让我们看看还会有什么。

(正文完)

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2026-02-07,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 极客e家 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档