一口气讲清楚Agent、Skill、MCP、Tool到底是什么?

Agent、Tool、Skill、MCP——这四个词几乎出现在每一篇 AI Agent 相关的文章里,但很少有人把它们之间的区别和联系讲透。这篇文章用最平实的方式,把它们各自的定义、边界、以及彼此的关系捋清楚。


Agent 是什么

最直觉的理解:Agent 是一个能自己想、自己做的程序。

传统软件像计算器——按一个按钮执行一个操作,不按就不动。Agent 不同,它接收一个目标,然后自己拆解步骤、选择工具、执行动作、观察结果,不满意还会自己修正再来一次。

用一个类比:Agent 像一个新入职的实习生。你给他一个任务"帮我订下周二的会议室",他会自己打开日历系统查空闲、找到合适的房间、发预约请求、遇到冲突自己换一间——而不是每一步都回来问你。

Agent 的核心特征:

  • 自主决策:根据当前状态决定下一步做什么
  • 循环执行:观察 → 思考 → 行动 → 再观察,直到任务完成
  • 能力调度:知道自己有哪些工具可用,并选择合适的来用

一个典型的 Agent 工作循环:

收到任务 → 理解意图 → 拆分步骤 → 选工具执行 → 看结果 → 没完成就继续

Agent 的"聪明程度"取决于背后的模型能力。大到 GPT-4 级别的云端通用模型,小到针对特定任务训练的 4B 参数端侧模型,都能作为 Agent 的"大脑"。关键不在大小,在于它能不能在目标场景里做出靠谱的决策。


Tool 是什么

如果 Agent 是那个"动脑子"的人,Tool 就是他手里拿的锤子、螺丝刀、万用表。

Tool 是一个单一功能的原子操作。 它不思考,不决策,调一次做一件事,做完就结束。

举几个典型的 Tool:

  • web_search(query) — 搜索网页,返回结果列表
  • read_file(path) — 读取一个文件的内容
  • send_email(to, subject, body) — 发一封邮件
  • click(x, y) — 在屏幕坐标 (x, y) 处点击一下

它们的共同特点:

特征 说明
无状态 每次调用独立,不记得上次干了什么
单一职责 一个 Tool 只做一件事
不含决策 该不该调、什么时候调,是 Agent 的事
声明式接口 通过描述告诉外界"我能做什么、需要什么参数"

一个 Tool 的声明大致长这样(伪代码):

名称: web_search
描述: 搜索网页并返回结果
参数: query(字符串, 必填), count(整数, 默认10)

Agent 看到这个声明,就知道什么时候可以用它、怎么调用它。

判断标准:如果一个功能只需要"输入 → 输出"就能完成、中间不需要判断和编排,那它就是一个 Tool。


Skill 是什么

Tool 是螺丝刀,Skill 是"拆装电脑"这项技能。

Skill 是封装了领域知识的复合能力模块。 它内部可能调用多个 Tool,并且知道调用的顺序、等待的时机、出错时怎么重试。

为什么需要 Skill?因为现实中很多任务不是调一次 Tool 就能完成的。

比如"在一个网页表单里填写信息"这个任务:

  1. 先截屏看当前界面
  2. 识别表单元素的位置
  3. 规划填写顺序
  4. 逐个点击输入框、输入内容
  5. 每填完一个,再截屏确认是否成功
  6. 如果某个输入框没识别对,换个策略重试

这里面每一步都是 Tool 调用(截屏、点击、输入),但把它们串起来的逻辑——先看再做、做完验证、失败重试——这些是领域知识。这些知识封装在一起,就成了一个 Skill。

Skill 和 Tool 的区别

维度 Tool Skill
粒度 单步操作 多步工作流
知识含量 无(纯执行) 有(知道怎么编排、何时重试)
状态 无状态 可以维护中间状态
类比 一把螺丝刀 "拆笔记本换硬盘"的完整技能
对外暴露 函数签名 自然语言描述(说明什么场景下该用)

一个 Skill 通常包含:

  • 能力描述:用自然语言告诉 Agent “遇到什么情况可以找我”
  • 内部逻辑:Tool 调用的编排顺序、异常处理策略
  • 领域知识:比如"GUI 操作后要等界面稳定再截屏"、“遇到弹窗先关闭再继续”

Agent 在接到任务时,会根据描述自动匹配合适的 Skill 来完成工作。就像一个人学会了"做饭"这个技能之后,你说"做顿晚饭"他就知道该怎么办——切菜、炒菜、调味的顺序和火候都在技能里封装好了,不用你一步一步指挥。


