← 返回 AI 索引

MCP vs Skills:什么时候用哪个?

两者都是给 AI 助手"加能力"的机制,但解决的问题完全不同。MCP 是"接外部能力"的协议,Skills 是"长内部专长"的封装。本文用图解 + 决策树帮你一次选对。

核心一句话区别

MCP = 给助手"接外设"

Model Context Protocol,是一个开放协议。它让 AI 助手连上外部系统——数据库、API、文件系统、SaaS 工具(GitHub、Slack、Notion…)。

MCP 解决的是:"助手怎么安全、标准化地调用外面的世界"。它提供的是能力接口,不是知识。

Skills = 给助手"长脑子"

技能(Skill),是一包领域知识 + 标准流程 + 提示词模板。它把"某类任务怎么做才专业"固化下来——比如"怎么合规地装一个 MCP""怎么系统化排查数据库慢查询"。

Skills 解决的是:"助手怎么把某件事做得更专业、更稳"。它提供的是方法与专长,不是连接。

AI 助手 MCP Server 外部系统 GitHub/DB/API 连接·调用 Skill 包 知识·流程 提示词/模板 装载·内化 向外:打通数据/工具 向内:沉淀方法/专长
图 1:MCP 是"向外接"——把助手连到外部系统;Skills 是"向内长"——把专业方法装进助手本身。
记忆口诀:MCP 管"能不能碰到数据/工具"(横向扩展连接);Skills 管"碰到之后会不会专业地干"(纵向沉淀能力)。一个解决"连接",一个解决"专业度"。

MCP什么是 MCP(Model Context Protocol)

MCP 是 Anthropic 在 2024 年底提出的开放标准协议,目标是给 AI 应用提供一个"USB-C 接口"——统一地连接各种外部数据源和工具。在此之前,每个工具都要为每个 AI 应用单独写一个集成,N 个应用 × M 个工具 = N×M 集成地狱;MCP 把它变成 N+M。

AI 应用 (Host / Client) MCP 协议 (标准化接口) GitHub PostgreSQL 文件系统 / API
图 2:MCP 把"N 个应用 × M 个工具"的网状集成,收敛成"应用↔协议↔工具"的星形结构。

MCP 提供三种原语(能力接口)

🔧 Tools(工具)

可被模型调用的动作——执行函数、写数据、发请求。有副作用,模型主动决定何时调用(如"创建一个 issue")。

📚 Resources(资源)

可被读取的上下文——文件内容、DB 查询结果、API 响应。无副作用,作为给模型的"参考资料"。

💡 Prompts(提示模板)

预定义的交互模板——把常见任务的提示词固化,用户一点即用(如"代码审查模板")。

什么时候该想到 MCP:当你需要让 AI 助手访问它原本碰不到的东西——公司内网数据库、你本地的文件、某个 SaaS 的 API、实时行情……凡是"数据/工具在外面",就是 MCP 的活。

Skills什么是 Skills(技能)

Skills 是 WorkBuddy / 同类 Agent 体系里的能力封装单元。它把"完成某类任务的专业方法"打包成一份可复用、可触发的知识包——包含说明文档(SKILL.md)、可选的脚本、参考材料、资源文件。模型在合适时机自动加载或按名调用,从而把某件事做对、做专业。

AI 助手 遇到任务 Skill 包 SKILL.md 说明 脚本 / 参考 / 模板 → 专业流程被激活 更专业的产出 少走弯路
图 3:Skill 不改变助手的"连接能力",而是把"怎么把一件事做专业"作为上下文注入。

Skills 通常包含什么

📄 SKILL.md

核心。用自然语言写明:这个技能解决什么问题、何时触发、标准操作步骤、注意事项、调用哪些脚本/工具。模型靠它判断"该不该用、怎么用"。

🛠️ 脚本与工具

可选的 scripts/ —— 把繁琐、易错、需要确定性执行的步骤脚本化(如批量重命名、生成报告、调用某 API)。

📖 参考材料

references/ 放长文档、规范、API 手册,需要时才读入上下文,避免污染主提示。

🎨 资源与模板

assets/ 放图片、模板、样例,支撑输出质量(如生成 PPT 的版式、PDF 表单)。

什么时候该想到 Skills:当某类任务反复出现、容易出错、有最佳实践——你想让助手"每次都按对的流程来"。比如合规安装 MCP、系统排查慢查询、按规范生成文档。凡是"方法/专长在里面",就是 Skills 的活。

对比核心差异对照表

