前置知识

阅读本文前,建议先了解:


一、为什么需要了解Skill与MCP的关系?

很多初学者容易混淆Skill和MCP,认为它们是”竞争关系”。实际上,它们是互补关系,解决不同层面的问题。

┌─────────────────────────────────────────────────────────────┐
│                     AI Agent系统架构                          │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│   ┌─────────────────────────────────────────────────────┐   │
│   │              应用层:Claude Code                     │   │
│   │                                                       │   │
│   │   ┌───────────────┐        ┌───────────────┐       │   │
│   │   │    Skill      │        │    MCP        │       │   │
│   │   │  (能力模块)    │        │  (外部连接)    │       │   │
│   │   └───────────────┘        └───────────────┘       │   │
│   │                                                       │   │
│   └─────────────────────────────────────────────────────┘   │
│                         ↓                                     │
│   ┌─────────────────────────────────────────────────────┐   │
│   │              工具层:内置Tool / MCP服务器            │   │
│   └─────────────────────────────────────────────────────┘   │
│                         ↓                                     │
│   ┌─────────────────────────────────────────────────────┐   │
│   │              资源层:文件系统、API、数据库           │   │
│   └─────────────────────────────────────────────────────┘   │
│                                                             │
└─────────────────────────────────────────────────────────────┘

二、Skill和MCP到底是什么?

2.1 Skill:AI的”能力包”

Skill 像是给AI安装”技能包”——告诉AI”怎么做”。

Skill的核心作用:
┌─────────────────────────────────────┐
│  📚 知识封装                         │
│  - 特定领域的专业知识                │
│  - 最佳实践和方法论                  │
│  - 操作流程和规范                    │
├─────────────────────────────────────┤
│  🎯 任务规划                         │
│  - 告诉AI如何分析问题                │
│  - 指导AI 一步步完成任务             │
│  - 提供检查点和注意事项              │
└─────────────────────────────────────┘

举例:一个pdf Skill封装了:

  • 如何读取PDF
  • 如何提取文本/表格/图片
  • 常见问题怎么处理

2.2 MCP:AI的”连接器”

MCP 像是给AI配备”转接头”——让AI能连接外部世界。

MCP的核心作用:
┌─────────────────────────────────────┐
│  🔌 工具连接                         │
│  - 连接外部工具和API                 │
│  - 标准化调用方式                    │
│  - 动态发现能力                      │
├─────────────────────────────────────┤
│  📡 数据访问                         │
│  - 读取文件系统                      │
│  - 访问数据库                        │
│  - 获取外部资源                      │
└─────────────────────────────────────┘

举例:一个MCP服务器提供:

  • 文件系统操作
  • GitHub API调用
  • 数据库查询

三、核心区别对比

对比维度SkillMCP
本质指令集+知识包客户端-服务器连接
解决的问题”AI不知道怎么做""AI无法访问外部”
作用提供方法论提供执行能力
存放位置本地文件夹远程服务器
典型用途封装处理流程连接外部系统

3.1 比喻理解

Skill  vs MCP = 方法 vs 行动

 Skill 就像:
 ┌─────────────────────┐
 │  菜谱(食谱)        │
 │  - 告诉你如何做菜    │
 │  - 火候、调料、步骤  │
 │  - 但不能直接吃到   │
 └─────────────────────┘
        ↓ 你需要
 ┌─────────────────────┐
 │  厨房(工具)        │
 │  - 炉灶、锅具       │
 │  - 可以实际烹饪     │
 └─────────────────────┘
        ↓ 这个角色
    MCP ≈ 厨房

即:Skill提供"做法",MCP提供"厨房"

四、什么时候用哪个?

4.1 用Skill的场景

✅ 需要告诉AI"如何做"时:
- 封装复杂的处理流程
- 提供领域专业知识
- 标准化操作规范
- 需要跨会话复用

例如:
- "创建一个报告生成的Skill"
- "封装代码审查的流程"
- "定义Obsidian笔记规范"

4.2 用MCP的场景

