简介:本文用通俗易懂的方式,系统讲解Prompt、Agent Skill与MCP三种技术的核心区别、各自适用场景与协作方式。从概念解析到结构拆解,再到组合实践与选型建议,帮助开发者快速建立技术选型判断力,掌握构建高效AI Agent系统的关键方法。
在构建 AI Agent 系统的过程中,开发者最常遇到的困惑之一就是:Prompt、Agent Skill 和 MCP 到底有什么区别?什么时候该用哪个?三者之间又是什么关系?本文将从概念本质、结构组成、适用场景和协作方式四个维度,系统性地梳理这三项技术,帮助你建立清晰的技术选型判断力。
本教程旨在帮助读者:
适合阅读人群:AI 应用开发者、技术负责人、对 Agent 架构感兴趣的后端工程师,以及希望系统化理解 Agent 技术栈的技术管理者。
在深入技术细节之前,我们先用一个类比来建立整体认知。
把 AI Agent 想象成一位新入职的同事:
三件事分工不同,但相互配合。下面逐一展开。
Prompt 本质上就是一段文字输入。你输入什么,AI 就按照什么来响应。它是人与模型之间最直接的交互方式。
| 特征 | 说明 |
|---|---|
| 一次性 | 每次对话都需要重新输入,不输入就不存在 |
| 纯文本 | 自然语言表达,不涉及结构化配置 |
| 无持久记忆 | 本次说了下次不会自动记住,需要重复交代 |
日常开发中,我们几乎每天都在使用 Prompt:
甚至系统层面的身份设定也是 Prompt。比如“你是一位资深后端工程师,擅长高并发场景设计”——这段身份描述本质上就是一段长期挂载的 Prompt。
Prompt 最大的问题在于重复性。同样的编码规范、同样的偏好设置、同样的检查清单,每次对话都要重新描述一遍。当任务复杂度上升、规范要求增多时,这种重复成本会迅速放大。
这正是 Agent Skill 要解决的核心问题。
Agent Skill 比 Prompt 重得多。它不是一句话的事,而是一个结构化的知识包,通常包含以下组成部分:
一个结构完整的 Skill 通常呈现为如下形式:
example-skill/├── SKILL.md # 核心说明文档:流程、规则、架构说明├── hooks/ # 钩子脚本目录│ ├── pre-tool.sh # 工具调用前的预处理│ ├── post-bash.sh # 命令执行后的检查│ └── session-end.sh # 会话结束时的清理或总结├── memory/ # 记忆系统│ ├── semantic-patterns.json # 抽象经验(模式提炼)│ ├── episodic/ # 具体经历(事件记录)│ └── working/ # 当前上下文(短期记忆)└── references/└── appendix.md # 附录参考资料
| 对比项 | Prompt | Agent Skill |
|---|---|---|
| 形态 | 纯文本 | 文档 + 脚本 + 配置 |
| 复用性 | 每次需重新输入 | 一次定义,持续生效 |
| 复杂度 | 低 | 中到高 |
| 记忆能力 | 无 | 支持语义记忆、情景记忆、工作记忆 |
| 自动化 | 不支持 | 支持钩子脚本自动执行 |
| 适用场景 | 简单任务、临时指令 | 复杂流程、长期规范、专业领域 |
MCP(Model Context Protocol)是一套标准化协议,用于让 AI Agent 以统一的方式调用外部工具和数据源。它解决的核心问题是:如何让 Agent 能够方便、规范地使用各种外部能力。
通俗地说,MCP 定义了 Agent 与工具之间的“通用插头标准”。只要工具实现了这套标准,Agent 就能即插即用,不需要为每个工具单独适配。
在没有 MCP 之前,每接入一个新工具,都需要:
当工具数量增多时,这种点对点的集成方式维护成本极高。MCP 通过标准化协议,将这一过程抽象为统一接口,大幅降低了集成复杂度。
通过 MCP 协议,Agent 可以标准化地接入以下类型的能力:
| 对比项 | Agent Skill | MCP |
|---|---|---|
| 本质 | 知识封装与流程编排 | 工具接入与调用协议 |
| 关注点 | “怎么做” | “用什么做” |
| 形态 | 文档 + 脚本 + 记忆 | 协议 + 服务端实现 |
| 是否包含知识 | 是,包含领域知识和流程 | 否,只提供能力接口 |
| 标准化程度 | 因实现而异 | 协议统一,可互操作 |
理解了各自定位后,我们来看它们如何配合。
在一个典型的 Agent 工作流中,三者的关系可以这样理解:
用户请求│▼┌─────────────┐│ Prompt │ ← 当前任务的即时指令└──────┬──────┘│▼┌─────────────┐│ Agent Skill │ ← 长期积累的流程、规则、经验└──────┬──────┘│▼┌─────────────┐│ MCP │ ← 标准化的外部工具调用└──────┬──────┘│▼执行结果
假设你需要让 Agent 完成一次“数据库性能排查”任务:
三者各司其职,缺一不可。
面对一个具体需求,如何判断该用哪种技术?以下决策树可供参考:
需求来了│├─ 只是一次性的简单指令? → 用 Prompt│├─ 需要反复执行的复杂流程?│ ││ ├─ 涉及领域知识和规则? → 封装为 Skill│ ││ └─ 需要调用外部工具? → 接入 MCP│└─ 既需要流程又需要工具? → Skill + MCP 组合
原因:Prompt 过于模糊,缺乏明确的约束和示例。
解决:增加具体示例(few-shot)、明确输出格式要求、拆分为多步指令。
排查方向:
排查方向:
Prompt、Agent Skill 和 MCP 并非互相替代的关系,而是分别解决了 Agent 系统中不同层次的问题:
理解三者的定位差异,并根据实际场景灵活组合,才能构建出既灵活又稳定的 AI Agent 系统。建议从 Prompt 入手快速验证,逐步将成熟流程沉淀为 Skill,再通过 MCP 接入外部能力,最终形成完整的 Agent 技术栈。