EN

Skill 与 MCP:标准化 AI 智能体能力的开放协议深度解读

从概念到实践,全面解析 Anthropic Skill 开放标准与 MCP 协议如何构建可复用的 Agent 能力

返回教程列表
进阶25 分钟

Skill 与 MCP:标准化 AI 智能体能力的开放协议深度解读

从概念到实践,全面解析 Anthropic Skill 开放标准与 MCP 协议如何构建可复用的 Agent 能力

本文深入解读 Anthropic 推出的 Skill 开放标准与 MCP 协议,涵盖 Skill 的三层结构、渐进式加载机制、跨平台兼容性,以及 Skill 与 MCP、Prompt、插件的本质区别。通过旅行规划助手案例展示 Skill 自进化方法,并对比 Anthropic、OpenAI、微软的智能体技能架构。最后提供零基础搭建 Skill 的七步指南,帮助开发者构建可复用的 Agent 能力。

引言:AI 智能体的能力复用困境

随着 AI Agent 从概念走向生产,开发者面临一个核心问题:如何让智能体高效复用已有经验,而非每次从零开始?传统 Prompt 虽灵活,但一次性、无留存;插件生态虽丰富,但耦合度高、跨平台困难。Anthropic 在 2025 年推出的 Agent Skills 开放标准(简称 Skill)与 MCP 协议(Model Context Protocol),正是为解决这一痛点而生。

Skill 是一套标准化的 AI 任务操作手册,以文件夹为载体,包含核心说明文档、可选脚本、参考素材,支持跨平台复用。MCP 则定义 AI 对接外部数据资源的标准接口。两者相辅相成:Skill 解决“该怎么做”,MCP 解决“去哪里获取数据”。

本文将从概念、结构、自进化、跨平台对比到实战搭建,全面解读 Skill 与 MCP 协议,帮助开发者构建可复用的 Agent 能力体系。

Skill 的核心概念与三层结构

什么是 Skill?

Skill 是 Agent Skills 开放标准 的简称,由 Anthropic 于 2025 年 10 月 16 日随 Claude 产品上线,同年 12 月 18 日作为开放标准对外公开。截至 2026 年,Claude、OpenAI Codex、Gemini CLI 等主流工具均已兼容该标准。

与一次性 Prompt 不同,Skill 是永久存储的标准化手册,AI 可自动读取并执行。例如,周报任务:使用 Prompt 需每周重复粘贴格式要求;使用 Skill 只需提前固化规范,后续发送“整理本周周报”即可自动完成。

Skill 的三层结构

