没有合适的资源?快使用搜索试试~ 我知道了~
91年的羊是什么命
126 浏览量
2025-08-07
17:10:10
上传
评论
收藏 562KB PDF 举报
温馨提示
百度 “其中尤以高考生感染发病的较多,升学压力、体质弱等都是刺激发病的因素。
内容概要:模型上下文协议(MCP)是由Anthropic于2024年底推出的一种开放标准,旨在标准化大型语言模型(LLM)与外部数据源、工具和系统的连接。MCP采用客户端-服务器架构,包含宿主、客户端、服务器、工具、资源、提示、采样、根、传输等关键组件,使用JSON-RPC 2.0作为消息传递格式。MCP解决了传统API集成的复杂性和碎片化问题,简化了LLM与外部系统的集成。MCP的发展历程包括2024年11月的开源发布,随后OpenAI和Google DeepMind等公司相继支持。MCP生态系统迅速扩展,涵盖了Google Drive、Slack、GitHub等多个平台,并引入了FastMCP、Haystack等支持工具。MCP在大模型应用开发中的用例包括增强LLM的上下文理解、与知识库集成、自动化工作流程等。MCP强调安全性,设计为“本地优先”,并通过OAuth 2.1进行身份验证和授权。未来,MCP将继续扩展其功能,支持更多模态和流式传输。 适合人群:具备一定编程基础,特别是熟悉大模型应用开发的工程师和技术人员。 使用场景及目标:①简化LLM与外部数据源和工具的集成,解决传统API集成的复杂性;②构建能够访问实时数据、自动化工作流程、与知识库集成的智能应用;③提高LLM的上下文理解和响应准确性;④确保数据访问的安全性和用户控制。 其他说明:MCP不仅提供了一种标准化的集成方式,还为开发人员提供了丰富的工具和库,如FastMCP和Haystack集成,简化了开发流程。随着主要AI平台的积极采纳,MCP有望成为未来AI应用开发的关键组成部分。开发人员应关注MCP的持续更新和增强,以充分利用其功能和优势。
资源推荐
资源详情
资源评论
























模型上下文协议 (MCP) 全面介绍——进展研究
1. 引言
模型上下文协议 (Model Context Protocol, MCP) 是一种由 Anthropic 于 2024 年底推出
的开放标准,旨在标准化大型语言模型 (LLM) 应用与外部数据源、工具和系统之间的连接.
1
MCP 的目标是解决将 LLM 集成到各种应用中时面临的复杂性和碎片化问题,从而使 AI 应
用能够访问更广泛的信息并执行更多操作.
2
这种标准化可以类比于为 AI 应用提供一个通
用的 USB-C 接口,极大地简化了集成过程.
1
对于大模型应用开发工程师而言,理解 MCP
的原理、发展历程、最新进展以及如何实际应用至关重要,因为它代表了构建下一代智能应
用的关键技术。
2. 模型上下文协议的核心概念
MCP 采用客户端-服务器架构,旨在连接 AI 应用程序(客户端)和它们需要访问的各种数据
和服务(服务器).
5
以下是该架构中的关键组件
5
:
● 宿主 (Host): 通常是用户与之交互的 AI 应用程序,例如 Claude Desktop、集成开发环
境 (IDE) 或自定义代理.
5
宿主负责协调整个系统并管理与 LLM 的交互.
25
● 客户端 (Client): 运行在宿主内部的协议客户端,负责管理与特定 MCP 服务器的连接
,并维护一对一的连接.
5
客户端处理能力协商、消息编排以及与服务器之间的通信.
5
● 服务器 (Server): 独立的进程或程序,通过标准化的 MCP 协议暴露特定的能力,例如
数据访问、工具或预定义的提示.
5
服务器可以连接到各种数据源,如文件系统、数据
库或 API.
2
● 工具 (Tools): 模型可以调用的可执行函数,用于执行特定操作,例如查询数据库或调
用 API.
2
● 资源 (Resources): 模型可以访问的结构化数据流,类似于 REST API 中的 GET 请求,
提供数据而不执行重要的计算.
2
● 提示 (Prompts): 可重用的指令模板,用于塑造语言模型的响应,类似于 API 设计中的
约定.
2
● 采样 (Sampling): 一种允许服务器请求客户端 LLM 生成补全的机制,颠倒了传统的
客户端-服务器关系,为更复杂的代理行为铺平了道路.
7
● 根 (Roots): 定义服务器被授权交互的宿主文件系统或环境中的特定位置,用于设置安
全边界.
7
● 传输 (Transports): MCP 支持多种通信机制,包括用于本地进程的标准输入/输出
(stdio) 和用于远程通信的带有服务器发送事件 (SSE) 的 HTTP.
5
最新的规范还引入了
更灵活的可流式 HTTP 传输.
103
MCP 的核心是使用 JSON-RPC 2.0 作为其消息传递格式.
5
连接的生命周期包括初始化、
消息交换和终止三个主要阶段.
5