MCP 是什么

前面说到 Tool,但有一个现实问题:Tool 的格式在不同框架之间不统一。

为 LangChain 写的 Tool 插件,搬到 AutoGen 得重写。Dify 的 Tool 接口和 Coze 的又不一样。每换一个框架,同样的功能得重新适配一遍。

MCP(Model Context Protocol)是一个开放的标准协议,定义了 Agent 如何发现和调用外部能力。 它由 Anthropic 在 2024 年底发布,目标是成为 AI Agent 世界的"USB 接口"。

一个类比

USB 出现之前,打印机用并口、鼠标用 PS/2、相机用 FireWire,接什么设备得找对应的线。USB 标准化之后,一个接口通吃。

MCP 做的是同样的事:定义一套标准的"能力暴露"和"能力调用"方式,让任何 Agent 框架都能连接任何 MCP Server。

MCP 的结构

Agent ←→ MCP Client ←→ MCP Server ←→ 具体能力(Tool / 数据源)

一个 MCP Server 可以暴露三类东西:

类型 作用 例子
Tools 可执行的操作 搜索、发邮件、查数据库
Resources 可读取的上下文信息 文件内容、项目结构
Prompts 预定义的交互模板 代码审查流程模板

MCP 和 Tool 的关系

MCP 不是 Tool 的替代品,而是 Tool 的传输层和发现层

打个比方:Tool 是电器,MCP 是插座标准。电器(Tool)本身的功能没变,但有了统一的插座标准(MCP),同一个电器可以在不同的房子(Agent 框架)里使用。

没有 MCP 的 Tool 也能工作——Agent 直接通过 function calling 调用内置 Tool 完全没问题。MCP 的价值在于生态复用:社区已经有数百个开源 MCP Server,覆盖文件系统、GitHub、数据库、搜索引擎等常见场景。写一个 MCP Server,所有支持 MCP 的 Agent 都能用。

目前 Claude、Cursor、VS Code Copilot、OpenClaw 等主流工具均已支持 MCP 协议。


四者的关系:一张图讲清楚

把四个概念放在一起看它们的层级和协作方式:

┌─────────────────────────────────────────────┐
│                   Agent                      │  ← 决策中枢:理解意图、规划步骤
├─────────────────────────────────────────────┤
│                   Skill                      │  ← 复合能力:封装领域知识的工作流
├──────────────────────┬──────────────────────┤
│   直接调用 Tool      │   通过 MCP 调用 Tool  │  ← 两种调用路径
├──────────────────────┴──────────────────────┤
│                   Tool                       │  ← 原子操作:最小执行单元
└─────────────────────────────────────────────┘

两条典型的调用路径:

  • 路径 A:Agent → Skill → Tool(Skill 内部编排多个 Tool 调用)
  • 路径 B:Agent → MCP Client → MCP Server → Tool(通过标准协议调用外部能力)

两条路径不互斥。一个 Skill 内部也可以通过 MCP 去调用远端的 Tool。

快速对照表

概念 一句话定义 类比
Agent 能自主决策和行动的智能体 实习生(接到任务自己干)
Tool 单一功能的原子操作 螺丝刀(拧一下就完事)
Skill 封装领域知识的多步能力 "换硬盘"技能(知道步骤和细节)
MCP 标准化的能力发现与调用协议 USB 接口标准

选型参考

场景 建议
单一 API 调用,功能简单 直接实现为 Tool
需要跨框架复用的能力 封装为 MCP Server
多步逻辑 + 需要领域知识 封装为 Skill
端到端完成复杂任务 Agent 统筹调度 Skill + Tool

目前已有开源项目将 Agent + Skill + 本地模型这一思路落地。比如明略科技的 Mano-P,一个端侧 GUI Agent——本地 4B 参数视觉模型作为 Agent 决策层,纯视觉驱动(不依赖 DOM 或应用 API),GUI 操控能力封装为可复用的 Skill(mano-skill),底层截屏、点击、输入等作为 Tool。整个系统跑在 Apple M4 + 32GB RAM 上,数据不出设备。在 OSWorld 基准测试中取得专有模型类别第一(58.2%)。

brew tap Mininglamp-AI/tap && brew install mano-cua

相关资源

Logo

欢迎加入 MCP 技术社区!与志同道合者携手前行,一同解锁 MCP 技术的无限可能!

更多推荐