「Agent Tool」MCP 和 Agent Skill 的区别是什么?
0 前言
本文内容整理自公众号「小林面试笔记」的文章 10. MCP 和 Agent Skill 的区别是什么?,用于记录与总结 AI Agent 工具调用相关的核心面试知识点。
「MCP 和 Agent Skill 的区别是什么?」,可以这样作答:
MCP 和 Agent Skill 不是同类概念,不是竞争关系,而是互补的。
MCP 解决的是「Agent 怎么获得外部能力」——把数据库、API、文件系统这些外部工具标准化封装成服务,Agent 通过 MCP 就能查数据、调接口、读写文件;Skill 解决的是「Agent 拿到这些能力之后,该按什么步骤、什么标准来完成任务」——把完成某类工作的知识和流程打包成可复用的模块。
简单记:MCP 是给 Agent 配的电脑和软件,Skill 是给 Agent 发的操作手册和 SOP。在实际系统里,两者经常同时工作:Skill 定义流程,流程中调用 MCP 提供的工具。
如今 Claude Code、Cursor 等产品里,这两者就是同时工作的:一边挂着文件系统、GitHub 等 MCP Server 提供可执行的能力,一边放着「怎么按团队规范完成代码审查」「怎么写报告」这类 Skill 提供流程知识。业界也形成了一个直观的分工共识——能力归 MCP,流程归 Skill。
1 定位差异:一个「从无到有」,一个「有了之后怎么用」
很多人第一次接触这两个概念,会觉得它们都跟「Agent 能做什么」有关,但仔细一想会发现,两者的目的和工作层次完全不同。

MCP 解决的是「Agent 怎么获得外部能力」。没有 MCP 之前,Agent 就是一个只会说话的语言模型:让它查数据库查不了,让它读文件读不了,让它调 API 也调不了。MCP 把这些外部工具标准化封装成独立的服务,Agent 连上 MCP Server 就能用了——它解决的是「从无到有」的问题,让 Agent 有能力去操作外部世界。
Skill 解决的是另一类问题:「Agent 有了这些能力之后,该怎么用」。Agent 现在能查数据库、能读文件、能调 API 了,但面对一个「帮我做代码审查」的任务,它该先做什么后做什么?检查哪些维度?用什么格式输出?这些「知识和流程」,就是 Skill 要提供的。
用一个类比就很好理解:

MCP 就像给新员工配电脑、装软件、开各种系统权限——这是「能做事」的前提;但光有电脑和权限不够,你还得给他一份操作手册,告诉他做代码审查时先检查什么、后检查什么、用什么标准判断、最后用什么模板写报告。这份操作手册,就是 Skill。
2 MCP:让 Agent 有「手」
展开看看 MCP,为什么说它是 Agent 的「手」?因为如果没有 MCP,Agent 就只会「说话」,不会「做事」。
MCP Server 暴露的 Tools、Resources、Prompts(我们在第 3 篇讲过这三类能力),就是 Agent 操作外部世界的手段。模型通过 Function Calling 触发这些工具(第 4 篇讲过这条链路),工具执行完把结果喂回对话。
MCP 的粒度是「原子操作」:read_file(path) 是一个 Tool,query_database(sql) 是一个 Tool,每次调用做一件明确完整的事,执行结果立刻返回。模型能看到每个 Tool 的完整 schema——叫什么名字、接受什么参数、返回什么格式。这种精确的可见性,正是模型能准确判断「这个问题该调哪个工具」的基础。
简单说,MCP 让 Agent 从「只会聊天」进化成了「能真正干活」——这是一切上层能力的前提。
3 Skill:给 Agent 一份「操作手册」
有了 MCP 之后,Agent 确实能查数据、调 API 了,但面对一个复杂任务,它怎么知道该按什么顺序用这些工具?该关注哪些维度?该用什么标准判断质量?这就是 Skill 要解决的问题。
Agent Skill 是 Anthropic 在 2025 年 10 月推出的概念,同年 12 月把规范作为开放标准发布(第 6 篇完整讲过它的结构与加载机制)。每个 Skill 是一个文件夹,核心是一份 SKILL.md:YAML frontmatter 声明名字和描述,正文写具体的执行指令和步骤;除了指令文件,还可以带脚本(安全检查的 Python 脚本)、参考文档(团队的审查标准)、模板(报告的输出格式),打包在一起就构成一份完整的「操作手册」。
Skill 和普通 prompt 最大的区别有两点,都靠「自动发现」和「渐进式加载」两个机制支撑(详见第 6 篇):能被 Agent 自动发现(任务来了,Agent 自己判断哪个 Skill 相关、主动加载);渐进式加载省 context(启动只读名字和一句话描述、30-50 token 一个,相关才加载指令正文,用到才取模板和资源)。
所以 Skill 的粒度比 MCP 工具粗得多:

MCP 的粒度是单个函数调用——read_file、query_database;Skill 的粒度是一个完整的工作流程——「代码审查」「数据分析报告」,内部可能涉及好几个步骤、调用好几个工具。
4 两者怎么配合工作:Skill 编排,MCP 执行
既然 MCP 提供工具、Skill 提供流程,实际系统里它们是怎么配合的?用一个代码审查的场景走一遍就清楚了。
用户对 Agent 说「帮我审查一下这次提交的代码」。Agent 收到任务后先扫描可用的 Skill 列表,发现 code-review 这个 Skill 匹配度高,于是加载它的 SKILL.md 正文:
1 | |
SKILL.md 的作用就是告诉 Agent「做什么、按什么顺序做」——它只是一份操作手册,真正「动手」的时候还是得靠 MCP。执行第一步「读取代码文件」,需要调用文件系统 MCP Server 的工具:
1 | |
执行第二步「安全检查」时,Agent 加载 Skill 自带的 scripts/check_security.py 并执行——这就是 Skill 比普通 prompt 强的地方:它不只有文字指令,还能带可执行的脚本。执行第三步「输出报告」时,Agent 再加载 assets/report_template.md 模板,按里面定义的格式输出结构化报告。

整个流程的分工非常清晰:Skill 扮演「编排者」——定义做什么、按什么顺序做、用什么标准做;MCP 扮演「执行者」——提供每一步需要调用的具体工具。两者配合起来,Agent 才既知道「该怎么做」,又有能力「真正去做」。
再看一个稍微复杂的场景,更能感觉到这种分工的威力。假设 Skill 定义的流程里有一句「如果改动涉及数据库表结构,额外执行权限合规检查」——这就是条件分支。Agent 读到这条指令时,会先调一个 MCP Tool 扫描这次提交有没有改数据库 schema,拿到结果(布尔值)后再决定要不要走那条分支;要走的话,就再调另一个 MCP Tool(比如 query_permission_policy)查合规规则,最后根据结果决定审查报告里是否要加一条严重级警告。
整个过程里,Skill 像项目经理,拿着流程图和判断标准指挥执行;MCP 提供的每个 Tool 像专业工人,各自只管做好一件小事。两者的关系可以用一句话概括:

缺了 Skill,Agent 拿着一堆工具不知道该什么时候用;缺了 MCP,Skill 再详细的流程也只是纸上谈兵。
5 面试总结
回答这道题,最大的误区就是把 MCP 和 Skill 当成同类概念来对比。先避开三个雷:
| 误区 | 正解 |
|---|---|
| MCP 和 Skill 都是给 Agent 加能力的,换格式而已 | 层次完全不同:MCP 提供工具和数据访问能力(手),Skill 提供完成任务的知识和流程(操作手册),互补而非同类 |
| Skill 是更高级的 prompt 模板 | Skill 是完整文件夹(指令 + 脚本 + 模板 + 参考文档),能被自动发现和按需加载 |
| MCP 和 Skill 是竞争关系、二选一 | 实际系统两者同时工作:Skill 编排流程,流程中调用 MCP 工具 |
再按这张框架组织答案:
| 框架 | 要点 |
|---|---|
| 定位差异 | MCP 解决「怎么获得外部能力」(从无到有),Skill 解决「有了能力后怎么做」(知识与流程);电脑软件 vs 操作手册的类比 |
| 粒度差异 | MCP 是原子操作(单次调用做一件明确的事,schema 对模型可见);Skill 是完整工作流(多步骤、多工具,还可带脚本模板) |
| 配合方式 | Skill 编排者(定义做什么、按什么顺序、什么标准),MCP 执行者(提供每一步的具体工具);代码审查场景串起三者 |
| 缺一不可 | 缺 Skill:拿着工具不知道何时用;缺 MCP:再详细的流程也执行不了 |
| 加分项 | 能讲出条件分支这种 Skill 指挥 MCP 的协作细节,说明真的理解了两者在系统里怎么工作 |
追问预案:
- 「MCP 和 Agent Skill 是同类概念吗?」——不是。MCP 是能力层(外部工具和数据访问,让 Agent 有「手」),Skill 是知识流程层(告诉 Agent 拿到能力后按什么步骤、什么标准做事)——一个解决「怎么做事」,一个解决「该怎么做事」。
- 「两者的粒度差异在哪里?」——MCP 的粒度是原子操作,每次调用做一件明确的事、schema 完全可见;Skill 的粒度是完整工作流程,可能串联多个步骤、调用多个工具(具体结构与加载机制见第 6 篇)。
- 「实际系统里它们怎么配合?」——Skill 编排、MCP 执行:
SKILL.md定义「读文件 → 跑安全脚本 → 输出报告」的流程,每一步由对应 MCP Tool(read_file等)实际执行,条件分支也由 Skill 指令驱动 MCP Tool 查询后决定。 - 「为什么说两者缺一不可?」——缺 Skill,Agent 有一堆工具却不知道该什么时候用;缺 MCP,Skill 的流程写得再详细也没有工具可执行,只是纸上谈兵。
- 「一部成熟的 Agent 系统里它们怎么分工?」——工具类能力(GitHub、数据库、文件系统)走 MCP 标准化接入,团队沉淀的流程经验(代码审查、报告写作)走 Skill 打包复用,一个管「能做什么」,一个管「怎么做好」。
参考
- 10. MCP 和 Agent Skill 的区别是什么? | 小林面试笔记
- 9. Skill 是什么? | 小林面试笔记(相关:Skill 的结构与渐进式加载机制)
本文图片均来源于公众号「小林面试笔记」,版权归原作者所有。