3. 模型上下文协议的发展历程
MCP 由 Anthropic 于 2024 年 11 月正式宣布并开源.
1
其发布旨在解决当时 LLM 与外部系
统集成日益增长的复杂性,Anthropic 将此描述为“N×M”集成问题.
4
在 MCP 之前,开发人
员通常需要为每个数据源或工具构建自定义连接器.
2
以下是 MCP 发展历程中的关键里程碑:
● 2024 年 11 月: Anthropic 开源发布 MCP,包括协议规范和针对 Python 和
TypeScript 的软件开发工具包 (SDK).
2
Kotlin 和 Swi SDK 随后发布.
6
○ 在 Claude Desktop 应用程序中引入了对本地 MCP 服务器的支持.
2
○ 启动了一个开源的 MCP 服务器存储库.
2
● 2025 年初: MCP 在 AI 社区内获得了显著的关注.
5
○ 截至 2025 年 2 月,已涌现出超过 1000 个开源连接器.
5
● 2025 年 3 月: OpenAI 宣布在其 Agents SDK 和 ChatGPT 桌面应用程序中支持
MCP.
4
● 2025 年 4 月: Google DeepMind 确认将在即将推出的 Gemini 模型和基础设施中支
持 MCP.
4
● 持续进行: 不断完善 MCP 规范、文档和 SDK.
5
● 关键规范变更(来自变更日志的示例
103
):
○ 增加了基于 OAuth 2.1 的全面授权框架。
○ 将之前的 HTTP+SSE 传输替换为更灵活的可流式 HTTP。
○ 增加了对 JSON-RPC 批处理的支持。
○ 增加了全面的工具注解,以更好地描述工具行为,例如是否只读或具有破坏性。
○ 在 ProgressNotication 中添加了 message 字段以提供描述性状态更新。
○ 增加了对音频数据的支持,加入了现有的文本和图像内容类型。
○ 增加了 completions 功能以明确指示对参数自动完成建议的支持。
主要 AI 参与者(如 OpenAI 和 Google DeepMind)在 MCP 发布后不久就迅速采纳,这表
明整个行业对其价值和成为标准的潜力有着强烈的认可。这些领先 AI 公司对其产品和平
台的支持和集成,为该协议提供了重要的验证和动力。这种广泛的采纳对于将 MCP 确立为
真正的通用标准至关重要。
MCP 规范的持续更新和增强,以及多种流行的编程语言 SDK 的开发,表明该项目积极发
展,致力于满足开发人员的需求并扩展协议的功能。定期添加新功能、改进现有功能以及提
供强大的开发工具,对于围绕 MCP 构建蓬勃发展的生态系统至关重要。这种持续的开发确
保了协议能够适应快速变化的人工智能领域并保持其相关性。
4. 当前 MCP 的最新进展和生态系统
MCP 生态系统正在迅速发展,涌现出越来越多的预构建集成和 MCP 服务器,可用于

Google Drive、Slack、GitHub、Git、Postgres 和 Puppeteer 等常用服务.
2
社区也在积极开
发各种其他平台的连接器.
4
此外,还引入了支持 MCP 集成的工具和平台,例如 FastMCP
6
、Haystack 与 MCPTool 的
集成
68
、PydanticAI 对 MCP 的支持
53
以及 Wix 模型上下文协议 (MCP) 服务器.
86
为了改善开发人员体验,SDK 中提供了简化的 API(例如 Python 中的 FastMCP、
TypeScript 中类似 Express 的 API),并且 MCP 服务器也已 Docker 化.
83
此外,正在开发
一个 MCP 注册中心,用于集中服务器发现和元数据管理.
10
MCP 还在探索高级功能,如代理图、交互式工作流以及对其他模态(视频、音频)的支持.
83
Anthropic API 上潜在的 Web 搜索集成也在计划中.
2
当前的工作重点是增强上下文管
理、扩展互操作性以及优化性能.
88
MCP 服务器生态系统的快速扩展,包括官方和社区驱动的努力,表明人们对利用 MCP 进
行各种集成越来越感兴趣并投入更多精力。针对众多常用服务的连接器的可用性,极大地
降低了希望使用 MCP 的开发人员的入门门槛。这个不断增长的生态系统创建了一个网络
效应,更多的可用服务器吸引了更多的客户端应用程序,从而进一步推动了采用。
针对 MCP 量身定制的特定工具和库(如 FastMCP 和 Haystack 集成)的开发,表明生态系
统正在成熟,并开始为开发人员提供更高级别的抽象和简化的开发工作流程。这些工具抽
象了 MCP 协议的一些底层细节,使开发人员能够专注于他们想要构建的特定功能。这种易
于开发对于鼓励更广泛的采用和 MCP 生态系统内的创新至关重要。
5. MCP 与现有集成方法的比较
传统的 API 集成通常需要为每个工具或数据源编写自定义代码,从而导致“M x N”问题.
2
MCP 旨在用一个协议替换这些碎片化的集成。
MCP 在 LLM 中构建并增强了函数调用的概念,通过为与外部系统交互提供一个标准化和
更全面的框架.
6
函数调用通常是特定于供应商的,而 MCP 被设计为开放且模型无关的标
准.
2
MCP 的灵感来源于语言服务器协议 (LSP)
6
,后者标准化了跨开发工具的语言支持,MCP
旨在为 AI 集成实现类似的标准化。
功能
传统 API 集成
函数调用
模型上下文协议
(MCP)
标准化
每个集成都是自定义的
供应商特定
开放标准