一套 Skill 由三层组成,对应渐进式加载机制,有效减少上下文占用:

  • 路由层:包括 namedescription 和文件夹路径。Agent 启动时仅读取这些元数据,用于判断是否调用该 Skill。
  • 指令层:即 SKILL.md 正文,描述任务流程、判断标准、工具策略和输出约束。当任务匹配时,Agent 加载完整正文。
  • 资源层:可选目录 scripts/references/assets/,存放运行脚本、参考文档、模板素材。执行到对应环节时按需加载。
  • 文件结构示例

    
    weekly-report/                # 文件夹名 = Skill名称
    ├── SKILL.md                  # 核心必填:技能说明书
    ├── scripts/                  # 可选:可直接运行的程序脚本
    │   └── make_table.py
    ├── references/               # 可选:补充参考文档
    │   └── format-rules.md
    └── assets/                   # 可选:模板、素材、静态文件
        └── template.xlsx
    

    最简 Skill 仅需 SKILL.md

    SKILL.md 详解

    SKILL.md 包含两部分:

    1. 前置元数据(Frontmatter)

    yaml
    
    name: weekly-report description: 按照公司统一格式整理每周工作周报,用户提及写周报、周总结、整理本周工作、汇报进度时自动启用本技能

  • name:必填,最长 64 字符,仅允许小写字母、数字、短横线,须与文件夹名一致,禁止使用 anthropicclaude
  • description:必填,说明功能与触发关键词,网页端限制 200 字符,API 可放宽至 1024 字符。
  • 2. 执行正文

    正文使用 Markdown 编写,可包含流程步骤、判断条件、输出格式等。例如:

    markdown
    

    Workflow

  • 收集本周工作事项,按项目分类。
  • 对每项工作,描述完成情况、遇到的问题、下一步计划。
  • 生成周报表格,包含日期、项目、内容、状态。
  • Output Format

    使用 Markdown 表格,每行一个事项,列包括:日期、项目、完成内容、状态(已完成/进行中/待启动)。

    Skill 与 MCP、Prompt、插件的区别

    概念定位解决什么问题

    Prompt临时文字指令单次任务描述,对话结束失效 Skill标准化操作手册固化任务流程,可复用、跨平台 MCP数据接口协议连接外部数据库、API、文件等资源 插件功能打包载体集成多个 Skill、MCP 连接和指令

    Skill 和 MCP 常搭配使用:Skill 定义流程,MCP 提供数据。例如,一个“查询订单” Skill 可调用 MCP 服务获取实时数据。关于 MCP 的更多细节,可参考 MCP 协议详解

    Skill 的自进化机制

    Skill 的价值在于可迭代优化。通过分析用户反馈,可以持续更新三层结构:

  • 路由层:优化 description,使触发更精准。
  • 指令层:更新流程步骤和判断标准。
  • 资源层:补充细分场景的参考文档或脚本。
  • 案例:旅行规划助手

    初始版本 travel-planner-skill v1.0 的 Workflow 仅为:

    
    
  • 收集目的地、日期、预算、偏好。
  • 搜索景点、餐厅、交通。
  • 按天安排景点。
  • 生成每日行程。
  • 用户反馈“第三天太赶了”“不想频繁换乘”,系统可抽象为规则并写入指令层:

    
    
  • 按区域分组候选地点,再分配到各天。
  • 估算主要地点间的交通时间。
  • 根据用户节奏偏好控制每日密度:
  • - 轻松:2-3 个主要停靠点,留缓冲时间 - 标准:3-4 个 - 紧凑:4-6 个

    同时新增 Quality checks 段:

    
    

    Quality checks

  • 每天是否主要在一个地理区域内?
  • 主要停靠点间交通时间是否合理?
  • 停靠点数量是否符合用户节奏偏好?
  • 餐饮休息点是否靠近路线?
  • 对于“带老人小孩”等细分场景,可下沉到资源层 references/family-travel-constraints.md,主文件仅保留触发条件。

    定期压缩与验证

    随着迭代,需定期压缩规则:合并重复项、删除长期未触发的规则、将细节下沉。新版本需用历史任务验证,比较跨区域移动次数、平均交通时间等指标,通过后才发布。

    主流平台智能体技能对比

    Anthropic、OpenAI、微软三家在智能体技能架构上差异显著:

    维度Anthropic SkillsOpenAI Tools API微软声明式智能体

    架构三层 Markdown 轻量化四层 JSON 标准化四段声明式配置 触发方式自动(description)+ 手动自动(函数描述)自动(声明) 指令长度500-2000 token有限(函数描述)中等 资源挂载scripts/references/assets仅函数参数插件与能力声明 跨平台高(开放标准)低(仅 OpenAI)低(微软生态) 多智能体弱弱强 开发门槛低中高

    选型建议

  • 通用灵活、长流程复杂任务 → Anthropic Skills
  • 标准化单点工具、依赖插件生态 → OpenAI Tools API
  • 企业级多智能体协同 → 微软声明式智能体
  • 关于 Agent 架构的更多讨论,可参考 AI Agent 与多智能体

    零基础搭建 Skill 的七步指南

    第一步:选择高频标准化任务

    适合做成 Skill 的任务特征:

  • 高频重复(如周报、数据清洗)
  • 有固定流程和输出格式
  • 可脚本化或依赖参考文档
  • 不适合的场景:一次性需求、实时数据查询(应使用 MCP)、多变任务。

    第二步:创建基础文件

    创建文件夹,名称如 weekly-report,内部新建 SKILL.md

    第三步:编写元数据

    yaml
    
    name: weekly-report description: 整理每周工作周报,用户说“写周报”“周总结”“整理本周工作”时触发

    第四步:分步写流程并配示例

    markdown
    

    Workflow

  • 收集本周工作事项,按项目分类。
  • 对每项工作,描述完成情况、遇到的问题、下一步计划。
  • 生成周报表格。
  • Example

    日期项目完成内容状态

    周一A项目完成模块开发已完成

    第五步:拆分冗余细则

    将详细判断标准、约束条件放入 Quality checks 或 references 目录,保持主流程简洁。

    第六步:自检格式

  • 文件夹名与 name 一致
  • description 包含触发关键词
  • 正文 Markdown 格式正确
  • 脚本路径正确(如有)
  • 第七步:试运行与排错

    部署到 Claude 网页端(上传 zip)、Claude Code(放入本地 skills 文件夹)或 API(通过接口上传,需 beta 请求头)。测试触发词是否生效,流程是否按预期执行。

    跨平台迁移与安全注意事项

    跨平台迁移

    核心 SKILL.md 无需修改,仅需调整存放目录。Bash/Python 脚本全平台兼容,但平台专属配置文件(如 Claude 的 claude_config.json)无法通用。

    安全风险

    Skill 支持运行本地脚本,恶意技能可读取文件、窃取隐私。仅使用自制或可信来源的 Skill,避免执行不明脚本。关于安全最佳实践,可参考 AI 安全防护指南

    多模态 Skill 的前沿探索

    传统 Skill 局限于纯文本,但视觉任务(如图片编辑、GUI 自动化)需要“看明白”。openJiuwen 社区发布的 Skill-Omni 范式,可从网页或视频中提取关键截图、界面状态,生成多模态 Skill。Agent 执行时按需读取图片,避免上下文膨胀。

    例如,一个“修复欠曝光照片”的 Skill 可包含前后对比图,Agent 据此判断调整是否到位。多模态 Skill 为 Agent 提供了更大的决策信息空间,尤其适合图像编辑、GUI 自动化、视频教程沉淀等场景。

    FAQ

    Q1: Skill 和 Prompt 的核心区别是什么? A: Prompt 是单次临时文字指令,对话结束即失效;Skill 是固化在文件夹的标准化手册,可无限复用,还能搭载脚本、素材、参考文档。

    Q2: 如何让 AI 主动调用我的 Skill? A: 关键在于 description 字段,需写明功能并包含各类口语化触发关键词(如“写周报”“周总结”),AI 据此匹配任务。

    Q3: Skill 能跨平台使用吗? A: 可以。核心 SKILL.md 无需修改,仅需调整存放路径。Claude、OpenAI Codex、Gemini CLI 等均已兼容 Agent Skills 开放标准。

    Q4: 什么是渐进式披露机制? A: AI 分层加载 Skill:启动时仅读取 name/description;匹配任务才读正文;执行到对应环节才调取脚本/素材,从而减少上下文占用。

    Q5: Skill 能完全解决 AI 输出不稳定的问题吗? A: 不能完全解决。SKILL.md 正文仍存在 Prompt 理解偏差,但脚本运行环节可完全绕开 AI 主观判断,大幅降低误差。

    Q6: 使用第三方 Skill 有哪些安全风险? A: Skill 支持运行本地脚本,恶意技能可读取本地文件、窃取隐私、执行高危程序。建议仅使用自制或可信来源的 Skill。