MCP 和 Skill 有什么区别?Claude Code 里的两个核心概念讲清楚
适合读者:正在使用 Claude Code、Cursor、AI 编程助手,想搞清楚 MCP、Skill、Plugin 到底分别是什么的人。
一、先说结论
在 Claude Code 这类 AI 编程工具里,MCP 和 Skill 都可以增强 AI 助手的能力,但它们解决的问题完全不同。
一句话概括:
MCP 是“接外部工具和数据源的协议”,Skill 是“教 AI 怎么完成某类任务的方法说明”。
也可以这样理解:
| 概念 | 更像什么 | 主要作用 |
|---|---|---|
| MCP | 工具接口 / 外挂数据通道 | 让 AI 能访问外部系统、工具、数据库、浏览器、文档服务等 |
| Skill | 工作方法 / 操作手册 / 专项能力包 | 告诉 AI 遇到某类任务时应该按什么流程做 |
| Plugin | 插件包 | 可以同时包含 Skill、MCP、命令、Agent、Hook 等能力 |
如果用程序员熟悉的比喻:
- MCP 像一组 API 或 SDK,让 AI 能“调用外部能力”。
- Skill 像一份 SOP / Prompt 模板 / 工作流说明,让 AI 知道“该怎么干活”。
- Plugin 像一个 npm 包或 VS Code 插件,可以把多种能力打包安装。
二、什么是 MCP?
MCP 全称是 Model Context Protocol,可以理解为一种让 AI 模型连接外部工具和上下文的协议。
它的核心目标是:
让 AI 不只会聊天,还能安全、结构化地调用外部工具。
比如在 Claude Code 里,MCP 可以让 AI 使用:
- 浏览器自动化工具,例如 Playwright
- 文档查询工具,例如 Context7
- GitHub / GitLab / Jira / Linear 等平台
- 数据库查询工具
- 本地文件或远程 API
- 企业内部知识库
- 自定义业务系统
MCP 的重点是“连接能力”
MCP 本身不直接规定 AI 应该如何完成任务,它更关注:
- 有哪些工具可以调用
- 每个工具的入参是什么
- 每个工具返回什么结果
- 工具调用是否需要权限
- 外部系统如何与 AI 助手通信
例如,一个 Context7 MCP 工具可以让 AI 查询最新框架文档:
用户:帮我查一下 Next.js 最新的 App Router 用法
AI:调用 Context7 MCP 查询 Next.js 文档
AI:基于最新文档给出答案
这里 MCP 扮演的是“文档查询通道”。
三、什么是 Skill?
Skill 可以理解为 Claude Code 中的一种“专项能力说明书”。
它通常会告诉 AI:
- 这个技能什么时候应该使用
- 使用这个技能前要做什么
- 执行任务时要遵循什么步骤
- 哪些行为不能做
- 最终输出应该是什么样
Skill 的重点是“做事方法”
比如一个 code-review Skill,可能会要求 AI:
- 先查看当前代码变更
- 按正确性、可维护性、安全性几个维度检查
- 只报告有证据的问题
- 给出具体文件和行号
- 不要泛泛而谈
再比如一个 frontend-design Skill,会要求 AI:
- 做页面时不要生成千篇一律的 AI 风格
- 注意布局、配色、间距、视觉层次
- 优先做生产级界面
- 根据项目技术栈生成对应代码
所以 Skill 更像是“让 AI 以某种专家方式工作”。
四、MCP 和 Skill 的核心区别
1. 关注点不同
| 对比项 | MCP | Skill |
|---|---|---|
| 关注点 | 工具连接 | 工作流程 |
| 解决问题 | AI 能不能访问外部系统 | AI 应该怎样完成任务 |
| 类似概念 | API、插件接口、工具协议 | SOP、提示词模板、专家经验 |
| 是否一定调用外部服务 | 经常会 | 不一定 |
| 是否一定改变 AI 行为 | 间接改变 | 直接改变 |
MCP 解决的是“AI 能用什么工具”。
Skill 解决的是“AI 应该怎么使用能力完成任务”。
2. 使用方式不同
MCP 通常表现为一组工具,例如:
browser_navigate
browser_click
query-docs
resolve-library-id
AI 可以在需要时调用这些工具。
Skill 通常表现为一个任务入口,例如:
/code-review
/deep-research
/frontend-design
/simplify
或者在对话中自动触发:
帮我审查这次代码改动
帮我做一个漂亮的 Vue 后台页面
帮我调研一下 MCP 和 Skill 的区别
这时 AI 会先加载 Skill 的说明,再按照 Skill 规定的流程执行。
3. 能力边界不同
MCP 可以让 AI 获得原本没有的外部能力。
例如:
- 没有浏览器 MCP:AI 只能根据文本推测页面问题。
- 有 Playwright MCP:AI 可以真的打开页面、点击按钮、查看控制台报错。
Skill 不一定增加新工具,但会提高 AI 做事的稳定性。
例如:
- 没有 code-review Skill:AI 可能只是随便看几眼代码。
- 有 code-review Skill:AI 会按代码审查流程系统检查,并输出更标准的审查意见。
五、Plugin 又是什么?
很多人会把 MCP、Skill、Plugin 混在一起。
其实 Plugin 是更大的打包形式。
一个 Plugin 里面可以包含:
- Skills
- MCP Server 配置
- Slash Commands
- Agents
- Hooks
- 配置文件
- 示例文档
也就是说:
Plugin 是安装包,Skill 和 MCP 都可能是插件包里提供的能力。
举个例子:
一个“代码审查插件”可能包含:
/code-review命令code-reviewSkill- 专门的审查 Agent
一个“浏览器插件”可能包含:
- Playwright MCP Server
- 浏览器点击、截图、控制台读取等工具
一个“项目管理插件”可能包含:
- GitLab MCP
- 创建 Issue 的命令
- PR Review 的 Skill
六、什么时候用 MCP?
如果你的需求是“让 AI 访问某个外部系统”,通常应该考虑 MCP。
典型场景包括:
1. 查询最新官方文档
例如:
帮我查 Vue 3 最新 API 用法
帮我看 Spring Boot 3.5 的配置变化
这类任务适合使用文档类 MCP,例如 Context7。
2. 操作浏览器
例如:
启动项目后帮我看看页面有没有报错
帮我打开登录页测试一下
帮我截图看看 UI 效果
这类任务适合使用 Playwright MCP。
3. 连接代码托管平台
例如:
帮我查看 GitLab 上这个 MR 的变更
帮我创建一个 Issue
帮我评论 PR 审查结果
这类任务适合 GitHub / GitLab MCP。
4. 查询数据库或内部系统
例如:
帮我查一下订单表里这条数据
帮我从内部知识库找接口说明
这类通常需要企业自建 MCP。
七、什么时候用 Skill?
如果你的需求是“让 AI 按某种专业流程做事”,通常应该使用 Skill。
典型场景包括:
1. 代码审查
/code-review
适合检查:
- bug
- 边界条件
- 安全问题
- 代码风格
- 可维护性
2. 简化重构
/simplify
适合做:
- 去重复
- 降低复杂度
- 提升可读性
- 优化结构
3. 前端设计
/frontend-design
适合做:
- Vue / React 页面
- 后台管理界面
- Landing Page
- 组件视觉优化
4. 深度调研
/deep-research
适合做:
- 技术选型
- 行业资讯
- 框架对比
- 多来源事实核验
5. 项目说明管理
例如 claude-md-management 类 Skill,可以帮助维护 CLAUDE.md,把项目经验沉淀下来。
八、MCP 和 Skill 可以一起用吗?
可以,而且很多高质量任务都需要二者配合。
举个例子:
场景:让 AI 帮你审查一个前端页面问题
用户需求:
帮我看看这个 Vue 页面为什么按钮点了没反应
可能的执行过程:
- Skill:使用系统化调试流程
- MCP:通过 Playwright 打开页面
- MCP:点击按钮复现问题
- MCP:读取浏览器控制台报错
- Skill:按调试流程定位根因
- AI:修改代码并验证结果
这里:
- Skill 决定“怎么查”
- MCP 提供“能实际查页面”的工具能力
再比如:
场景:生成一篇技术调研报告
- Skill:
deep-research规定检索、抓取、核验、综合输出流程 - MCP / Web 工具:负责搜索网页、抓取来源
- AI:负责总结、去重、判断可信度、生成文章
所以二者不是竞争关系,而是互补关系。
九、一个简单类比
可以把 Claude Code 想象成一个程序员助手:
- MCP:给助手配工具箱
- Skill:教助手工作方法
- Plugin:把工具箱和教程打包安装
例如:
| 类比 | 在 Claude Code 中对应 |
|---|---|
| 螺丝刀、万用表、浏览器、数据库连接器 | MCP 工具 |
| 排查故障流程、代码审查规范、前端设计规范 | Skill |
| 一个完整的开发辅助套件 | Plugin |
如果只有 MCP,没有 Skill,AI 可能有工具但不知道最佳流程。
如果只有 Skill,没有 MCP,AI 可能知道流程但缺少实际操作外部系统的能力。
二者结合,效果最好。
十、常见误区
误区 1:MCP 就是插件
不完全对。
MCP 是协议或工具连接方式,Plugin 是安装包。一个 Plugin 里可以包含 MCP,但 MCP 不等于 Plugin。
误区 2:Skill 就是普通提示词
也不完全对。
Skill 确实包含提示词和说明,但它更像一个可复用的任务能力包。它通常有触发条件、执行步骤、约束、输出格式,稳定性比临时提示词更好。
误区 3:装了 MCP,AI 就一定会变聪明
不一定。
MCP 只是给 AI 增加工具,真正效果还取决于:
- 工具是否稳定
- 权限是否配置正确
- AI 是否知道什么时候该调用
- 任务流程是否清晰
误区 4:Skill 越多越好
也不一定。
Skill 太多可能导致触发混乱。更好的方式是安装自己常用的技能,例如:
- 代码审查
- 前端设计
- 简化重构
- 深度调研
- 项目文档管理
十一、对开发者的建议
如果你是普通开发者,我建议这样配置:
必备 MCP
- 文档查询类 MCP:查最新框架文档
- 浏览器自动化 MCP:验证页面和交互
- Git 平台 MCP:查看 PR / MR / Issue
必备 Skill
- code-review:代码审查
- simplify:代码简化和重构
- frontend-design:前端页面设计
- deep-research:深度调研
- systematic-debugging:系统化调试
- verification-before-completion:完成前验证
推荐组合
| 任务 | 推荐组合 |
|---|---|
| 写新功能 | brainstorming Skill + TDD Skill + 项目文件工具 |
| 修 bug | systematic-debugging Skill + 浏览器/日志 MCP |
| 查框架用法 | Context7 MCP + 回答总结 |
| 做页面 | frontend-design Skill + Playwright MCP |
| 审查代码 | code-review Skill + Git 工具 |
| 写调研报告 | deep-research Skill + Web/MCP 检索工具 |
十二、总结
最后再用一句话总结:
MCP 负责“接工具”,Skill 负责“定流程”,Plugin 负责“打包安装”。
三者的关系可以理解为:
Plugin
├── Skill:告诉 AI 怎么做事
├── MCP:让 AI 能调用外部工具
├── Command:提供快捷命令
├── Agent:提供专用子代理
└── Hook:提供自动化触发能力
如果你想让 AI 编程助手真正好用,不要只追求“装很多插件”,而应该思考两个问题:
- 我希望 AI 能访问哪些外部工具?这对应 MCP。
- 我希望 AI 按什么流程完成任务?这对应 Skill。
把这两个问题想清楚,Claude Code、Cursor、AI IDE 这类工具的效果会提升很多。
更多推荐
所有评论(0)