一、AI 智能体能力架构的演进背景
2024 年以来,AI 智能体从概念验证快速走向工程落地,工具调用(Tool Use)已成为各大模型的标配能力。然而在实际生产场景中,开发者很快发现:仅靠原子级别的工具调用,智能体很难完成真正复杂的业务任务。
随着 2024 年 11 月 Anthropic 推出 MCP(模型上下文协议),并在 2025 年 12 月将其捐赠给 Linux 基金会的 Agentic AI Foundation,MCP 迅速成为 AI 行业事实上的通用标准。与此同时,各大平台纷纷推出 Skills(技能)系统,解决了多工具编排和业务流程标准化的问题。
今天,MCP(通信底座)→ Tool(执行单元)→ Skills(业务流程) 已成为构建企业级 AI 智能体的标准三层架构。本文将深度解析这三个核心组件的定义、标准规范、技术实现及协同关系,并通过完整示例展示如何在实际项目中应用。
二、三大核心组件详解
2.1 Tool(工具):原子执行单元
核心定义
Tool 是 AI 智能体可调用的最小原子功能单元,只负责单一、独立的执行动作,无决策、无流程、无业务逻辑,仅接收参数、执行操作、返回结果。它是智能体与外部世界交互的"手脚"。
官方标准规范
Tool 遵循通用 LLM Function Calling 行业事实标准,这是所有主流大模型(OpenAI、Anthropic、Google、DeepSeek 等)都支持的基础规范:
-
必须包含:唯一标识 (name)、功能描述 (description)、入参 JSON Schema、出参 JSON Schema
-
设计原则:单一职责、无状态、幂等性、明确的错误返回
-
调用方式:模型生成结构化 JSON 指令,由客户端执行并返回结果
技术实现示例
python
# 标准Function Calling工具定义示例
def get_weather(city: str, date: str = "today") -> dict:
"""
获取指定城市指定日期的天气信息
Args:
city: 城市名称,如"北京"、"上海"
date: 查询日期,格式为"YYYY-MM-DD",默认为今天
Returns:
包含温度、天气状况、风力等信息的字典
"""
# 实际调用天气API的代码
return {
"city": city,
"date": date,
"temperature": 25,
"condition": "晴",
"wind_speed": 3
}
# 对应的JSON Schema定义(供大模型使用)
weather_tool_schema = {
"type": "function",
"function": {
"name": "get_weather",
"description": "获取指定城市指定日期的天气信息",
"parameters": {
"type": "object",
"properties": {
"city": {
"type": "string",
"description": "城市名称,如'北京'、'上海'"
},
"date": {
"type": "string",
"description": "查询日期,格式为'YYYY-MM-DD',默认为今天"
}
},
"required": ["city"]
}
}
}
典型应用场景
-
文件读写操作
-
数据库 SQL 查询
-
第三方 API 调用(天气、地图、邮件等)
-
数学计算与数据处理
-
代码执行
2.2 MCP(Model Context Protocol,模型上下文协议):统一通信底座
核心定义
MCP 是 AI 与外部系统、工具之间的标准化通用通信协议,相当于 AI 领域的"USB-C 接口"。它只负责打通连接、传输数据、权限控制和上下文同步,不参与业务执行和流程编排。
官方标准规范
MCP 是Linux 基金会 Agentic AI 基金会管理的开源工业标准,基于 JSON-RPC 2.0 构建,最新版本为 2025 年 11 月发布的 v1.1:
-
核心架构:采用客户端 - 服务器(Client-Server)模式
-
三大核心能力:
-
Tools:可执行函数 / 操作
-
Resources:AI 可访问的数据资源(文件、数据库记录等)
-
Prompts:预定义的指令模板
-
-
传输层支持:stdio(本地进程通信)、SSE/WebSocket(远程网络通信)
-
安全机制:细粒度 RBAC 权限控制、零信任架构、用户显式授权
-
2026 年新增特性:工具搜索(Tool Search)、延迟加载(Deferred Loading),解决了大量工具导致的上下文污染问题
技术架构图
典型 MCP 服务器示例
-
本地文件系统 MCP 服务器
-
PostgreSQL 数据库 MCP 服务器
-
GitHub MCP 服务器
-
Notion / 飞书 / 钉钉 MCP 服务器
-
浏览器控制 MCP 服务器
2.3 Skills(技能):业务流程封装单元
核心定义
Skills 是面向业务场景的可复用流程与规则包,用来定义"什么时候调用工具、调用哪些工具、按什么步骤执行、异常如何处理"。它是智能体的"业务操作手册",将原子工具组合成完整的业务能力。
标准规范
Skills 目前是主流 AI 平台统一实践规范(Claude/OpenAI/Gemini 通用),无底层强制协议,但形成了以下行业标准:
-
标准文件结构:通常包含 [SKILL.md](SKILL.md)(说明文档)、scripts/(可执行脚本)、references/(参考资料)
-
核心四要素:
-
适用条件:什么场景下应该使用该技能
-
执行策略:完整的业务流程和步骤
-
终止条件:任务完成或失败的判断标准
-
可重用接口:标准化的输入输出格式
-
-
加载机制:采用渐进式披露(Progressive Disclosure)策略,分为三级加载:
-
Level 1:元数据(名称、描述)- 始终加载
-
Level 2:说明文档 - 触发时加载
-
Level 3:资源与代码 - 按需加载
-
技术实现示例
markdown
# 工作日志生成技能 (daily_log_skill)
## 适用条件
当用户要求生成工作日志、日报、周报时使用此技能
## 执行流程
1. 读取本地"工作文档"目录下当天的所有.md和.txt文件
2. 提取每个文档的标题、主要内容和完成时间
3. 按照"今日完成工作"、"遇到的问题"、"明日计划"三个部分整理内容
4. 调用markdown格式化工具生成标准格式的日志
5. 将生成的日志保存到"工作日志"目录下,命名为"YYYY-MM-DD-日志.md"
## 异常处理
- 如果没有找到当天的工作文档,提示用户并询问是否手动输入内容
- 如果文档读取失败,跳过该文档并记录错误信息
- 如果格式化失败,返回原始整理后的文本
## 依赖工具
- file_read:读取本地文件
- file_write:写入本地文件
- text_summarize:文本摘要整理
- markdown_format:Markdown格式化
典型应用场景
-
自动生成各类报告(日报、周报、项目报告)
-
代码审查与质量检查
-
会议纪要整理与任务分配
-
客户服务工单处理
-
数据导入导出与转换
三、三者核心区别与层级关系
3.1 核心区别对比表
| 维度 | Tool(工具) | MCP(协议) | Skills(技能) |
|---|---|---|---|
| 核心定位 | 执行手脚(单一干活) | 通信通道(打通连接) | 业务方案(指挥干活) |
| 核心标准 | Function Calling 规范 | Linux 基金会 MCP 开源协议 | 平台通用业务封装规范 |
| 是否含流程逻辑 | 无 | 无 | 有(多步骤、条件、规则) |
| 是否含业务知识 | 无 | 无 | 有(领域知识、最佳实践) |
| 复用范围 | 通用原子能力 | 全模型、全系统通用 | 特定业务场景复用 |
| 开发主体 | 工具开发者 | 协议实现者 | 业务开发者 |
| 更新频率 | 低(功能稳定) | 低(标准迭代慢) | 高(业务变化快) |
3.2 完整架构与协同关系图
Plain
┌─────────────────────────────────────────────────────────┐
│ AI智能体 (Agent) │
│ 任务理解 │ 计划制定 │ 决策执行 │ 结果整合 │ 记忆管理 │
└───────────────────────────┬─────────────────────────────┘
│
┌───────────────────────────▼─────────────────────────────┐
│ Skills(技能层) │
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │
│ │ 日志生成技能 │ │ 代码审查技能 │ │ 数据分析技能 │ ... │
│ └─────────────┘ └─────────────┘ └─────────────┘ │
│ 业务流程编排 │ 条件判断 │ 异常处理 │ 结果格式化 │
└───────────────────────────┬─────────────────────────────┘
│
┌───────────────────────────▼─────────────────────────────┐
│ Tool(工具层) │
│ ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐ │
│ │ 文件读写 │ │ 网络搜索 │ │ SQL查询 │ │ 邮件发送 │ ... │
│ └─────────┘ └─────────┘ └─────────┘ └─────────┘ │
│ 原子执行单元 │ 无状态 │ 单一职责 │ 标准化接口 │
└───────────────────────────┬─────────────────────────────┘
│
┌───────────────────────────▼─────────────────────────────┐
│ MCP(协议层) │
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │
│ │ 文件MCP服务 │ │ 数据库MCP服务│ │ 邮件MCP服务 │ ... │
│ └─────────────┘ └─────────────┘ └─────────────┘ │
│ 统一通信标准 │ 工具发现 │ 权限控制 │ 上下文同步 │
└───────────────────────────┬─────────────────────────────┘
│
┌───────────────────────────▼─────────────────────────────┐
│ 外部系统与资源 │
│ 文件系统 │ 数据库 │ 第三方API │ 云服务 │ 本地应用 │
└─────────────────────────────────────────────────────────┘
3.3 详细协同关系说明
三者是底层支撑→中层能力→上层业务的递进依赖关系,无竞争、强互补:
-
MCP 是底层通信底座
-
统一所有外部系统、工具的接入标准,解决"连得上"的问题
-
提供工具发现机制,让 AI 智能体能够自动发现可用的能力
-
处理权限控制、数据安全和上下文同步
-
一次开发,所有支持 MCP 的模型和应用都能使用
-
-
Tool 是执行载体
-
通过 MCP 对外暴露原子能力,解决"能干什么" 的问题
-
每个 Tool 只负责一个单一、明确的功能
-
Tool 本身不知道也不关心自己会被谁调用、在什么流程中调用
-
可以被多个 Skills 重复使用
-
-
Skills 是业务大脑
-
基于 MCP 通道,编排多个 Tool,解决"怎么干、干得规范"的问题
-
封装业务逻辑、领域知识和最佳实践
-
处理多步骤流程、条件判断、循环迭代和异常恢复
-
是企业业务能力的数字化载体
-
四、完整实战示例:项目周报自动生成系统
让我们通过一个真实的业务场景,完整展示 Tool、MCP、Skills 三者如何协同工作。
4.1 业务需求
AI 智能体自动完成以下任务:
-
从 Git 仓库拉取本周的代码提交记录
-
从 Jira 获取本周完成的任务和待解决的问题
-
从飞书获取本周的会议纪要
-
整合以上信息,生成标准格式的项目周报
-
将周报发送给项目组成员
4.2 MCP 层部署
首先部署三个 MCP 服务器,打通 AI 与外部系统的连接:
yaml
# mcp-config.yaml - MCP服务器配置文件
servers:
- name: git-mcp
command: npx @modelcontextprotocol/server-git
args: ["/path/to/project/repo"]
- name: jira-mcp
command: npx @modelcontextprotocol/server-jira
env:
JIRA_API_TOKEN: "your-api-token"
JIRA_BASE_URL: "https://your-domain.atlassian.net"
- name: feishu-mcp
command: npx @modelcontextprotocol/server-feishu
env:
FEISHU_APP_ID: "your-app-id"
FEISHU_APP_SECRET: "your-app-secret"
4.3 Tool 层加载
通过 MCP 通道,AI 智能体自动发现并加载以下原子工具:
| 工具名称 | 来源 MCP | 功能描述 |
|---|---|---|
| git_get_commits | git-mcp | 获取指定时间范围内的代码提交记录 |
| jira_get_tasks | jira-mcp | 获取指定状态的 Jira 任务 |
| feishu_get_meetings | feishu-mcp | 获取指定时间范围内的会议纪要 |
| send_email | 内置 | 发送电子邮件 |
| text_summarize | 内置 | 文本摘要整理 |
| markdown_format | 内置 | Markdown 格式化 |
4.4 Skills 层开发
开发"项目周报生成技能",定义完整的业务流程:
markdown
# 项目周报生成技能 (project_weekly_report_skill)
## 适用条件
当用户要求生成项目周报、项目进度报告时使用此技能
## 执行流程
1. 确定时间范围:默认为本周一至本周日,如果用户指定了其他时间范围则使用用户指定的
2. 调用git_get_commits工具获取本周的代码提交记录
3. 调用jira_get_tasks工具获取本周"已完成"和"进行中"的任务
4. 调用feishu_get_meetings工具获取本周的项目会议纪要
5. 调用text_summarize工具分别对代码提交、任务和会议纪要进行摘要整理
6. 按照以下结构生成周报:
- 项目概述
- 本周完成工作
- 代码开发
- 任务完成
- 进行中的工作
- 会议要点与决策
- 问题与风险
- 下周计划
7. 调用markdown_format工具将内容格式化为标准Markdown
8. 询问用户是否需要修改或补充内容
9. 如果用户确认无误,调用send_email工具将周报发送给项目组成员列表
## 异常处理
- 如果Git仓库访问失败,跳过代码提交部分并提示用户
- 如果Jira连接失败,跳过任务部分并提示用户
- 如果飞书连接失败,跳过会议纪要部分并提示用户
- 如果没有获取到任何数据,提示用户并询问是否手动输入内容
## 配置参数
- project_name: 项目名称
- team_members: 项目组成员邮箱列表
- default_time_range: 默认时间范围(本周)
4.5 完整执行流程时序图
Plain
用户 Agent Skills MCP 外部系统
│ │ │ │ │
│ 生成项目周报 │ │ │ │
│─────────────>│ │ │ │
│ │ 触发周报技能 │ │ │
│ │─────────────>│ │ │
│ │ │ 获取代码提交 │ │
│ │ │─────────────>│ │
│ │ │ │─────────────>│
│ │ │ │<─────────────│
│ │ │<─────────────│ │
│ │ │ 获取Jira任务 │ │
│ │ │─────────────>│ │
│ │ │ │─────────────>│
│ │ │ │<─────────────│
│ │ │<─────────────│ │
│ │ │ 获取会议纪要 │ │
│ │ │─────────────>│ │
│ │ │ │─────────────>│
│ │ │ │<─────────────│
│ │ │<─────────────│ │
│ │ │ 整理生成周报 │ │
│ │ │─────────────│ │
│ │ │ 发送邮件 │ │
│ │ │─────────────>│ │
│ │ │ │─────────────>│
│ │ │ │<─────────────│
│ │ │<─────────────│ │
│ │ 返回周报结果 │ │ │
│<─────────────│ │ │ │
│ │ │ │ │
4.6 实际使用效果
用户只需要输入简单的指令:
Plain
帮我生成本周的AI智能体项目周报,发送给张三、李四和王五
AI 智能体就会自动触发"项目周报生成技能",按照预设流程依次调用各个工具,完成所有任务,最终返回生成好的周报并发送邮件。
五、最佳实践与总结
5.1 最佳实践
-
Tool 设计原则
-
保持单一职责,一个 Tool 只做一件事
-
设计为无状态,不保存会话信息
-
提供明确的错误信息和返回格式
-
尽量设计为幂等操作,避免重复执行带来的问题
-
-
MCP 使用原则
-
优先使用社区成熟的 MCP 服务器,避免重复开发
-
严格控制权限,遵循最小权限原则
-
对于敏感操作,要求用户显式授权
-
合理使用工具搜索和延迟加载功能,优化上下文使用
-
-
Skills 开发原则
-
面向业务场景设计,而不是面向工具设计
-
封装领域知识和最佳实践,提高执行的确定性
-
完善异常处理机制,提高系统的鲁棒性
-
采用渐进式披露策略,节省上下文 Token
-
5.2 一句话终极总结
MCP 是 AI 世界的通用接口规则,Tool 是可调用的干活工具,Skills 是指挥工具干活的业务流程。三者组合实现了 AI 智能体从"连接外部系统" 到 "落地复杂业务"的完整能力闭环,是构建企业级 AI 应用的标准架构。
随着 MCP 生态的不断成熟和 Skills 系统的不断完善,AI 智能体将能够处理越来越复杂的业务任务,真正成为企业数字化转型的核心驱动力。