【AI测试智能体】Tool、Toolset、Skill、Agent、MCP——五个概念,一篇彻底搞懂
Tool、Toolset、Skill、Agent、MCP——五个概念,一篇彻底搞懂
很多人第一次接触 AI Agent 框架时,都会被这几个词搞晕:Tool、Toolset、Skill、Agent、MCP……它们到底有什么区别?不都是"给 AI 加能力"吗?
别急。今天不用任何代码,用几个生活里的例子,让你一次搞懂这五个概念。
一、Tool(工具):一个只会干一件事的"傻小子"
先说人话
Tool 就是一个只会干一件事的工具。它不思考、不判断、不问为什么——你让它干嘛它就干嘛,干完就把结果交给你。
生活例子:厨房里的单一功能电器
想象你的厨房里有这些东西:
- 搅拌机:你按开关,它就把东西打碎。但它不知道你要做果汁还是做汤。
- 烤箱:你设温度和时间,它就把东西烤熟。但它不知道你要烤蛋糕还是烤鸡翅。
- 电饭煲:你按按钮,它就把米煮熟。但它不知道你要做米饭还是煮粥。
每一个电器,就是一个 Tool。
它们有三个共同特点:
- 只干一件事——搅拌机不会烤东西,烤箱不能搅拌
- 不问为什么——你让它工作它就工作,不关心你要做什么菜
- 干完交差——搅拌完给你一碗糊糊,烤箱完给你一盘鸡翅
在 AI 世界里
AI 的 Tool 也一样:
| 生活电器 | AI 的 Tool | 干什么 | 不知道什么 |
|---|---|---|---|
| 搅拌机 | web_search |
搜索网页 | 你为什么要搜索 |
| 烤箱 | read_file |
读取文件内容 | 你读这个文件干嘛 |
| 电饭煲 | write_file |
写入文件内容 | 你写进去的是什么 |
关键理解:Tool 是"傻"的——它只管执行,不管思考。
二、Toolset(工具集):给不同岗位发不同的工具箱
先说人话
Toolset 就是把相关的 Tool 打包成一个工具箱,然后决定"谁可以拿哪个工具箱"。
生活例子:装修队的工具箱
假设你请了一个装修队来家里干活:
-
电工来了,你给他一个"电工工具箱":里面有万用表、电线钳、绝缘胶带。
- 电工工具箱里没有油漆刷——因为电工不需要刷漆。
-
油漆工来了,你给他一个"油漆工具箱":里面有油漆刷、滚筒、砂纸。
- 油漆工具箱里没有电线钳——因为油漆工不需要接线。
-
水管工来了,你给他一个"水管工具箱":里面有管钳、生料带、水压表。
- 水管工具箱里没有油漆刷——因为水管工不需要刷漆。
每个工具箱(Toolset)里装什么工具(Tool),取决于这个岗位需要干什么活。
而且,电工拿到电工工具箱后,他根本不知道油漆工具箱里有什么——他连"油漆刷"这个东西都没见过。这不是"不让你用",而是"你压根不知道它的存在"。
在 AI 世界里
| 装修岗位 | AI 的 Toolset | 里面有什么 Tool | 没有什么 Tool |
|---|---|---|---|
| 电工 | terminal(终端工具箱) |
执行命令、管理进程 | 没有浏览器、没有图片生成 |
| 油漆工 | web(网页工具箱) |
搜索网页、抓取内容 | 没有执行命令、没有读写文件 |
| 水管工 | file(文件工具箱) |
读文件、写文件、搜索文件 | 没有终端、没有网页搜索 |
关键理解:Toolset 不是"分组"那么简单——它是在控制"谁能看到什么、能用什么"。
三、Skill(技能):一张写满步骤的"菜谱"
先说人话
如果说 Tool 是工具(能干什么),Skill 就是方法论(该怎么干)。Skill 告诉你:先做什么、再做什么、最后做什么。
生活例子:做一道"红烧肉"
假设你不会做红烧肉。有人给了你一张菜谱:
红烧肉做法:
1. 准备五花肉 500 克,切块
2. 冷水下锅焯水,捞出备用 ← 这里用到了"锅"这个工具
3. 锅里放油,加冰糖炒出糖色 ← 这里用到了"锅"和"灶台"
4. 下肉块翻炒,加酱油、料酒 ← 这里用到了"锅"
5. 加水没过肉,大火烧开转小火炖40分钟 ← 这里用到了"灶台"
6. 大火收汁,出锅 ← 这里用到了"锅"
这张菜谱就是 Skill。
注意几个关键点:
第一,菜谱本身不炒菜。 菜谱不会自己把肉做熟——它只是告诉你"用锅、用灶台、按这个顺序操作"。真正干活的是你和你的厨具。
第二,菜谱教你调用正确的工具。 菜谱说"冷水下锅"——它知道这时候该用"锅"。菜谱说"大火烧开"——它知道这时候该用"灶台"。菜谱不生产食物,但菜谱知道怎么用工具做出食物。
第三,菜谱可以共享和修改。 你把菜谱分享给朋友,朋友也能做出红烧肉。你发现糖色炒老了,改一下"冰糖减到 15 克",下次就好了。Skill 也一样——写好之后可以反复用、可以改进。
Skill 和 Tool 的区别(最重要的区别!)
这是最容易混淆的地方,用一张表说清楚:
| — | Tool(工具) | Skill(技能) |
|---|---|---|
| 是什么 | 一把菜刀 | 一张菜谱 |
| 能干什么 | 切东西 | 告诉你先切菜、再热锅、再下锅炒 |
| 会思考吗 | 不会——你让它切它就切 | 会——它知道先做什么后做什么 |
| 能独立完成任务吗 | 不能——菜刀自己炒不了菜 | 不能——菜谱自己炒不了菜 |
| 合在一起呢? | 菜刀 + 菜谱 + 厨师 = 一道菜 | 菜刀 + 菜谱 + 厨师 = 一道菜 |
Tool 是"手",Skill 是"脑"。手和脑加起来,才能完成一件事。
四、Agent(智能体):一个能自己干完一整件事的"大厨"
先说人话
Agent 就是能自己规划、自己执行、自己检查的"大厨"。你给它一个目标,它自己决定用什么工具、按什么顺序、怎么完成。
生活例子:你请了一个大厨
假设你对大厨说:"帮我做一顿晚饭。"
大厨不会问你"先做什么?再做什么?"——他自己来:
你:帮我做一顿晚饭。
大厨(心里想):
→ 先看看冰箱里有什么材料 (调用"看冰箱"这个工具)
→ 有肉、有菜、有米 (观察结果)
→ 那就做三菜一汤吧 (做决定)
→ 先淘米煮饭 (调用"电饭煲"工具)
→ 饭煮上了,开始切菜 (调用"菜刀"工具)
→ 切好了,热锅炒肉 (调用"灶台"+"锅"工具)
→ 肉炒好了,尝一口……咸了,加点水 (观察结果,调整计划)
→ 接着炒青菜 (继续执行)
→ 汤也炖上了 (并行处理)
→ 四道菜都好了,摆盘上桌 (完成任务)
大厨:好了,吃饭!
注意大厨的整个过程:
- 自己规划——不需要你告诉他先煮饭再炒菜
- 自己选工具——知道什么时候用菜刀、什么时候用灶台
- 自己调整——发现咸了,主动加水
- 自己检查——每道菜做完自己尝
这就是 Agent——你给它一个目标,它自己走完从开始到结束的全过程。
Agent 和普通聊天机器人的区别
普通聊天机器人(没有 Agent 能力):
你:今天天气怎么样? 机器人:我不知道,我的训练数据里没有实时天气信息。
Agent(有自主行动能力):
你:今天天气怎么样? Agent:(自己决定调用"搜索天气"工具)→ (看到结果:晴天 25°C)→ "今天晴天,25°C,适合出门。"
关键区别:Agent 会主动去"做"事情,而不是只会"答"问题。
子 Agent:大厨带学徒
大厨忙不过来的时候,可以派学徒去干活:
大厨:"小李,你去把肉切了。小王,你去把汤看着。"
小李和小王就是子 Agent:
- 他们各自有一个明确的任务(切肉 / 看汤)
- 他们只有有限的工具(小李只有菜刀,没有灶台使用权)
- 他们干完后向大厨汇报结果("肉切好了" / "汤好了")
- 大厨不需要知道他们过程中的每一个细节——只要结果
五、MCP(Model Context Protocol):一个"万能插座"
先说人话
MCP 就是一个标准接口,让 AI 能连接各种外部的、第三方的工具和服务。不管这个工具是谁开发的、用什么语言写的、跑在哪里——只要它支持 MCP 协议,AI 就能用。
生活例子:家里的插座
想象一下没有标准插座的时代:
- 台灯需要一个特殊的插头
- 电视需要另一个特殊的插头
- 冰箱又需要一个不同的插头
- 每个电器都要配一个专用的插座,墙上全是各种各样的洞
这太乱了!
后来有了标准插座(就是你现在墙上那个两孔或三孔的插座):
- 不管什么电器,只要插头符合标准,插上去就能用
- 你不需要关心电器内部是怎么工作的——插上去就行
- 电器厂商也不需要关心你的墙里是怎么布线的——做个标准插头就行
MCP 就是 AI 世界的"标准插座"。
MCP 解决了什么问题
在 MCP 出现之前:
Hermes Agent 想用 GitHub?→ 自己写代码对接 GitHub API Hermes Agent 想用数据库?→ 自己写代码对接数据库 Hermes Agent 想用某个 SaaS?→ 自己写代码对接那个 SaaS 的 API
每个工具都要单独对接,累死了。
有了 MCP 之后:
GitHub 自己开发了一个 MCP Server(实现了 MCP 标准接口) → Hermes Agent 只需要"插上"这个 MCP Server,就能用 GitHub 的所有功能 → Claude Desktop 也能"插上"这个 MCP Server → Cursor 也能"插上"这个 MCP Server → 任何支持 MCP 的 AI 应用都能用
一次开发,到处运行。就像你买一个台灯,插到任何一家的插座上都能亮。
MCP 工具 vs 内置工具
| — | 内置 Tool | MCP Tool |
|---|---|---|
| 比喻 | 家电自带的功能(比如电饭煲的"煮饭"按钮) | 通过标准插座连接的第三方电器(比如你新买的空气炸锅) |
| 谁开发的 | Agent 框架自己写的 | 第三方开发者写的 |
| 用什么语言 | 必须是框架支持的语言(Python) | 任意语言(Node.js、Go、Rust……都行) |
| 怎么添加 | 改框架代码,重新部署 | 配置一下就能用,不用改框架 |
| 例子 | read_file(框架内置的读文件功能) |
GitHub MCP Server(第三方开发的 GitHub 工具) |
关键理解:MCP 让 AI 的能力边界不再受限于框架内置了什么——只要社区有 MCP Server,AI 就能用。
六、五个概念串起来:一场家庭晚餐
上面五个概念单独说完了,现在把它们串起来,用一个完整的场景来理解它们怎么协作。
场景:你要在家办一场家庭晚餐
你(用户)对大厨(Agent)说:"帮我准备一顿家庭晚餐,六个人吃,要有鱼有肉有蔬菜。"
第一步:Agent 开始规划
大厨(Agent)接到任务,开始思考:
- 六个人 → 需要三菜一汤一主食
- 要有鱼 → 清蒸鲈鱼
- 要有肉 → 红烧肉
- 要有蔬菜 → 蒜蓉西兰花
- 还要煮饭
第二步:Skill 提供菜谱
大厨从菜谱架上抽出三张菜谱:
- 📄
清蒸鲈鱼.md(Skill)→ 告诉你:鱼要蒸 8 分钟,先腌后蒸 - 📄
红烧肉.md(Skill)→ 告诉你:肉要炖 40 分钟,先炒糖色 - 📄
蒜蓉西兰花.md(Skill)→ 告诉你:西兰花焯水 30 秒,保持脆嫩
这些菜谱就是 Skill——它们不炒菜,但告诉大厨每一步该怎么做。
第三步:Toolset 分配工具
大厨看了看厨房,开始分配:
- 灶台 A(
terminal工具集)→ 负责炒菜、炖肉 - 灶台 B(
web工具集)→ 负责查菜谱、看天气(决定要不要关窗) - 冰箱(
file工具集)→ 负责存取食材
这就是 Toolset——不同岗位拿到不同的工具箱。
第四步:Tool 执行具体操作
大厨开始干活了:
- 🔪 拿菜刀切肉(调用
terminal工具执行命令) - 🍳 热锅倒油(调用
terminal工具控制火候) - 📖 查一下蒸鱼要几分钟(调用
web_search工具搜索) - 📝 记录一下这次用了多少盐(调用
write_file工具写文件)
每一个具体操作,就是一个 Tool 在干活。
第五步:MCP 连接外部资源
大厨发现家里没有鲈鱼了。他拿出手机,用"外卖 APP"(这就是 MCP):
- 外卖 APP 连接了"海鲜市场"这个第三方服务
- 下单:鲈鱼两条,30 分钟送到
- 海鲜市场(第三方)通过外卖 APP(MCP 协议)把鱼送到了
如果没有 MCP,大厨得自己跑去海鲜市场买鱼。有了 MCP,一个标准接口,任何供应商都能送货。
第六步:子 Agent 并行工作
时间不够了,大厨叫来两个帮手:
大厨:"小李,你去蒸鱼。小王,你去炒西兰花。我亲自炖肉。"
- 小李(子 Agent 1)→ 只负责蒸鱼,只有蒸锅的使用权
- 小王(子 Agent 2)→ 只负责炒青菜,只有灶台 B 的使用权
- 大厨(主 Agent)→ 负责统筹,等两人汇报后做最后的摆盘
三个人同时干活,比一个人干快三倍。这就是子 Agent 的并行能力。
最终结果
60 分钟后,一桌菜上桌了:
- 清蒸鲈鱼 ✅
- 红烧肉 ✅
- 蒜蓉西兰花 ✅
- 米饭 ✅
- 紫菜蛋花汤 ✅
从你说出"帮我准备一顿家庭晚餐"到菜上桌,中间大厨自己规划、自己选菜谱、自己拿工具、自己叫外卖、自己分配任务给帮手——你什么都没管。
这就是 AI Agent系统的完整工作方式。
七、一张图总结
你说:"帮我准备一顿家庭晚餐"
│
▼
┌───────────────────────────────────────────┐
│ Agent(大厨) │
│ "我来规划:三菜一汤一主食" │
│ ┌─────────────────────────────────────┐ │
│ │ Skill(菜谱) │ │
│ │ "红烧肉要先炒糖色再炖40分钟" │ │
│ │ "蒸鱼只要8分钟" │ │
│ │ ┌───────────────────────────────┐ │ │
│ │ │ Toolset(工具箱分配) │ │ │
│ │ │ 灶台A → 炒菜炖肉 │ │ │
│ │ │ 灶台B → 查资料炒青菜 │ │ │
│ │ │ ┌─────────────────────────┐ │ │ │
│ │ │ │ Tool(具体操作) │ │ │ │
│ │ │ │ 切肉、热锅、倒油、翻炒 │ │ │ │
│ │ │ │ 搜索"蒸鱼几分钟" │ │ │ │
│ │ │ │ 记录"这次用了5克盐" │ │ │ │
│ │ │ └─────────────────────────┘ │ │ │
│ │ └───────────────────────────────┘ │ │
│ │ │ │
│ │ MCP(外卖APP)→ 叫海鲜市场送鱼 │ │
│ │ 子Agent(小李)→ 去蒸鱼 │ │
│ │ 子Agent(小王)→ 去炒青菜 │ │
│ └─────────────────────────────────────┘ │
└───────────────────────────────────────────┘
│
▼
"好了,吃饭!"
八、一句话记住每个概念
| 概念 | 一句话 | 生活类比 |
|---|---|---|
| Tool | 一个只会干一件事的工具 | 菜刀——只会切 |
| Toolset | 一组工具的权限包 | 电工工具箱——里面只有电工用的工具 |
| Skill | 一份告诉你步骤的指南 | 菜谱——告诉你先切后炒再出锅 |
| Agent | 一个能自主完成目标的"人" | 大厨——从规划到上桌全包了 |
| MCP | 一个标准接口,连接外部世界 | 插座——任何标准电器都能插上就用 |
最后总结:
Tool 是手——它能做一件事。 Toolset 是手套——限定手能碰什么。 Skill 是脑——知道手该按什么顺序做事。 Agent 是人——有手有脑,能自己干完一件事。 MCP 是门——让人能走出去,连接外面的世界。
五个概念,层层构建,缺一不可。
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐



所有评论(0)