从零开始掌握 MCP 与 Skills:2026 年 AI 智能体开发完全指南
当 AI 不再只是对话窗口,而是能够操作你的电脑、管理数据库、自动发送邮件的数字员工时,如何让它安全、高效地与外部世界对话?2026 年的 MCP 和 Skills 给出了答案——而且答案正在快速进化。
写在前面:为什么现在重写这份指南?
2026 年 3 月,Model Context Protocol(MCP)迎来了关键转折点。项目维护者发布了 2026 年路线图,明确将“企业就绪性”和“传输可扩展性”列为最高优先级。与此同时,Skills 作为 AI 能力封装的最佳实践,也出现了 EvoSkill 这样的自动进化框架,让 Agent 能够自己发现并优化 Skills。
更重要的是,2026 年 1 月,Anthropic 正式发布了 MCP Apps——这是 MCP 协议的首个官方扩展,让工具能够直接在 AI 聊天窗口中呈现交互式 UI 界面。这意味着 AI 不再只是输出文本,而是可以展示图表、表单、仪表板,甚至接受用户的点击和输入。
如果你在 2024 年或 2025 年了解过 MCP,现在是时候刷新认知了。这份教程将基于 2026 年 3 月的最新生态,从零开始带你掌握 MCP 和 Skills 的完整知识体系。
一、MCP:AI 的通用通信底座
1.1 为什么需要 MCP
在 MCP 出现之前,让 AI 接入一个新工具通常需要编写大量胶水代码:研究 API 文档、处理认证、格式化输入输出、处理错误……每个集成都是“一次性”的,更换模型或工具时全部重写。
MCP(Model Context Protocol) 由 Anthropic 于 2024 年底推出,目标是定义一套标准化的接口,让任何 AI 应用都能以统一方式调用任何工具或数据源。
类比理解:
- USB-C 让鼠标、键盘、显示器可以即插即用地连接电脑
- MCP 让 AI 应用(Claude Desktop、Cursor、VS Code 等)可以即插即用地接入文件系统、数据库、GitHub、Slack 等任何工具
1.2 MCP 2026:三大核心原语
MCP 协议定义了三种核心原语,清晰地划分了谁来控制、谁来决策、谁来执行:
1.2.1 Resources:提供“事实背景”
Resources 是 MCP 中用于向 LLM 暴露上下文数据的原语。它的本质是可被读取的背景信息,而非“能力”。
- URI 唯一标识:
file:///home/user/docs/report.pdf、postgres://db/customers - 静态与动态资源:支持 URI Template(RFC 6570),如
logs://recent?timeframe={duration} - 应用控制:模型不能“主动索取资源”,只能使用 Host 提供的上下文
1.2.2 Tools:执行“动作”
Tools 是 MCP 中唯一允许模型直接触发“动作”的原语。
- 模型控制:模型决定是否调用工具,但真正调用由客户端执行
- 设计原则:Model decides, Client executes(模型主控,客户端驱动)
- 定义结构:包含
name、description、inputSchema、annotations
1.2.3 Prompts:标准化提问模板
Prompts 是服务器端预定义的对话模板,帮助模型更好地理解用户意图。
- 用户控制:必须由用户或 UI 显式选择触发
- 可复用:通过 slash 命令、菜单或按钮调用
1.3 架构深潜:协议层与传输层解耦
MCP 的架构设计使其成为 Agent 时代的“通用通信底座”。核心在于三层解耦:
关键设计:
- BaseSession:统一请求-响应模型,自动维护 ID 关联,支持并发调用
- ClientSession/ServerSession:内嵌初始化状态机,严格约束交互顺序
- 传输层可插拔:Stdio(本地进程)、HTTP+SSE(浏览器友好)、WebSocket(全双工)
标准交互流程(三阶段):
- 握手初始化:Client 发送
initialize,交换版本与能力集 - 正常通信:双向 Request-Response 或 Notification
- 优雅收尾:任意端可主动关闭会话
1.4 MCP Apps:让工具拥有界面
这是 2026 年最重要的 MCP 更新。 2026 年 1 月 26 日,Anthropic 正式发布 MCP Apps(SEP-1865),这是 MCP 协议的首个官方扩展。
1.4.1 解决什么问题?
以前,MCP 工具只能返回纯文本或 JSON。比如一个“生成销售报表”的工具,返回的是一堆数字,用户需要复制粘贴到 Excel 才能看懂。
现在,MCP Apps 允许工具返回交互式 HTML/JavaScript UI,直接在 AI 聊天窗口中渲染:
- 图表、仪表板、地图
- 表单、按钮、滑块
- 可编辑的文档预览
- 实时更新的监控面板
1.4.2 工作原理
关键特性:
- UI 资源:通过
ui://scheme 标识,HTML/JS 单文件应用 - 双向通信:通过
postMessage实现 JSON-RPC 调用 - 安全隔离:沙箱化 iframe,无 DOM 访问、无 cookies、CSP 支持
1.4.3 已落地的应用案例
2026 年 2 月,多家公司已发布 MCP Apps 集成:
| 公司 | 应用场景 |
|---|---|
| Slack | 搜索对话、生成消息草稿、在聊天中预览发送 |
| Figma | 生成/编辑图表、操作 FigJam 白板 |
| Asana | 将对话转为项目/任务,拖拽分配、可视化看板 |
| Canva | 实时定制演示文稿、编辑设计 |
| Box | 浏览/搜索文件、内联预览 PDF 并高亮 |
| Miro | 从代码库生成架构图、上下文感知代码生成 |
| Hex/Amplitude | 交互式分析仪表板,支持筛选和下钻 |
1.5 实战:配置并使用 MCP Server
以 Claude Desktop 为例,添加文件系统访问能力。
步骤 1:找到配置文件
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
步骤 2:添加 MCP Server 配置
{ "mcpServers": { "filesystem": { "command": "npx", "args": [ "-y", "@modelcontextprotocol/server-filesystem", "/Users/yourusername/Documents", "/Users/yourusername/Desktop" ] } }}⚠️ 安全提示:只授予必要的目录访问权限。
步骤 3:重启 Claude Desktop
完全退出后重新打开。你会看到对话窗口下方出现锤子图标 🔨,点击即可查看可用工具。
步骤 4:开始使用
请读取我桌面上 todo.txt 的内容,并告诉我今天要做什么。Claude 会自动调用 read_file 工具,读取文件内容后回答。
1.6 进阶:手写一个 MCP Server(Java 版)
Open Liberty 在 2026 年 3 月发布了 MCP Server 1.0 功能更新,支持响应编码器和请求 ID 访问。以下示例展示如何用 Java 实现一个 MCP Server。
添加依赖(Maven)
<dependency> <groupId>io.openliberty.beta</groupId> <artifactId>openliberty-runtime</artifactId> <version>26.0.0.3-beta</version> <type>zip</type></dependency>定义工具方法
import io.openliberty.mcp.server.Tool;import io.openliberty.mcp.server.ToolArg;import io.openliberty.mcp.server.RequestId;
@ApplicationScopedpublic class SearchService {
@Tool(description = "搜索数据存储") public SearchResult search( @ToolArg(name = "query", description = "搜索关键词") String query, RequestId requestId) { // 自动注入请求ID,用于日志审计
// 日志记录,便于追踪 logger.info("Search request " + requestId.asString() + ": " + query);
SearchResult result = datastore.runQuery(query); return result; }}自定义响应编码器
@ApplicationScopedpublic class SearchResultEncoder implements ToolResponseEncoder<SearchResult> {
@Override public boolean supports(Class<?> runtimeType) { return SearchResult.class.isAssignableFrom(runtimeType); }
@Override public ToolResponse encode(SearchResult searchResult) { if (searchResult.results().isEmpty()) { return ToolResponse.error("未找到结果"); }
List<TextContent> contents = new ArrayList<>(); for (var result : searchResult.results()) { // 根据相关性设置优先级注释 Annotations annotations = new Annotations(null, null, result.relevance()); contents.add(new TextContent(result.summary(), null, annotations)); }
return ToolResponse.success(contents); }}启用 MCP Server 功能
在 server.xml 中配置:
<featureManager> <feature>mcpServer-1.0</feature></featureManager>
<mcpServer endpoint="/mcp"/>二、Skills:从 Prompt 到能力封装
2.1 Skills 的本质:MCP 与 Skills 的区别
这是最常见的困惑:Skills 和 MCP 是什么关系?不是替代,而是协作。
Anthropic 官方对这两个概念的定义非常清晰:
| 维度 | MCP | Skills |
|---|---|---|
| 核心作用 | 给模型接入外部能力 | 规范模型的做事方式 |
| 关注重点 | 数据、工具、系统接口 | 任务方法论、业务逻辑、执行步骤 |
| 解决问题 | 模型去哪拿数据、能调用哪些系统 | 这类事情应该按什么流程做 |
| 本质定位 | 能力供给层 / 能力接口层 | 行为规范层 / 方法论固化层 |
| 类比 | 给模型”工具和数据” | 教模型”如何正确使用这些能力” |
一句话总结:
- MCP 解决的是「模型能用什么」
- Skills 解决的是「模型该怎么用」
真实场景理解:
- MCP:接入监控系统、数据库、日志平台
- Skills:规定故障分析要先看什么、再分析什么、最后怎么下结论
2.2 2026 新趋势:Skills 自动进化(EvoSkill)
2026 年 3 月,来自 Sentient 与弗吉尼亚理工的研究团队发布了 EvoSkill 框架,让 Agent 能够自动发现并优化 Skills。
2.2.1 为什么需要自动进化?
当前 Skills 多依赖人工编写,成本高昂且难以扩展。EvoSkill 将优化层次提升至 Skills 本身,让 Agent 能够:
- 分析失败案例
- 诊断能力缺口
- 自动创建或修改 Skills
- 在不同任务间迁移复用
2.2.2 EvoSkill 核心机制
三个 Agent 协作:
- 执行 Agent(A):在 Skills 库支持下处理任务,生成执行轨迹
- 提议 Agent(P):接收失败案例,结合历史反馈,提出 Skills 创建或修改建议
- 构建 Agent(S):将抽象描述转化为具体 Skills 文件夹(元数据 + 指令 + 脚本)
2.2.3 实验效果
在 OfficeQA 金融文档问答任务上,准确率从 60.6% 提升至 67.9%。
在 SealQA 对抗性搜索问答任务上,实现了 12.1 个百分点的提升。
更重要的是,Skills 具备跨任务迁移能力:在 SealQA 上进化出的“搜索持久化协议”Skills,零样本迁移到 BrowseComp 任务后,准确率从 43.5% 提升至 48.8%。
2.3 实战:创建你的第一个 Skill
Skills 在不同框架中有不同实现方式。以下是几种主流方式。
方式一:Claude Code 中的 Skills(命令行)
Claude Code 是 Anthropic 的命令行工具,内置 Skills 支持。
# 安装 Claude Codenpm install -g @anthropic-ai/claude-code
# 安装 pptx skillclaude skills add pptx
# 使用 skill 创建 PPTclaude "用 pptx skill 创建一个关于 MCP 的演示文稿"方式二:Semantic Kernel 中的 Plugins(C#)
using Microsoft.SemanticKernel;
public class EmailPlugin{ [KernelFunction] [Description("发送电子邮件")] public async Task<string> SendEmailAsync( [Description("收件人地址")] string to, [Description("邮件主题")] string subject, [Description("邮件正文")] string body) { // 可在此调用 MCP 邮件服务器 await emailService.SendAsync(to, subject, body); return $"邮件已发送至 {to}"; }}
// 注册并使用var kernel = Kernel.CreateBuilder() .AddOpenAIChatCompletion("gpt-4", apiKey) .Build();
kernel.Plugins.AddFromType<EmailPlugin>("Email");
// 自然语言触发await kernel.InvokePromptAsync("请给 zhangsan@example.com 发送问候邮件");方式三:LangChain 中的 Tools(Python)
from langchain.tools import toolfrom langchain.agents import create_react_agent, AgentExecutor
@tooldef send_email(to: str, subject: str, body: str) -> str: """发送电子邮件。收件人、主题、正文必填。""" # 调用 MCP Server return f"邮件已发送至 {to}"
@tooldef get_weather(city: str) -> str: """获取城市天气。""" return f"{city}:晴朗 25°C"
tools = [send_email, get_weather]agent = create_react_agent(llm, tools, prompt)agent_executor = AgentExecutor(agent=agent, tools=tools)
agent_executor.invoke({"input": "查北京天气并发邮件告诉老板"})2.4 实战:在 Cursor 中使用 Skills
Cursor 等 AI 编辑器支持通过 .cursorrules 定义 Skills。
在项目根目录创建 .cursorrules:
## Skills
### 代码审查当用户说"审查代码"时,你需要:1. 检查最近更改的文件2. 找出潜在的性能问题和安全漏洞3. 用列表形式给出改进建议4. 对严重问题标注 ⚠️
### 生成提交信息当用户说"生成 commit message"时,你需要:1. 运行 git diff --staged2. 分析变更内容3. 遵循 Conventional Commits 格式生成信息4. 提供 3 个备选方案供用户选择用户只需输入“审查代码”,AI 就会按照预设流程执行。
三、MCP + Skills 实战:构建智能周报系统
让我们结合 MCP、Skills 和 MCP Apps,从头搭建一个能自动生成并发送周报的智能体。
架构总览
步骤一:搭建 MCP 工具层
1. Database MCP Server(查询任务数据)
使用 Python SDK 实现:
from mcp.server import Serverimport mcp.server.stdioimport mcp.types as typesimport asyncioimport json
server = Server("db-server")
# 模拟数据库MOCK_TASKS = [ {"id": 1, "title": "完成需求文档", "status": "done", "date": "2026-03-27"}, {"id": 2, "title": "修复登录 Bug", "status": "done", "date": "2026-03-26"}, {"id": 3, "title": "性能优化", "status": "in_progress", "date": "2026-03-28"}, {"id": 4, "title": "部署上线", "status": "pending", "date": "2026-03-29"},]
@server.list_tools()async def list_tools(): return [ types.Tool( name="get_weekly_tasks", description="获取本周(最近7天)的任务列表", inputSchema={ "type": "object", "properties": { "start_date": {"type": "string", "description": "开始日期"}, "end_date": {"type": "string", "description": "结束日期"} }, }, ) ]
@server.call_tool()async def call_tool(name: str, arguments: dict | None): if name == "get_weekly_tasks": # 可添加日期过滤逻辑 return [types.TextContent(type="text", text=json.dumps(MOCK_TASKS))] raise ValueError(f"Unknown tool: {name}")
async def main(): async with mcp.server.stdio.stdio_server() as (read_stream, write_stream): await server.run(read_stream, write_stream, ...)2. Chart MCP Server(生成图表)
# chart_server.py - 简化示例@server.list_tools()async def list_tools(): return [ types.Tool( name="create_bar_chart", description="根据数据创建柱状图", inputSchema={ "type": "object", "properties": { "data": {"type": "object", "description": "图表数据"}, "title": {"type": "string", "description": "图表标题"} }, "required": ["data"] }, ) ]
@server.call_tool()async def call_tool(name: str, arguments: dict | None): if name == "create_bar_chart": # 生成图表并返回 base64 图片 chart_base64 = generate_chart(arguments["data"], arguments.get("title")) return [types.ImageContent(type="image", data=chart_base64, mimeType="image/png")]步骤二:封装为 Skill
使用 Semantic Kernel 定义 Skill:
from semantic_kernel.functions import kernel_functionfrom semantic_kernel.connectors.ai.open_ai import OpenAIChatCompletionimport subprocessimport json
class WeeklyReportSkill: def __init__(self): # MCP Server 进程管理(生产环境建议使用 Docker) self.db_server = subprocess.Popen(["python", "db_server.py"]) self.chart_server = subprocess.Popen(["python", "chart_server.py"]) self.email_server = subprocess.Popen(["python", "email_server.py"])
@kernel_function(description="生成并发送周报") async def send_weekly_report( self, recipient: str, include_chart: bool = True ) -> str: """生成并发送周报"""
# 1. 调用 Database MCP 获取任务数据 tasks = await self._call_mcp("db-server", "get_weekly_tasks", {}) tasks_data = json.loads(tasks[0].text)
# 2. 使用 LLM 生成周报摘要 summary = await self._generate_summary(tasks_data)
# 3. 可选:生成图表 chart_image = None if include_chart: chart_result = await self._call_mcp("chart-server", "create_bar_chart", { "data": self._prepare_chart_data(tasks_data), "title": "本周任务完成情况" }) chart_image = chart_result[0].data
# 4. 组装邮件内容 email_body = f""" <h2>本周工作总结</h2> <p>{summary}</p> <h3>任务详情:</h3> <ul> {self._format_tasks(tasks_data)} </ul> """
# 5. 发送邮件 await self._call_mcp("email-server", "send_email", { "to": recipient, "subject": f"周报 - {self._get_week_range()}", "body": email_body, "attachments": [chart_image] if chart_image else [] })
return f"周报已发送至 {recipient}"
async def _call_mcp(self, server_name: str, tool_name: str, args: dict): """与 MCP Server 通信""" # 实现细节:通过 stdio 发送 JSON-RPC 请求 pass
async def _generate_summary(self, tasks): llm = OpenAIChatCompletion(service_id="gpt-4") prompt = f"请根据以下任务列表生成简洁的周报摘要(2-3句话):{json.dumps(tasks)}" return str(await llm.complete(prompt))
def _prepare_chart_data(self, tasks): """为图表准备数据""" status_count = {"done": 0, "in_progress": 0, "pending": 0} for t in tasks: status_count[t["status"]] += 1 return status_count
def _format_tasks(self, tasks): return "\n".join([f"<li>{t['title']} - {t['status']}</li>" for t in tasks])
def _get_week_range(self): return "2026年3月第4周"步骤三:集成 MCP Apps 实现交互界面
让周报生成工具具备可视化预览能力,用户可在发送前编辑和确认。
UI 资源文件(ui/weekly_report_preview.html)
<!DOCTYPE html><html><head> <title>周报预览</title> <script src="https://cdn.jsdelivr.net/npm/chart.js"></script></head><body> <div id="app"> <h2>周报预览</h2>
<div id="summary-section"> <h3>摘要</h3> <div id="summary" contenteditable="true"></div> </div>
<div id="chart-section"> <canvas id="statusChart"></canvas> </div>
<div id="tasks-section"> <h3>任务列表</h3> <div id="tasks"></div> </div>
<div class="actions"> <button id="edit-btn">编辑</button> <button id="send-btn">发送</button> <button id="cancel-btn">取消</button> </div> </div>
<script type="module"> import { App } from '@modelcontextprotocol/ext-apps';
const app = new App();
// 监听工具结果 app.on('toolresult', async (data) => { // 渲染预览界面 renderPreview(data.result); });
// 发送按钮 document.getElementById('send-btn').onclick = async () => { // 调用 MCP 工具发送邮件 const result = await app.callServerTool('email-server', 'send_email', { to: document.getElementById('recipient').value, body: document.getElementById('summary').innerText }); app.updateContext('邮件已发送'); };
function renderPreview(reportData) { document.getElementById('summary').innerText = reportData.summary; // 渲染图表 new Chart(document.getElementById('statusChart'), { type: 'bar', data: reportData.chartData }); } </script></body></html>MCP Server 返回 UI
@server.call_tool()async def call_tool(name: str, arguments: dict): if name == "generate_report_preview": # 生成周报数据 report_data = await generate_report_data()
# 返回带有 UI 资源的结果 return [ types.TextContent( type="text", text=json.dumps(report_data), _meta={ "ui": { "resourceUri": "ui://weekly-report/preview", "data": report_data } } ) ]四、2026 年生态全景与企业实践
4.1 主流平台 MCP 支持情况
截至 2026 年 3 月,MCP 已获得广泛生态支持:
| 类别 | 平台/产品 |
|---|---|
| AI 模型 | Claude、ChatGPT(即将推出)、Gemini |
| 云服务商 | AWS(Kiro)、Google、Azure |
| 开发工具 | VS Code、Cursor、Windsurf、GitHub Copilot、Replit |
| 协作平台 | Miro、Slack、Figma、Asana、Canva、Box |
| 框架 | LangChain、Semantic Kernel、LlamaIndex |
4.2 MCP 2026 路线图:四大优先领域
根据 2026 年 3 月发布的路线图,MCP 维护者确定了四个优先发展领域:
1. 传输演进和可扩展性
当前问题:协议依赖长期“有状态”会话,难以在多实例或负载均衡器后部署。
解决方案:
- 改进传输与会话模型,支持水平扩展
- 引入标准元数据格式(通过
.well-known端点),让工具可被发现
2. 智能体通信
当前问题:长时间运行任务的失败重试、结果保留时长缺乏明确定义。
解决方案:围绕智能体驱动的任务制定清晰的生命周期规则。
3. 治理成熟化
当前问题:每个提案都需完整核心维护者审查,制约扩展速度。
解决方案:建立更清晰的决策结构和贡献者路径。
4. 企业准备就绪
目标:支持企业级需求——审计跟踪、与企业身份系统绑定的身份验证、网关控制、可移植配置。
4.3 RAG 与 Skills 的协同
在 2026 年 1 月的 OceanBase 社区嘉年华上,多位专家讨论了 RAG 与 Skills 的协同关系:
RAGFlow CEO 张颖峰:
“单纯的 RAG 确实不足以服务 Agent,但 RAG 是服务 Agent 数据层的核心。Skills 本身也需要搜索——当企业内部有 1000 个 MCP 时,如何调用对应的 Tools 和 Skills 同样需要检索能力。因此 RAG 永远不会消失。”
FastGPT 负责人 余金隆:
“Skills 出现后,以前需要写代码和 Webhook 连接的数据层,现在可以通过 Skills 实现。这对国内交付场景特别有价值——国内系统数据格式不统一、缺乏标准,交付同学以前需要写大量适配代码,现在通过 Skills 将数据标准化连接到平台。”
核心洞察:
- RAG 提供事实背景和检索能力
- MCP 提供工具调用接口
- Skills 封装业务逻辑和流程
- 三者协同构成完整的 Agent 能力栈
五、最佳实践与安全建议
5.1 MCP 安全配置
最小权限原则:
{ "mcpServers": { "filesystem": { "command": "npx", "args": ["-y", "@modelcontextprotocol/server-filesystem", "/Users/username/workspace/allowed-folder-only"] } }}使用 MCP 作为安全中介层:Dock Labs 的实践表明,MCP 可作为“安全适配层”,替代直接给 Agent API 密钥的方式:
5.2 Skills 设计原则
- 单一职责:一个 Skill 只完成一个明确的任务
- 清晰的输入输出:定义好参数和返回格式
- 错误处理:返回人类可读的错误信息
- 版本管理:Skills 文件夹包含元数据,便于追踪和复用
5.3 性能优化
- 缓存策略:对频繁调用的 MCP 工具增加缓存层
- 异步执行:耗时操作(图表生成、邮件发送)异步处理
- 连接池:复用 MCP Server 连接
六、未来展望
6.1 从 Prompt 到系统工程
2026 年的趋势清晰可见:Prompt 正在从“总指挥”退位为“触发器”。现代 AI 工程的核心是三个相互协作的引擎:
- 记忆引擎:记住用户偏好和历史
- 知识引擎(RAG):提供实时、准确的信息
- 技能引擎(Skills):将复杂操作封装为标准化模块
6.2 MCP Apps 打开新可能
MCP Apps 让 AI 从“对话助手”进化为“交互式工作台”。未来一年,我们可能看到:
- 交互式游戏:直接在聊天窗口玩小游戏
- 表单填写:Agent 生成表单,用户填写后提交
- 审批流程:可视化审批界面,点击确认
- 数据探索:动态图表,拖拽筛选
6.3 零 Skill 的 Agent?
2026 年 1 月,云玦科技发布了“原位自进化”Agent 框架,能够从零开始自动创建工具,在 HLE 评测中一骑绝尘。研究团队发现,Agent 在处理约 4000 个任务后,工具数量收敛至 128 个——说明它学会了“够用就好”。
这可能预示着:未来 Agent 将不再需要人类预置 Skills,而是能在运行中自己进化出所需能力。
6.4 总结
2026 年的 MCP 和 Skills 生态正在快速成熟:
- MCP 成为 Agent 通信的事实标准,解决传输扩展、企业就绪等关键问题
- Skills 从人工编写走向自动进化,EvoSkill 等框架让 Agent 能自我优化
- MCP Apps 打破纯文本限制,让工具拥有交互式界面
- 生态 涵盖从云服务商到开发工具的广泛支持
对于开发者而言,现在正是掌握这套技术栈的最佳时机。从今天起,尝试在项目中引入一个 MCP Server,或为团队封装第一个 Skill——你会发现,AI 应用的开发从未如此简单而强大。
本文内容基于 2026 年 3 月的技术生态编写。随着协议和框架的持续演进,建议关注 MCP 官方文档 获取最新更新。
如果这篇文章对你有帮助,欢迎分享给更多人!









