模型上下文协议(MCP)与智能体技能:赋能人工智能智能体的工具与专业知识
即便是最先进的 AI 智能体,如果无法便捷访问外部系统,也可能被“隔离”在缺乏最新数据与服务的环境中。在实践中,MCP 让 AI 智能体能够以标准化方式调用“工具”(外部系统提供的操作),实现双向交互——既可以获取信息,也可以发送指令——只要该数据仓库、Web 服务或应用提供了 MCP 连接器即可。如果智能体运行环境支持代码执行(例如沙箱脚本),智能体可以生成一段短脚本,用 MCP Client
【理解模型上下文协议(MCP)】
Anthropic 的模型上下文协议(Model Context Protocol,MCP)是一项开放标准,旨在把 AI 模型(例如大型语言模型智能体)与其所需的外部工具和数据源连接起来。即便是最先进的 AI 智能体,如果无法便捷访问外部系统,也可能被“隔离”在缺乏最新数据与服务的环境中。传统上,要把 AI 助手接入每一个数据源或 API,都需要单独定制一次性集成方案,最终形成碎片化、难以扩展的架构。MCP 通过提供一种通用协议来解决这一问题:开发者只需实现一次集成,就能复用到更多服务,而无需为每个新系统重复造轮子。
在实践中,MCP 让 AI 智能体能够以标准化方式调用“工具”(外部系统提供的操作),实现双向交互——既可以获取信息,也可以发送指令——只要该数据仓库、Web 服务或应用提供了 MCP 连接器即可。
============================================================
【MCP 如何工作】
MCP 的架构由 MCP Server 和 MCP Client 组成。
一、MCP Server 是什么
MCP Server 可以理解为对某个数据源、应用或服务的“封装层/适配器”。例如:Google Drive 连接器、数据库接口等。它会通过 MCP 标准暴露一组动作(actions),例如:
-
gdrive.getDocument
-
database.query
二、MCP Client 是什么
MCP Client 通常内置在 AI 智能体或智能体平台中,负责:
-
发现可用工具(tools)
-
通过协议调用这些工具
一旦建立连接,智能体就可以用统一语法调用任意已连接 server 上的任意工具。
三、一个端到端例子
比如用户要求智能体:
“从 Google Drive 下载我的会议纪要,并把它附加到 Salesforce 的某个线索(Lead)上。”
智能体可以按步骤调用:
-
gdrive.getDocument 获取文件内容
-
salesforce.updateRecord 把内容附加到线索记录
整个多步流程都通过 MCP 的标准化接口完成。
四、协议底层发生了什么
在底层,MCP Client 会把智能体发出的工具调用路由到对应的 MCP Server(例如 Google Drive 连接器)。MCP Server 执行动作并返回结果给智能体。
这种统一方法消除了为每个服务在智能体内部硬编码独立 API 调用方式或凭证的需求。
============================================================
【支撑 AI 智能体工作流:MCP 带来的生态与能力扩展】
通过消除定制集成,MCP 显著降低了构建“可调用大量工具与数据源的智能体”的门槛。自 2024 年末以开源形式推出以来,社区已经为常见平台构建了成千上万的 MCP 连接器(servers),并且主流编程语言都有 SDK 支持。许多组织也把 MCP 视为智能体与工具通信的事实标准。
这意味着:如果你把智能体构建为支持 MCP Client,那么你几乎可以“开箱即用”地接入广泛工具生态(从云盘、SaaS 应用到数据库),而无需额外编写集成代码。早期采用者通过 MCP 为智能体提供更丰富的上下文,例如:Replit、Sourcegraph 等开发平台把智能体接到代码仓库与文档系统,让 AI 能检索相关代码片段或工单,从而更准确地辅助编码任务。
与其被困在静态知识库里,支持 MCP 的智能体可以动态查询业务数据、拉取用户文件、更新记录,或调用任意 MCP Server 提供的能力,把这些动作纳入自己的推理循环。
============================================================
【工具太多带来的挑战:上下文窗口与 Token 成本】
但当智能体连接了大量工具时,也会出现新的问题。一个朴素实现可能会:
-
把每个工具的定义都塞进 prompt 上下文
-
把每一次中间结果都回传给模型
这会迅速压垮上下文窗口并导致高昂的 token 成本(想象一下:智能体连接了数百个工具,每个工具都有冗长描述;或者把一份大文档的文本反复塞入模型两次)。
为了解决这些问题,开发者开始采用更高效的模式,其中一种典型模式是:把工具调用放到模型上下文之外,通过代码执行来完成。
一、更高效的模式:用代码执行调用 MCP 工具
如果智能体运行环境支持代码执行(例如沙箱脚本),智能体可以生成一段短脚本,用 MCP Client 库只调用必要工具,并在内存中处理数据,而不是把大段输出全部塞进 prompt。
例如在 Anthropic 的 Claude Code 环境里,智能体可以生成脚本来调用 MCP 工具,并在代码层处理返回结果,从而避免把大量中间数据挤进模型上下文。
二、这种模式带来的收益
-
工具定义按需加载,而不是全量加载
-
大数据处理在代码侧完成,减少上下文膨胀
-
智能体可以连接几十甚至几千个工具,而不会拖慢每次对话
-
只在需要时调用工具 API,并以更高效方式处理结果
结果就是:更可扩展的工作流——工具数量增长不会让每次对话变得臃肿低效。
============================================================
【MCP 网关:规模化与安全治理的关键层】
当 MCP 进入真实应用(尤其是企业场景)时,往往需要额外基础设施来管理大量集成的复杂性。这就引出了 MCP 网关(MCP Gateway) 的概念。
MCP 网关是一层集中式中间件,位于 AI 智能体(clients)与多个 MCP servers(工具与数据源)之间,目标是统一、加固与治理工具连接。与其让智能体直接连接组织内四散的多个 MCP server,不如让它连接一个网关,由网关负责代理与编排实际工具访问。
这个中心层能提供关键企业能力:认证、权限控制、使用监控,以及更易扩展的基础设施管理。
============================================================
【以 Peta 为例:MCP 网关与控制平面如何带来价值】
Peta 是一个实现 MCP 网关与控制平面的项目,能直观展示这种架构如何帮助智能体开发者与 IT 团队。
一、统一接入与路由编排
Peta 的网关(Peta Core)终止来自智能体的请求,并将其路由到对应的 MCP server;甚至可以把某些非 MCP 的 API“虚拟化”为工具,通过网关提供给智能体使用。
二、密钥不出网关:服务端注入凭证
Peta 在安全上强调:外部服务的 API key 与凭证不会暴露给智能体,也不会进入 prompts。它们被安全存储在 Vault 中,仅在调用时在内存中注入使用。
Peta 会向智能体发放短期服务 token,采用零信任模型:智能体永远看不到原始密钥。
三、细粒度策略与审批
网关会对每一次工具调用执行细粒度策略,例如:
-
哪些智能体/用户可以调用 deleteUser 这类动作
-
某些操作只能在工作时间执行
-
高风险动作需要人工审批后才能继续
四、按需编排 MCP servers,降低运维与成本
在运维层面,像 Peta 这样的网关还可以按需拉起连接器实例:需要时启动,不用时关闭,减少常驻服务带来的成本与维护压力。
同时它也能把传统 REST/gRPC API 包装成“虚拟 MCP server”,避免你为每个服务都手写一套 MCP 集成。
============================================================
【总结:为什么网关模式让 MCP 进入企业可用状态】
MCP 网关把 MCP 的核心思想(多工具、统一协议)推进到下一阶段:加上一层管理与治理。
对于开发者而言,使用网关并非强制——你可以直接连特定 MCP servers;但当智能体要接入关键系统、或工具数量很多时,网关能提供更“企业级”的路径。
像 Peta 这样的项目展示了:如何让自治智能体在生产环境里“可放心上线”:
-
智能体通过网关获得所需工具能力
-
安全与合规团队得到集中化控制:智能体能做什么、何时能做、是否需要审批
-
所有工具使用都有完整审计日志
-
具备介入机制与严格护栏
这使 AI 智能体能够安全地处理敏感数据并执行真实操作,同时不牺牲监督与可控性。
============================================================
【智能体技能(Agent Skills):给 AI 装上领域能力】
如果说 MCP 关注的是把智能体连接到外部能力,那么 Anthropic 的 Agent Skills 则关注让智能体本身具备可复用的“内化技能与知识”。
Skill 本质上是一份模块化知识包:一个文件夹,包含说明、示例,以及可选代码,用来教 AI 如何以可重复、可靠的方式完成某类专门任务。
可以这样类比:
-
MCP 像给智能体“工具”
-
Skills 像给智能体“作业手册/训练模块(playbook)”
每个技能封装一个专业领域的流程:例如按公司格式生成报告、特定方法分析财务数据、或执行某套应用测试步骤。安装技能后,智能体就具备该流程的操作方法与规范。
============================================================
【Skill 的定义:SKILL.md 的结构】
从技术上看,一个 skill 由 SKILL.md 文件定义(Markdown 格式),由两部分组成:YAML 头部(frontmatter)+ 正文说明。
一、YAML 头部提供元数据
至少包含:
-
skill 的唯一名称
-
skill 的描述:做什么、何时使用
这些元数据决定了智能体如何识别与选择技能。
二、正文是详细“操作手册”
YAML 之后的正文包含:
-
详细步骤
-
使用准则
-
示例与注意事项
这些内容就是技能要教给 AI 的“标准流程”。
三、技能文件夹还可包含其他资源
例如参考文档、模板、脚本等。整个文件夹作为一个自包含模块,可版本管理与共享。Anthropic 也提供了公开的示例技能仓库供参考与复用。
============================================================
【Skills 如何被智能体使用:渐进式披露(Progressive Disclosure)】
Skills 引入了一个关键机制:渐进式披露上下文。它避免把所有可能用到的内容一次性塞进 prompt(对复杂系统这是不可能的),而是分层加载。
一、启动时只加载“目录级信息”
当智能体(例如 Claude)启动或开始会话时,只会把每个技能的:
-
名称
-
描述
加载到系统提示词中。
这相当于一个轻量的“目录(table of contents)”,让模型知道有哪些技能可用、各自大概干什么。
例如:有个 skill 名为 excel-reporting,描述为“如何按企业品牌规范生成 Excel 表格并包含公式”。模型看到这条元信息后,就知道需要时可以调用该技能。
二、需要时再加载技能全文
当智能体判断某个技能对当前任务有用,就会“激活”技能并读取 SKILL.md 全文(通过文件读取工具/命令)。这时,技能的详细步骤与示例才进入模型上下文。
三、引用的大文件再按需加载
如果技能还引用了额外文件(比如大型参考手册或可选子流程),智能体也会只在确实需要时再读取。
例如:SKILL.md 里有核心流程,但把“填写 PDF 表单”放在 forms.md 中,只有进入表单填写步骤才会读 forms.md。
这种方式就像一本组织良好的手册:目录随手可查,真正用到的章节才翻开细读。
四、为什么这让规模化成为可能
通过按需加载,技能库不会因为数量增多而膨胀系统 prompt。智能体可以拥有大量技能,而只在调用时付出 token 与延迟成本。
由于技能依赖文件系统访问与(可能的)代码执行,一个技能能包含的信息总量几乎不受限制:智能体可以分批读入技能内容,远超单次 prompt 能承载的信息量。这也是技能对可扩展 AI 工作流极具吸引力的原因之一。
============================================================
【Skills 还能包含代码:用确定性程序提高可靠性】
技能不只是自然语言说明,还可以打包可执行代码,供智能体运行。现代智能体常具备沙箱工具执行能力(如运行 Python),因此技能可以携带脚本,让某些步骤更可靠、更高效。
例如:Anthropic 内置的 PDF 处理技能包含一个 Python 脚本,用于从 PDF 中提取表单字段。智能体需要提取数据时,不必让语言模型硬解析整个 PDF(大且可能非纯文本),也不必在推理里写复杂算法(很费 token),而是直接运行脚本。
通过在关键步骤使用确定性代码,智能体行为会更可靠、更可复现。开发者可以在技能中加入各种 helper 程序,使智能体在技能激活时拥有更多“内置工具”。
============================================================
【开发自定义 Skills:把组织经验变成可复用能力】
对开发者而言,自定义 skill 很直接:
-
用 Markdown 写清楚步骤与规范
-
加一个简短 YAML 头部
-
打包为一个文件夹
例如你可以创建 financial-modeling 文件夹,SKILL.md 的 name 为 financial-modeling,描述为“如何按标准金融实践进行 DCF 折现现金流分析”,并写清流程、示例输入输出;必要时附一个 Python 脚本做精确计算或生成图表。
上传到 Claude(或你的智能体平台)后,当用户提出相关请求,智能体就能利用该 skill 以专家方式完成任务,即使基础模型本身并未被训练过你这套具体流程。Anthropic 也指出,这种方式可以把组织最佳实践沉淀下来,让“新成员从第一天起就能拿到专家级结果”,因为所有人用的是同一套 skills。
技能还可叠加:复杂任务中,智能体可能连续使用多个技能(比如先用 data-cleaning,再用 report-writing),无需你显式指令切换。
值得注意的是:截至 2025 年末,Anthropic 将 Skills 格式以 Agent Skills 形式开源,并提供了跨平台规范(agentskills.io)。这意味着 skills 不仅属于 Claude:其他框架也可以采用同一标准,实现“写一次,到处用”。同一 skill 定义已经可在 Claude 网页端、Claude Code、API 等多个界面复用,这种可移植性对开发者是巨大优势。
============================================================
【对比 MCP 与 Skills:差异与最佳用法】
MCP 与 Agent Skills 是互补的两类工具,目标都是增强智能体能力,但解决的问题不同。可以从功能、灵活性、模块化与典型场景来对比:
一、功能:外部工具 vs 内部知识
-
MCP:给智能体外部能力(“手和脚”)。需要实时数据、发邮件、查数据库、调用内部 API、执行交易等,都属于 MCP 的范围:它把智能体通过标准化工具接口连接到外部系统。
-
Skills:给智能体内部专业能力(“大脑与作业手册”)。Skill 通常不直接连接外部服务(尽管可包含代码去调用),而是提供结构化指导、领域逻辑与操作标准。例如:MCP 让智能体能连 CRM;Skill 让智能体知道如何按公司规范完成销售沟通或按公司政策生成 CRM 报告。Skills 用显式步骤与标准补足基础模型可能没有、或无法稳定执行的流程性知识。
二、灵活性与可扩展性:向外扩展 vs 向内加深
-
MCP 扩展的是“能做什么/能访问什么”(广度):只要有 MCP server(没有也可以写或由网关包装),几乎任何服务都能接入,智能体可获取实时信息与执行操作。
-
Skills 扩展的是“知道什么/怎么做”(深度):你可以不断添加/更新技能,教智能体新方法或改进行为;且因渐进式披露,技能库规模增长不会压垮基础 prompt。
总结:MCP 让智能体向外“触达”更广;Skills 让智能体在特定领域“做得更对、更一致”。
三、模块化与维护:集成模块化 vs 认知模块化
-
MCP 让外部集成模块化:每个工具/服务用独立 connector(server)实现,智能体用统一接口调用,便于增删改。
-
Skills 让知识与流程模块化:每个 skill 是自包含插件,可独立开发测试、随时启停,组织内部可复用同一 skill 保持一致性(例如全公司共用“公司写作风格”技能)。
两者都提高可维护性:
-
MCP 避免为每个 agent/场景重复写集成逻辑
-
Skills 避免在多个场景重复粘贴长 prompt 或操作说明
四、典型使用场景:什么时候用 MCP,什么时候用 Skills,什么时候一起用
-
MCP 适合:实时数据访问、交易、工具调用、外部动作执行(研究助手的检索、客服接工单系统、运维做部署/通知等)。
-
Skills 适合:流程一致性、领域推理、格式与标准(法律文书结构、代码审查清单、数据分析步骤等);也适合解决大知识库的上下文窗口问题(技能可按需读取大量参考材料)。
-
最佳实践通常是两者结合:例如“自动生成业务报告”的智能体,可以用 MCP 抓数据、拉文件、执行外部命令,再用 Skills 按公司规范分析并写报告。MCP 解决连接与动作,Skills 保证方法与输出质量。
============================================================
【结论】
Anthropic 的 MCP 与 Agent Skills 代表构建更强大 AI 智能体的两项重要进展。
-
MCP 通过标准化接口让智能体走出“模型沙箱”,与软件与数据世界交互:检索信息、调用 API、修改外部系统状态,从而把聪明聊天机器人升级为真正能执行工作流的智能体。
-
Skills 则把现实任务的细节与复杂性,通过“人类式步骤与组织经验”注入智能体推理:让智能体更一致、更可靠、更专业,而无需重新训练模型。
对开发者而言,两者都强调“配置与组合”而非硬编码:让 MCP 负责工具连接,让 Skills 负责任务流程。模块化带来的收益是可演进:你可以独立替换某个 MCP connector,或单独升级某个 skill 的流程,而无需推翻整个智能体系统。开放标准也促进了生态与复用:你能使用别人做的连接器与技能,也能分享自己的能力,加速创新。
总之,MCP 与 Skills 分别从“行动能力”与“专业知识”两个维度增强智能体,二者互补。下一代智能体产品往往会同时使用它们:
-
用 MCP 把智能体接入 API 与数据库世界
-
用 Skills 把领域经验与流程知识接入智能体“脑中”
两者结合,我们离真正能在复杂环境中自治运行的智能体更近一步:它们不仅知道该做什么、怎么做,还能用对的工具在对的时机把事情真正做完。
更多推荐



所有评论(0)