什么是 MCP?

MCP(Model Context Protocol) 是 Anthropic 推出的一个开放协议,用于连接 AI 模型和外部工具/数据源。它允许 AI Agent 安全地访问远程技能和工具。

MCP 架构组成

text
┌─────────────┐    MCP     ┌─────────────┐
│   AI Agent  │ ◄────────► │  MCP Server │
│   (Client)  │            │  (Tools)   │
└─────────────┘            └─────────────┘

核心组件

  1. MCP Client (AI Agent)
    发起请求的 AI 应用程序

如:Claude Desktop、自定义 AI Agent

  1. MCP Server (Tools Provider)
    提供具体技能的服务器

每个服务器可以暴露多个工具

  1. MCP Protocol
    基于 JSON-RPC 2.0

支持 SSE(Server-Sent Events)或 stdio 通信

什么是SKILLS

Skill是 AI Agent 能力的核心,良好的技能设计和管理是实现智能代理的关键。
这确实是Anthropic官方推出的一种功能,它将指令、脚本和资源封装成可复用的“技能包”,能显著提升Claude在专业任务上的表现。

  • 核心机制:渐进式披露 Claude Skills的关键创新在于其按需加载的机制:
  • 低开销待机:会话开始时,Claude仅读取所有技能的YAML元数据(名称和简短描述),每个技能只占用几十个Token,成本极低。
  • 按需唤醒:只有当你的任务与某个技能描述高度相关时,Claude才会加载该技能的完整指令、脚本和资源。这避免了在每次对话中都塞入冗长指令,既能节省宝贵的上下文窗口,又能保持模型专注。

🛠️ Skill组成与创建

一个标准的Claude Skill文件夹通常包含以下内容:

组件 说明

SKILL.md (核心)

一个Markdown文件,包含YAML前置元数据和详细的执行指令。技能能否被准确触发,很大程度上取决于其中对能力和适用场景的语义化描述。

脚本 (Scripts)

可选的Python等可执行脚本,用于处理复杂或需要确保可靠性的操作。

资源 (Resources)

可选的模板、样式表、参考文档等附加文件。

创建技能的过程对非开发者也很友好。你甚至可以直接在Claude聊天中描述需求,它会引导你并打包生成一个.skill文件供你上传启用。对于更复杂的需求,也可以参考Anthropic在GitHub上开源的官方示例和最佳实践。

🔄 Skills与MCP的对比

你之前了解的MCP(模型上下文协议) 和 Skills 是互补但不同的概念,下表清晰地展示了两者的核心区别:

特性维度 Claude Skills MCP (模型上下文协议)
核心定位 封装“程序化知识”与工作流。指导AI“如何思考和处理”特定任务。 提供“连接工具”的标准协议。充当AI的“手和脚”,用于安全连接外部数据源和工具(如数据库、API)。
运作方式 基于文件(Markdown/脚本),依赖模型的代码执行环境来运行 基于客户端-服务器通信协议,通过定义好的接口调用工具
优势 简单、灵活、易共享。一个Markdown文件加几个脚本就能创建一个技能,且易于跨模型使用 标准化、安全。为工具集成提供了统一、受控的安全框架
局限性 依赖安全的代码执行沙箱环境 协议相对复杂,集成工具时会消耗较多上下文Token

实用信息与建议

如何获取技能:除了自己创建,你还可以从 Anthropic官方技能库 或第三方市场(如 skillsmp.com)发现和安装他人共享的技能。

使用准备:使用前需在Claude的设置中启用 代码执行与文件创建 功能。该功能面向Pro、Team、Enterprise等付费套餐用户开放。

组合使用:可以同时启用多个技能。例如,让Claude运用“品牌指南”技能设计样式,用“AI口语化编辑”技能优化文案,再调用内置的“pptx”技能生成最终幻灯片。

总结而言,Claude Skills通过封装可复用的专业知识与工作流,并利用渐进式披露机制高效加载,正推动AI从执行简单指令转向处理稳定、复杂的专业任务。

希望以上信息能帮助你全面理解Claude Skills。如果你正在考虑为某个特定任务创建或寻找技能,我可以帮你一起梳理更具体的方向。

如何用mcp实现agent访问公共skills库的能力

有几种成熟的MCP(模型上下文协议)工具可以帮Agent访问公共Skills库,核心思路是通过一个MCP服务器作为“技能管理器”,Agent通过标准协议访问,无需手动将技能复制到每个项目。

三种主流MCP技能服务方案

你可以根据开发语言偏好和技术栈,从下表中选择一个方案开始:

方案名称 技术栈 核心理念 主要工具/能力 适用场景
OpenSkill Node.js / Docker 安全沙箱执行:在隔离的Docker容器中运行技能脚本,侧重安全执行 get-skill, use-skill, 沙盒执行命令 注重执行安全,需运行外部脚本(如Python分析、文件处理)。
SkillPort Python 渐进式披露与统一管理:统一管理技能库,按需向不同Agent分发技能 search_skills, load_skill, 技能分类过滤 管理大量技能、需要跨团队/项目共享、为不同Agent分配不同技能集。
Agent Skill Loader Node.js 动态学习与安装:让Agent动态发现、学习技能,并可按需安装到本地项目。 list_skills, read_skill, install_skill 希望Agent能主动探索技能库,并灵活地将常用技能“固化”到项目中。

实现步骤与关键配置

无论选择哪种方案,实现流程都相似:

安装MCP服务器

根据所选方案,通过npm或pip安装对应的MCP服务器程序。

配置技能库路径

准备技能:将公共技能库(如Anthropic官方库或第三方库)克隆或下载到本地某个目录。

指定路径:在配置中设置 SKILLS_DIR 等环境变量,指向你的本地技能目录。

配置你的AI客户端

在你使用的AI客户端(如Claude Desktop、Cursor等)的MCP配置文件中,添加该MCP服务器的启动命令和参数。例如,在Claude Desktop的 claude_desktop_config.json 中添加相应配置段。

重启并使用

重启AI客户端,Agent即可通过MCP协议发现并调用技能库中的技能。

如何选择与最佳实践

根据场景选择:

  • 如果需要安全执行代码,选OpenSkill;
  • 如果集中管理、分发大量技能,选SkillPort;
  • 如果希望Agent主动学习并安装技能,选Agent Skill Loader。

技能格式兼容:以上方案都兼容Claude Skills的标准格式(即包含SKILL.md的文件夹),你可以直接使用从GitHub等平台下载的公共技能。

组合使用:一个Agent可以同时配置多个MCP服务器。例如,可以同时用SkillPort管理内部业务技能,用OpenSkill安全执行数据分析脚本。

🔄 Skills与MCP协作的本质

你需要明确的是:Skills(技能)是封装了“程序化知识”和“工作流”的指令包,而MCP是让Agent能够访问这些技能包(以及其他工具和数据)的“管道”或“协议”。通过MCP访问技能库,正是将两者优势结合,让Agent不仅能拿到“工具”(技能),还知道“如何专业地使用工具”。

Logo

电影级数字人,免显卡端渲染SDK,十行代码即可调用,工业级demo免费开源下载!

更多推荐