Skills 与 MCP 协议深度解析
Agent 的能力不是无限的——它需要"插件"来扩展。Skills 是 Claude Code 的能力扩展机制,MCP(Model Context Protocol)是 Anthropic 提出的工具连接标准协议。理解这两者,等于理解了 AI Agent 生态的基础设施层。
1. 什么是 Skills
1.1 Skills 的本质
Skills = Agent 的可安装能力模块
类比理解:
- 手机 App Store → Agent 的 Skills 商店
- 安装一个 App → Agent 获得一项新能力
- App 有权限管理 → Skills 也有工具权限控制
1.2 Claude Code Skills 实例
Claude Code 的 Skills 系统是当前最成熟的 Agent 能力扩展方案之一。
一个 Skill 的结构:
~/.claude/skills/my-skill/
├── SKILL.md # Skill 的 Prompt 指令(核心)
├── config.json # 配置(可选)
└── templates/ # 模板文件(可选)
SKILL.md 的核心内容:
# Skill 名称:代码审查助手
## 触发条件
当用户说"review"、"审查代码"、"CR"时触发
## 行为描述
1. 读取指定文件或 Git diff
2. 按照以下维度审查:安全性、性能、可读性、最佳实践
3. 输出结构化的审查报告
## 输出格式
[审查报告模板]
## 可使用的工具
- Read(读取文件)
- Grep(搜索代码)
- Bash(执行 git 命令)
产品思考:Skills 的精妙之处在于,它用 Markdown 文本(而非代码)定义 Agent 的行为——这意味着非程序员也能创建和修改 Skills。
1.3 Skills 生态
| 层级 | 说明 | 示例 |
|---|---|---|
| 内置 Skills | 官方预装 | /commit、/review-pr |
| 社区 Skills | 第三方开发者创建 | 写作助手、论文分析、SEO 检查 |
| 自定义 Skills | 用户自己创建 | 企业专属工作流 |
2. MCP(Model Context Protocol)
2.1 为什么需要 MCP
问题:每个 AI 工具/平台都有自己的插件系统(ChatGPT Plugins、Gemini Extensions、Claude Tools),互不兼容。
类比:想象每个手机品牌都用不同的充电口——MCP 就是 AI 工具世界的 USB-C 标准。
MCP 的目标:建立一个开放的、标准化的协议,让任何 AI 模型都能连接任何外部工具/数据源。
2.2 MCP 架构
MCP 架构:
┌─────────────┐ ┌──────────────┐ ┌─────────────────┐
│ AI 应用 │ │ MCP Client │ │ MCP Server │
│ (Claude等) │ ←→ │ (协议客户端) │ ←→ │ (工具/数据提供者) │
└─────────────┘ └──────────────┘ └─────────────────┘
│
┌─────────┼──────────┐
│ │ │
数据库 API 服务 文件系统
三个核心概念:
| 概念 | 说明 | 类比 |
|---|---|---|
| MCP Server | 提供工具能力的服务端 | USB 设备(键盘、鼠标) |
| MCP Client | 连接 Server 的客户端 | USB 接口 |
| Transport | 通信方式(stdio/SSE) | USB 线缆 |
2.3 MCP 提供的三种能力
Tools(工具):模型可以调用的函数
{
"name": "query_database",
"description": "查询用户数据库",
"parameters": {
"sql": { "type": "string", "description": "SQL 查询语句" }
}
}
Resources(资源):模型可以读取的数据
{
"uri": "file:///reports/monthly.csv",
"name": "月度报告",
"mimeType": "text/csv"
}
Prompts(提示模板):预定义的交互模板
{
"name": "analyze_data",
"description": "数据分析模板",
"arguments": [
{ "name": "dataset", "description": "数据集名称" }
]
}
2.4 MCP vs 其他方案
| 维度 | Function Calling | ChatGPT Plugins | MCP |
|---|---|---|---|
| 标准化 | 各平台各自实现 | OpenAI 专属 | 开放标准 |
| 跨平台 | 否 | 否 | 是 |
| 开源 | 部分 | 否 | 完全开源 |
| 数据访问 | 仅工具调用 | 仅工具调用 | 工具 + 资源 + 提示 |
| 生态 | 碎片化 | 已停止 | 快速增长 |
| 状态管理 | 无 | 有限 | 完善的会话管理 |
2.5 构建 MCP Server 示例
一个简单的天气查询 MCP Server(Python):
from mcp.server import Server
from mcp.types import Tool
server = Server("weather-server")
@server.tool()
async def get_weather(city: str) -> str:
"""获取指定城市的天气信息"""
# 调用天气 API
result = await fetch_weather_api(city)
return f"{city}:{result['temp']}°C,{result['condition']}"
# 启动服务
server.run()
配置连接(在 Claude Desktop 的 settings.json 中):
{
"mcpServers": {
"weather": {
"command": "python",
"args": ["weather_server.py"]
}
}
}
3. OpenClaw 生态
3.1 什么是 OpenClaw
OpenClaw 是一个 MCP Server 的开源注册表和分发平台——类似于 npm 之于 Node.js,PyPI 之于 Python。
核心价值:
- 发现:搜索和浏览可用的 MCP Server
- 安装:一键安装 MCP Server 到你的 AI 工具中
- 分发:开发者可以发布自己的 MCP Server
3.2 热门 MCP Server
| 名称 | 功能 | 应用场景 |
|---|---|---|
| @modelcontextprotocol/server-filesystem | 文件读写 | 本地文件操作 |
| @modelcontextprotocol/server-github | GitHub API | 代码仓库管理 |
| @modelcontextprotocol/server-postgres | PostgreSQL | 数据库查询 |
| @modelcontextprotocol/server-slack | Slack API | 团队沟通 |
| @modelcontextprotocol/server-puppeteer | 浏览器自动化 | 网页操作 |
4. Claude Code SDK:构建自定义 Agent
4.1 SDK 的定位
Claude Code SDK 允许开发者基于 Claude 构建完全自定义的 Agent 应用,而不仅仅是使用 Claude Code CLI。
使用场景:
- 企业内部的自动化工作流
- 垂直领域的专业 Agent
- 产品中嵌入 AI Agent 能力
4.2 核心能力
Claude Code SDK 提供:
├── 对话管理:多轮对话、上下文维护
├── 工具调用:内置工具 + 自定义工具
├── MCP 集成:连接任何 MCP Server
├── 权限控制:细粒度的工具使用权限
├── 流式输出:实时展示 Agent 执行过程
└── 多 Agent:Team 模式支持 Agent 间协作
4.3 简单示例
import { Agent } from '@anthropic-ai/claude-code-sdk';
const agent = new Agent({
model: 'claude-sonnet-4-6',
tools: ['Read', 'Write', 'Bash'],
systemPrompt: '你是一个代码审查助手...',
});
const result = await agent.run('审查 src/auth.ts 的安全性');
console.log(result);
5. 产品经理视角:Agent 工具生态的演进
5.1 三个阶段
阶段一(2023):ChatGPT Plugins — 封闭平台,中心化
→ 失败原因:只能在 ChatGPT 中使用,开发者收益不明确
阶段二(2024):Function Calling — 开放但碎片化
→ 每个平台各自实现,开发者要为每个平台单独适配
阶段三(2025):MCP — 开放标准,去中心化
→ 一次开发,所有支持 MCP 的 AI 产品都能使用
5.2 对 AI PM 的启示
- 选型建议:新产品优先支持 MCP,而非自建插件系统
- 生态思维:工具连接器比工具本身更有价值(平台 > 功能)
- 数据护城河:MCP 让"连接私有数据"变得标准化,企业数据的价值进一步放大
- 商业模式:MCP Server 可以收费(SaaS 模式),类似 API Marketplace
核心要点
- Skills 是 Agent 的"App Store":用 Markdown 定义能力,非程序员也能创建
- MCP 是 AI 工具连接的 USB-C 标准:一次开发,到处连接
- MCP 提供三种能力:Tools(工具调用)、Resources(数据读取)、Prompts(交互模板)
- OpenClaw 是 MCP 的 npm:发现、安装、分发 MCP Server
- Claude Code SDK 让你构建自定义 Agent:不只是用 Agent,而是造 Agent
- AI PM 应该关注生态而非单点功能:谁掌握了工具连接标准,谁就掌握了 Agent 时代的入口