Tool、Skill、MCP、Plugin,到底什么关系?
帮我整理今天收到的邮件:找出重要邮件,把广告归档,然后给我一个总结。
Agent 收到这句话,会先列步骤:搜索、阅读、分类、处理、总结。
接下来拆开它的执行过程,看 Tool、Skill、MCP 和 Plugin 分别负责哪一步。
1. Tool:先让 Agent 能动手
计划已经有了,可 Agent 看不到 Gmail,也不能把邮件归档。
这时需要 Tool,也就是 Agent 可以直接调用的一项动作:
text
search_email(query)
read_email(id)
archive_email(id)

看图时只抓两点:Agent 决定用哪个 Tool、传什么参数;Tool 负责执行并返回结果。
搜索和读取通常只获取信息,归档、发送、删除会改变外部状态。真实产品还要检查权限,必要时等用户确认。
2. Skill:把做事方法保存下来
有了 Tool,Agent 已经能操作邮箱。但每次都临场安排,步骤和输出很容易变化。
Skill 用来保存一套可以重复执行的方法。在 OpenAI 和 Codex 当前的实现里,它通常是一个包含 SKILL.md 的文件夹,还可以附带脚本、参考资料和模板。官方 Skill 说明也把重点放在工作流、判断条件和完成标准上。

Skill 会告诉 Agent 先搜索、再阅读、何时归档、最后怎样总结。真正调用 Tool 的还是 Agent。

左边的 Tool 解决"做一下",右边的 Skill 解决"这件事应该怎么做"。一份 Skill 可以指导多个 Tool,也可以只靠说明和模板完成任务。
3. MCP:把外部能力接进来
接完 Gmail,还想接 GitHub、Notion 和数据库。每个平台都用自己的接法,客户端会越来越难维护。
MCP 是 Model Context Protocol,一套连接 AI Client 与外部工具、数据的开放协议。按协议提供能力的程序叫 MCP Server。大家说"Gmail MCP"时,通常指 Gmail MCP Server。

这张图解决三个易混点:
- MCP 是协议,MCP Server 是能力提供者;
- Server 可以一次提供多个 Tool;
- Tool 也能直接注册给 Agent,不一定经过 MCP。
MCP Server 还可以暴露 Resource、Prompt 和 Instructions,本文只讨论最常见的 Tool。完整边界见 OpenAI MCP Server 说明和 MCP 官方规范。
4. Plugin:把相关能力整套装上
整理邮箱现在需要一份 Skill、一条 Gmail MCP 连接,也可能带着图标、Hooks 和其他资源。如果分享给别人时还要逐项配置,安装体验会很碎。
Plugin 把这些相关能力组织成一个可以安装和分发的包。

以 OpenAI 当前的体系为例,Plugin 可以只带 Skill,也可以带 MCP Server,或者同时包含两者。官方 Plugin 架构没有规定固定组合。
Plugin 负责把能力装进来。任务开始以后,Agent 直接使用已经可见的 Skill 和 Tool,不需要先"调用 Plugin"。
5. 放进一棵关系树
四个概念混在一起,是因为"任务怎样运行"和"能力怎样安装"经常被画在同一条线上。拆成左右两棵树就清楚了。

左边是运行时:Host / Runtime 承载 Agent;Skill 指导它;Agent 调用 Tool;Tool 可能来自本地,也可能由 MCP Server 提供。
右边是安装时:Plugin 把 Skill、MCP 连接和其他资源装进 Host / Runtime。
Workspace 没放进树里。这个词有时指项目目录,有时指团队和权限边界,不是四个概念之后固定存在的"第五层"。
6. 邮箱任务真正怎样跑
回到开头那句话:
- Agent 发现 organize-inbox Skill 与任务匹配,读取其中的方法。
- Skill 要求先搜索,Agent 选择 search_email Tool。
- 这个 Tool 来自 Gmail MCP Server,请求通过 MCP 发给 Server。
- Server 访问 Gmail 并返回结果,Agent 继续阅读和分类。
- 遇到归档动作时,Host 按权限与确认策略决定是否执行。

图里使用的是 MCP Tool。换成本地 Tool,请求不会经过 MCP Server。Plugin 也不在这条调用链里,因为它的工作已经在安装阶段完成。
7. 还是分不清,就走这棵判断树
不用先背定义。看到一个新东西,先问它的主要职责是什么。

同一个项目可以同时出现四种:Plugin 里放着 Skill 和 MCP 连接,MCP Server 再提供多个 Tool。它们是分工,不是互斥选项。
8. OpenAI / Codex 里还有三个实现细节
下面是产品当前的具体做法。只想理解概念,可以停在第 7 节。
- Skill 如果必须依赖某个 MCP Server,可以在 agents/openai.yaml 中声明;工作步骤仍写在 SKILL.md 里。Build skills
- 每个 OpenAI Plugin 都有 .codex-plugin/plugin.json,Skill、MCP 连接、Hooks 和素材按需加入。Package your plugin
- Plugin 提交时可以从 MCP Server 导入 Skill 文件,但导入的是 Draft 快照。运行任务时不会反复拉取;更新后要重新扫描。
回到最开始的邮箱任务:Tool 负责搜索、读取和归档;Skill 保存整理方法;MCP Server 把 Gmail 能力接进来;Plugin 把相关能力整套安装;Host / Runtime 让它们跑起来。
参考资料
- OpenAI:Plugin architecture
- OpenAI:Skills
- OpenAI:MCP server
- OpenAI:Build skills
- OpenAI:Package your plugin
- Model Context Protocol:Specification
完整网页版本、清晰原图、Word 和离线 HTML: Tool、Skill、MCP、Plugin,到底什么关系?|文潇的技术博客