什么是MCP?什么是Skill?它们又有什么区别和联系?

40 阅读9分钟

MCP 是什么?

**MCP(Model Context Protocol,模型上下文协议)**是由 Anthropic 推出的一项开源标准,旨在标准化 AI 模型与外部数据源、工具之间的连接方式。你可以把它形象地理解为 AI 领域的“USB-C 接口”

过去,要让 AI 访问某个特定的数据库或 API,开发者必须为每个 AI 应用编写定制的集成代码。MCP 的出现打破了这种碎片化。它是一个开放的通信协议,允许开发者构建一次数据接口(MCP Server),就可以被任何支持 MCP 协议的 AI 客户端(如 Claude Desktop、Trae、Cursor 等)无缝接入。它极大增强了 AI 获取实时信息和操作外部系统的能力。

它是什么样子的?

从架构上看,MCP 采用的是经典的客户端-服务端(Client-Server)模型。它主要由以下核心部分组成:

  • MCP Host(宿主应用程序): 也就是用户直接交互的 AI 软件(比如 Trae IDE,或者 Claude Desktop)。
  • MCP Client(客户端): 运行在 Host 内部,负责管理与各个 Server 的连接。
  • MCP Server(服务端): 这是一个轻量级的独立程序,充当 AI 与具体数据源之间的桥梁。你可以编写一个连接 GitHub 的 MCP Server,或者一个查询本地 MySQL 数据库的 MCP Server。

在协议层面,MCP Server 主要向 AI 暴露三种核心能力:

  1. Resources(资源): 提供 AI 可以读取的上下文数据,通常带有类似 file://postgres:// 的 URI Scheme(比如具体的日志文件、数据库 schema 等)。
  2. Tools(工具): 允许 AI 模型主动调用的可执行函数(比如执行一段 SQL 查询、拉取某个网页内容、甚至发邮件)。
  3. Prompts(提示词): 预定义的提示词模板或工作流,帮助用户快速启动特定任务。

它们之间的通信使用的是 JSON-RPC 2.0 格式,底层传输机制通常是 stdio(用于运行在本地机器上的 Server)或 SSE(Server-Sent Events,用于远程 Server)。

它是如何起作用的?

MCP 的实际运作流程非常自然,通常包含以下几个步骤:

  1. 初始化与能力发现: 当你启动支持 MCP 的 AI 应用时,应用会启动并连接你配置好的 MCP Server。建立连接后,Server 会向 AI 声明:“我拥有读取数据库的能力,并提供了一个叫 query_db 的工具”。
  2. 接收用户指令: 你向 AI 提问:“帮我查一下数据库里今天新注册的用户数量”。
  3. 大模型推理与决策: AI 模型分析你的意图后,发现自己不具备实时数据库信息,但它知道刚才 MCP Server 注册过一个 query_db 工具。于是,AI 决定生成一个调用该工具的请求(包含必要的 SQL 语句或参数)。
  4. 执行操作: AI 应用(Client)通过协议将这个 JSON 格式的请求发送给 MCP Server。Server 接收后,实际连接到真实的数据库执行查询操作。
  5. 返回并生成回答: Server 将数据库查询的结果(比如“共有 15 名新用户”)返回给 AI。AI 拿到这个上下文后,将其转化为自然语言回答给你:“今天数据库中共有 15 名新注册用户。”

SKill是什么

在 AI 智能体(Agent)和 AI 开发工具(如 Trae 等 IDE)的语境下,Skill(技能)是指 AI 掌握的、用于完成特定复杂任务的“标准化工作流”或“高级本领”。

如果说 MCP 和底层工具(Tools)给 AI 提供了“手和脚”(比如读取文件、联网搜索的能力),那么 Skill 就是教会 AI “如何运用这些手脚去跳一支特定的舞蹈”。

以下是对 Skills 的详细拆解:

┃ 1. Skills 是由什么构成的?

一个完整的 Skill 通常并不是单一的代码,而是以下几个元素的“打包组合”:

• 专属提示词(System Prompt): 为 AI 设定一个特定的角色和目标。比如在“代码审查”技能中,提示词会告诉 AI:“你现在是一个拥有 10 年经验的高级资深工程师,你的目标是找出代码中的性能瓶颈和安全漏洞。”
• 工作流编排(Workflow / Logic): 定义了完成这个任务的固定步骤。比如:第一步先读取变动的文件 -> 第二步检索相关的官方文档 -> 第三步执行本地代码测试 -> 第四步输出特定格式的报告。
• 工具集(Tools / MCP): 这个技能在执行过程中被授权使用的工具列表(比如读写文件的工具、执行 Bash 命令的工具等)。

┃ 2. 为什么需要 Skills?

• 降低用户门槛: 用户不需要一步步“手把手”教 AI 怎么干活。你不需要说“请先读取文件 A,再分析它的逻辑,再和文件 B 对比,最后告诉我区别”。你只需要触发一个名叫 Explain Code(解释代码) 的 Skill,AI 就会自动走完这个流程。
• 保证结果的稳定性与专业性: 通过预设优秀的提示词和标准流程,Skill 可以确保 AI 每次面对同类任务时,都能输出高质量、格式统一的结果,而不是每次都靠大模型“自由发挥”。