复杂性
高 (M x N 问题)
中等
低 (M + N 问题)
互操作性
有限
有限
高
上下文管理
手动
有限
标准化原语 (工具、资
源、提示)
安全性
可变
供应商依赖
本地优先,用户控制
可扩展性
有限
供应商依赖
高 (通过 MCP 服务器)
MCP 通过标准化和可重用性,显著优于传统的 API 集成,从而缩短了开发时间并降低了复
杂性。开发人员不再需要为每个 AI 模型和外部工具组合构建自定义连接器,而是可以依赖
MCP 标准。这种“一次构建,随处使用”的方法简化了开发工作流程并降低了维护成本。
虽然函数调用为 LLM 提供了一种与外部工具交互的机制,但 MCP 提供了一个更全面和标
准化的协议,该协议不依赖于特定的供应商,从而促进了更大的互操作性和灵活性。MCP
的供应商无关性允许开发人员在不同的 LLM 提供商之间切换,而不必重写他们的集成,从
而提供了更大的灵活性并减少了供应商锁定。MCP 更广泛的范围,包括资源和提示以及工
具,也使其成为一个更通用的解决方案。
6. MCP 在大模型应用开发中的用例和应用
MCP 为大模型应用开发工程师带来了广泛的应用,以下是一些关键用例:
● 增强 LLM 的上下文理解: 使 LLM 能够访问来自各种来源(文件、数据库、API)的实时
数据,从而提高响应的相关性和准确性.
2
例如,一个 AI 编码助手可以通过 MCP 访问
项目文件,从而提供更准确的代码建议.
2
● 与知识库和文档存储库集成: 使 AI 助手能够从企业知识库、维基或云存储(例如
Google Drive、Notion)检索特定信息,从而更有效地回答用户查询.
2
例如,一个客户
支持聊天机器人可以使用 MCP 连接到产品知识库,以提供最新的信息.
29
● 自动化工作流程: 允许 AI 代理与各种工具和服务(例如 Slack、GitHub、电子邮件)交
互,以自动化发送通知、创建问题或管理项目等任务.
2
例如,一个 AI 代理可以使用
MCP 在检测到代码提交后自动创建 Jira 任务 .
● 自然语言数据访问: 使最终用户能够通过 MCP 服务器使用自然语言查询数据库(例如
PostgreSQL、SQLite).
2
例如,一个数据分析师可以使用自然语言向 AI 助手查询销售
数据,而 AI 助手则通过 MCP 连接到数据库并返回结果.
101
● 构建智能代理: 支持开发能够自主做出决策并在多个连接的工具和数据集上执行操作
的 AI 代理.
2
例如,一个旅行预订代理可以使用 MCP 连接到航班、酒店和日历服务来
规划完整的行程.
103
剩余15页未读,继续阅读
资源评论


添财小哥
- 粉丝: 1048
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 网络课程设计报告.doc
- 通信工程项目管理试题A卷答案.doc
- 拉斯维加斯酒店系统集成方案样本.doc
- 网络系统集成开发方案设计莫光星要点.doc
- 网络人才需求形势与职业生涯规划.ppt
- 机械制造业电子商务平台规划.doc
- 基因工程的基本操作程序公开课专家讲座.pptx
- 最新最新毕业论文_基于单片机的数字温度计.docx
- 个人网络教研总结.docx
- 网络带来的碎片作文900字.docx
- 网络广告协议书范本.doc
- 基于ASP的旅游网站设计.doc
- 物联网技术及应用习题一.doc
- 专升本《计算机图形学与CAD技术》-试卷-答案.doc
- 基于SPARK的ETHINK数据挖掘与分析介绍.pdf
- 网络设备配置说课稿.ppt
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈



安全验证
文档复制为VIP权益,开通VIP直接复制