✅ 需要AI"访问外部"时:
- 连接数据库查询数据
- 调用第三方API
- 访问文件系统
- 与外部系统集成

例如:
- "连接MySQL数据库"
- "调用GitHub API"
- "操作本地文件"

4.3 两者结合:最佳实践

用户请求:分析Q4销售数据并生成报告

┌─────────────────────────────────────────────────────┐
│  Step 1: Skill - 理解任务                           │
│  ┌───────────────────────────────────────────────┐  │
│  │  data-analyst Skill                          │  │
│  │  - 理解"销售数据分析"任务                     │  │
│  │  - 确定需要哪些数据                           │  │
│  │  - 规划分析步骤                               │  │
│  └───────────────────────────────────────────────┘  │
└────────────────────────┬────────────────────────────┘
                         ↓
┌─────────────────────────────────────────────────────┐
│  Step 2: MCP - 获取数据                             │
│  ┌───────────────────────────────────────────────┐  │
│  │  sales-db MCP服务器                           │  │
│  │  - 连接销售数据库                             │  │
│  │  - 查询Q4数据                                 │  │
│  └───────────────────────────────────────────────┘  │
└────────────────────────┬────────────────────────────┘
                         ↓
┌─────────────────────────────────────────────────────┐
│  Step 3: Skill - 生成报告                           │
│  ┌───────────────────────────────────────────────┐  │
│  │  report-generator Skill                       │  │
│  │  - 按照规范生成报告                           │  │
│  │  - 应用品牌样式                               │  │
│  │  - 输出最终文档                               │  │
│  └───────────────────────────────────────────────┘  │
└─────────────────────────────────────────────────────┘

总结:Skill说”做什么、怎么做”,MCP说”去哪里拿数据”


五、实际应用中的选择

5.1 本地编码Agent

场景:在本地使用Claude Code进行编程

推荐:
┌─────────────────────────────────────┐
│  主要用Skill                        │
│  - 封装代码规范                     │
│  - 封装项目结构                     │
│  - 提供最佳实践                     │
├─────────────────────────────────────┤
│  配合少量MCP(如需要)              │
│  - 可能需要访问本地文件             │
└─────────────────────────────────────┘

理由:本地任务主要需要"方法指导"

5.2 需要外部集成的Agent系统

场景:构建需要连接多个外部系统的AI Agent

推荐:
┌─────────────────────────────────────┐
│  主要用MCP                          │
│  - 连接数据库                       │
│  - 连接第三方API                    │
│  - 连接企业系统                     │
├─────────────────────────────────────┤
│  配合Skill(如需要)                │
│  - 封装复杂的业务逻辑               │
│  - 提供领域专业知识                 │
└─────────────────────────────────────┘

理由:需要与外部世界大量交互

六、最新发展:2026年的融合

6.1 渐进式发现

2026年初,Claude Code引入了MCP渐进式发现功能,与Skill的渐进式披露机制类似:

之前:
┌─────────────────────────────────────┐
│  全部加载到上下文                   │
│  - 所有Tool定义全量输入             │
│  - 消耗大量Token                    │
└─────────────────────────────────────┘

现在:
┌─────────────────────────────────────┐
│  按需加载                           │
│  - 先加载简要描述                   │
│  - 触发时再加载完整定义             │
│  - 节省Token                        │
└─────────────────────────────────────┘

这意味着Skill和MCP在效率方面趋于一致,选择时更应该关注功能需求而非性能。


七、总结

问题答案
Skill和MCP是竞争关系吗?不是,是互补关系
Skill解决什么问题?“AI不知道怎么做”
MCP解决什么问题?“AI无法访问外部”
本地编程用什么?主要用Skill
连接外部系统用什么?主要用MCP
能否一起用?可以,效果最佳

简单理解

Skill = 烹饪知识(菜谱) MCP = 厨房设备

有菜谱没厨房 = 做不了饭 有厨房没菜谱 = 不知道做什么

最佳组合:菜谱 + 厨房 = 美味佳肴


八、延伸阅读