维度MCP MCP(协议)Skills Skills(技能)
本质连接外部系统的开放标准协议封装专业方法的能力包/知识包
解决什么"助手怎么碰到外面的数据/工具""助手怎么把某类事做专业"
方向向外(接外设)向内(长脑子)
谁提供运行环境独立的 MCP Server 进程/服务宿主 Agent 内部加载
典型产物一个可连的 Server(GitHub/DB/…)一份 SKILL.md + 脚本/参考
是否有网络/进程是(跨进程甚至跨机器通信)否(本地上下文 + 本地脚本)
可移植性跨任何支持 MCP 的客户端通用绑定特定 Agent 体系(如 WorkBuddy)
触发方式模型在需要时调用 Tool/读 Resource模型按 SKILL.md 触发条件自动或按名加载
类比给电脑插 USB 外设给员工做岗位培训手册
关键澄清:两者不是替代关系,而是互补。一个 MCP Server 暴露了"能查数据库"的能力;一个 Skill 可以指导模型"怎么专业地、安全地用这个 MCP 去查"。MCP 给了手,Skill 教了招。
AI 助手 任务 Skill 教方法 MCP 提供手 专业 + 可达 的结果
图 4:Skill(教方法)与 MCP(提供手)协同,最终产出"既专业又可达"的结果。

选型什么时候用哪个

用 MCP 当…

  • 需要让助手访问它原本碰不到的外部数据/系统(本地文件、内网 DB、SaaS API)。
  • 希望这套连接跨多个 AI 客户端复用(标准协议,一次开发到处用)。
  • 需要一个有状态、可鉴权的桥接层(MCP Server 管 token/权限)。
  • 要暴露可被模型主动调用的动作(发消息、建工单、写库)。

用 Skills 当…

  • 某类任务反复做、易踩坑,要把最佳实践固化(安装、排查、生成规范文档)。
  • 需要把领域知识/流程模板注入模型上下文,让它"按手册办事"。
  • 想把确定性步骤脚本化(批量处理、报告生成),减少模型随意发挥。
  • 想在不写独立服务的前提下,给本 Agent 体系加专业能力。

场景举例

场景选谁为什么
让助手读取你公司 MySQL 里的数据MCP数据在外面,需要连接 + 鉴权 + 查询接口 → MCP Server。
让助手按规范安全地安装并配置 MCPSkills这是"怎么做才对"的流程,装完还要安全审计 → Skill。
助手既要查 GitHub 又要发 SlackMCP两个外部系统,各起一个 MCP Server 即可,协议统一。
每次生成 PDF 都按固定版式/合规要求Skills方法/模板在内部,不需要外部连接 → Skill 装载模板。
助手查数据库后还要"专业地分析报告"两者MCP 负责连库取数,Skill 负责教它怎么专业解读。
希望能力在 Cursor / Claude / WorkBuddy 都能用MCP开放协议跨客户端通用;Skill 绑定具体 Agent 体系。
实战组合范式:MCP 解决"能不能连上",Skill 解决"连上后怎么用好"。典型搭配:起一个 MCP Server 暴露能力 → 写一个 Skill 指导模型安全、专业地调用它。这正是"先给手、再教招"。

决策选型决策树

1

你要解决的是"连接外部"还是"提升内部专业度"?

需要访问外部数据/工具 → 看 2(MCP);想把某类任务做专业 → 看 4(Skills)。

2

这个能力需要跨多个 AI 客户端复用吗?

是 → MCP(标准协议,一次开发处处用)。否但仍是外部连接 → 仍建议 MCP,除非只是临时脚本。

3

外部系统有现成 MCP Server 吗?

有 → 直接连;没有 → 自己写一个 MCP Server(暴露 Tools/Resources)。

4

这个任务是否反复出现、易错、有最佳实践?

是 → Skills 把它固化(SKILL.md + 脚本/模板)。否 → 也许只需普通提示词。

5

两者要不要一起用?

若任务既要"连外部"又要"专业干" → MCP + Skill 组合:MCP 给手,Skill 教招。

遇到一个需求 要连外部系统 / 还是提内部专业度? 连外部 提专业 → MCP → Skills 两者都要? MCP 给手 + Skill 教招
图 5:决策树简化版——先判断"向外连"还是"向内长",再决定要不要组合。

误区常见误区

❌ "MCP 和 Skills 二选一"

错。它们是不同层:MCP 管连接,Skills 管方法。多数成熟场景是组合——用 MCP 接上能力,用 Skill 规范使用方式。

❌ "Skill 能替代 API 集成"

Skill 是知识与流程,不是网络桥接。要访问外部实时数据,仍需要 MCP(或等价连接器)把数据接进来。

❌ "MCP 自带专业知识"

MCP 只提供"能调用",不保证"调得对"。比如连接了数据库,模型未必知道怎么安全写 SQL——这得靠 Skill 教。

❌ "写个 Skill 就能连外网"

Skill 默认在宿主内运行,跨进程/跨机器的安全连接仍要走 MCP Server,Skill 本身不解决鉴权与网络边界。

❌ "MCP 一定比直接调 API 好"

轻量、一次性需求直接调 API/写脚本更快。MCP 的价值在标准化复用与跨客户端,别为小需求过度设计。

❌ "Skill 越多越好"

Skill 会占用上下文并增加触发误判。只在"确实有反复、易错、需固化"的任务上建 Skill,保持精简。

一句话总结:MCP 回答"助手能碰到什么"(向外接数据/工具,标准化、跨客户端);Skills 回答"助手擅长什么"(向内沉淀方法/专长,绑定 Agent 体系)。需要连接用 MCP,需要专业用 Skills,两者都要就组合用。