Skills vs Tools、MCP 与 Subagents

AI Agent 生态中有多种技术组件——Skills、Tools、MCP、Subagents。它们各自解决什么问题?如何协作?什么时候该用哪个?


Skills vs MCP

MCP(Model Context Protocol) 负责连接外部系统和数据——数据库、API、Google Drive 等。它为 Agent 提供访问能力

Skills 则告诉 Agent 拿到数据后该怎么做——用哪些列计算什么指标,按什么流程分析,以什么格式输出。

对比维度MCPSkills
职责连接外部系统和数据教 Agent 如何处理数据
提供什么访问能力(Access)专业知识(Expertise)
示例MCP Server 连接数据库Skill 指定”用 A、B 列计算指标 X”

MCP 提供访问,Skills 提供专业知识。两者结合:MCP 带来外部工具和数据,Skill 编排这些工具构建可重复的工作流。


Skills vs Tools

Tools 是更底层的概念。打个比喻:

  • Tools = 锤子、锯子、钉子
  • Skills = 如何用这些工具造一个书架

Tools 为 Agent 提供完成任务的基础能力——文件系统读写、代码执行、API 调用。事实上,Skills 本身就是通过 Tools 来运作的:读取 Skill 文件需要文件系统工具,执行脚本需要 Bash 工具。

对比维度ToolsSkills
职责提供基础能力用专业知识扩展能力
上下文工具定义始终在上下文窗口中渐进式按需加载
灵活性固定的能力集可包含脚本作为”按需工具”
来源内置、自定义、或通过 MCP 加载文件夹中的指令和资源

关键区别:Tool 的定义(名称、描述、参数)始终占据上下文窗口空间,而 Skills 通过渐进式披露按需加载,不需要时不占空间。

Skills 还可以包含脚本——相当于”按需工具”(Tools on Demand)。如果某个工具不是每次对话都需要,可以把它放在 Skill 里,只在触发时才加载和执行。


Skills vs Subagents

Subagent 是主 Agent 派生出的独立 Agent,拥有自己的上下文窗口和工具权限。主 Agent 可以将任务委托给 Subagent,Subagent 独立工作(甚至并行执行),完成后将结果返回给主 Agent。

对比维度SubagentsSkills
职责隔离上下文,独立执行任务为 Agent 提供专业知识
运作方式主 Agent 委托任务,Subagent 独立工作并返回结果指导 Agent 如何完成工作
示例代码审查 Subagent特定语言/框架的最佳实践 Skill

Skills 可以增强主 Agent 和它的 Subagents。 例如:一个代码审查 Subagent 可以加载特定的代码审查 Skill,按照你团队的标准来审查代码。

Subagents 的核心价值:

  • 隔离上下文 —— 不污染主 Agent 的上下文窗口
  • 细粒度权限 —— 每个 Subagent 可以有不同的工具权限和 Skill 访问权限
  • 并行执行 —— 多个 Subagents 可以同时处理不同任务

实战案例:Customer Insight Analyzer

把所有组件放在一起,看看它们如何协作:

组件角色
Skill定义如何分类客户反馈、如何总结发现
MCP ServerGoogle Drive MCP Server,访问包含客户访谈记录和调查问卷的文件夹
Subagents访谈分析 Subagent、调查问卷分析 Subagent(并行执行)
Tools文件读取、代码执行等基础工具

工作流程:

  1. MCP Server 从 Google Drive 获取客户访谈和调查数据
  2. 主 Agent 派生两个 Subagents——访谈分析器和调查分析器——并行工作
  3. 每个 Subagent 加载”客户洞察分析” Skill,按照统一标准分类反馈、总结发现
  4. Subagents 将结果返回给主 Agent,主 Agent 汇总输出最终报告

总结:何时用什么

从最底层到最高层的 Agent 生态架构:

层级组件用途
底层Prompts与模型沟通的最小单元
能力层Tools / MCP提供基础能力和外部数据访问
知识层Skills打包可重复、可移植的工作流和专业知识
执行层Subagents隔离上下文、并行执行专业任务

核心原则:上下文窗口是公共资源。

  • Subagents 最小化主上下文窗口的负载
  • MCP按需加载外部数据
  • Skills渐进式加载专业知识
  • Skills 做程序性、可预测的工作流
  • Subagents 做需要隔离上下文的完整 Agent 逻辑

持久性角度:

  • Subagents 可以跨会话持久化(父子 Agent 之间)
  • Skills 可以跨对话持久化(用户与 AI 应用之间)

课程资料