┃ 3. Skills 的典型例子

在日常开发中,你可能会遇到或者使用以下这些典型的 Skills:

• Code Review(代码审查): 自动拉取 Git Diff,分析代码规范,指出潜在 Bug,并直接在代码中生成评审评论。
• Generate Tests(生成测试用例): 自动分析当前函数的输入输出,寻找边界条件,并生成对应的单元测试代码。
• Debug / Fix Error(错误诊断): 当你的终端报错时,这个 Skill 会自动抓取报错日志,去代码库里搜索错误源头,甚至在网上搜索解决方案,最后给你一个修改建议。
• Onboard(项目引导): 当你刚接手一个新项目时,触发这个 Skill,AI 会自动阅读 README、梳理代码架构、找出核心入口,并给你生成一份项目大纲。

┃ 4. 形象的总结

• 大模型(LLM): 是一个超级聪明但没有经验的大学毕业生。
• Tools / MCP: 是分配给他的办公电脑、内网权限、搜索引擎。
• Skills: 就是发给他的**《员工岗位SOP(标准作业程序)手册》**。

当你对 AI 说“执行代码审查技能”时,就相当于告诉这个聪明的毕业生:“现在翻开SOP手册的第三页,按照上面的 5 个步骤,用你的电脑完成这份代码的审查工作。”

MCP 与 Skills (技能) 的区别和联系

要理解 MCP 和 Skills(技能) 之间的区别与联系,我们可以从底层基础设施上层应用能力这两个维度来区分。

简而言之:MCP 是连接标准(像 USB 接口),而 Skills 是 AI 掌握的具体本领或工作流(像使用打印机打印文档的能力)。

1. 核心区别 (Differences)

维度MCP (Model Context Protocol)Skills (技能)
本质定位底层通信协议/架构标准。它定义了 AI 客户端如何与外部服务进行数据交换和工具调用。上层应用能力/工作流。它代表了 AI 能够为用户完成的特定、复杂的任务或流程。
抽象层级偏向底层和技术实现。关注于 JSON-RPC 格式、stdio/SSE 传输、安全校验等。偏向用户侧和业务逻辑。关注于完成一个具体任务(如“审查代码”、“总结网页”、“创建架构图”)。
通用性与标准跨平台的开源标准。一个写好的 MCP Server 可以同时被 Trae、Cursor、Claude Desktop 等不同软件使用。通常是平台绑定或产品特有的。比如 Trae 里的某个特定 Skill,换到另一个 AI 软件里可能就不叫这个名字,或者实现方式完全不同。
组成要素由 Resources(资源)、Tools(工具函数)、Prompts(提示词)组成。通常由一系列特定的 Prompt(提示词)、上下文数据以及对多个基础工具(可能包含 MCP 提供的工具)的编排组合而成。

2. 内在联系 (Connections)

尽管它们位于不同的层级,但在现代 AI Agent 的架构中,它们是紧密合作的:

  • MCP 是构建 Skills 的“武器库”: 一个强大的 Skill 通常需要访问外部数据或执行动作。例如,一个名为“数据库诊断专家”的 Skill,它本身只是一套诊断逻辑和提示词(思考方式)。为了真正发挥作用,它需要通过 MCP 连接到本地的 MySQL 数据库去读取 schema(利用 MCP 的 Resources)和执行诊断 SQL(利用 MCP 的 Tools)。
  • Skills 是 MCP 能力的“业务封装”: MCP 暴露出来的往往是原子化的能力(例如:read_file, github_search_issue, execute_bash)。普通用户直接调用这些工具会比较繁琐。Skills 可以将这些底层的 MCP 工具打包成一个连贯的工作流。例如,“代码审查 (Code Review)” Skill 会自动执行:使用 MCP 拉取代码 -> 使用大模型分析 -> 使用 MCP 提交 Review 评论。
  • MCP 的 Prompts 类似于轻量级的 Skills: MCP 协议中包含一个 Prompts 模块,允许服务端向 AI 提供预设的指令模板。这其实就是一种最轻量级的、跨平台的 Skill 分发方式。

3. 一个通俗的类比

  • 基础工具(Tools / API): 就像是各种食材和厨具(比如刀、锅、土豆、牛肉)。
  • MCP(协议): 就像是标准化的厨房操作台和天然气管道。它让任何厨师(AI 模型)来到这个厨房,都能用同样的方式打开灶台、拿到锅碗瓢盆,而不需要关心燃气管是怎么铺设的。
  • Skills(技能): 就像是厨师掌握的**“土豆烧牛肉”这道菜的菜谱和烹饪流程**。厨师(AI)运用它的 Skill(菜谱),站在操作台(MCP)前,使用厨具和食材(Tools),最终为你端出一盘菜(完成任务)。