为了账号安全,请及时绑定邮箱和手机立即绑定

Model Context Protocol(MCP):为大模型构建统一的外部交互标准

Model Context Protocol(MCP),即“模型上下文协议”,是一个开源且开放的标准框架,旨在为大型语言模型(LLMs)及其衍生的AI智能体提供一种标准化的接口机制,从而实现与外部系统、数据源和工具的无缝集成。

核心价值

MCP 的设计初衷是解决当前 LLM 应用生态中普遍存在的“碎片化”问题。通过统一交互范式,它带来了以下关键优势:

  • 标准化接入:让 LLM 或 AI Agent 能够以一致的方式连接数据库、文件系统、Web API、网络爬虫等各类外部资源,实时获取所需上下文。
  • 双向实时交互:不仅支持 LLM 向外部系统发出指令并执行操作,还能动态接收来自外部系统的更新,即时刷新模型上下文。
  • 厂商中立性:开发者可灵活切换不同 LLM 提供商(如 OpenAI、Anthropic、Claude 等),无需重写底层集成逻辑。
  • 数据安全可控:所有敏感数据可在用户自有基础设施内处理,避免上传至第三方平台,保障隐私与合规。
架构概览

MCP 采用经典的客户端-服务器(Client-Server)架构,主要由三类角色构成:

  • MCP Hosts:发起请求的应用程序,例如 Claude 桌面客户端、IDE 插件或 AI 工作流引擎。
  • MCP Clients:嵌入在 Host 中的协议客户端,负责与 MCP Server 建立一对一连接。
  • MCP Servers:轻量级服务端程序,通过 MCP 协议暴露特定能力,如提供工具、资源或提示模板。
分层设计

数据层:基于 JSON-RPC 2.0 的通信协议

MCP 的底层通信建立在 JSON-RPC 2.0 之上,定义了客户端与服务端之间的交互语义和消息格式。该层包含三大核心功能模块:

  1. 生命周期管理
    负责连接的建立、能力协商(Capability Negotiation)以及优雅关闭,确保双方在兼容的协议版本和功能集下运行。

  2. 核心原语(Primitives)
    定义了可共享的上下文类型与可执行的操作范围,具体包括:

    • Tools(工具):可被 LLM 调用的函数,如读写文件、调用 REST API、执行 SQL 查询等。
    • Resources(资源):提供上下文信息的数据源,如配置文件内容、数据库记录、实时传感器数据等。
    • Prompts(提示模板):可复用的提示词结构,用于引导模型行为,例如系统角色设定或多轮对话示例。

    每类原语均配套标准方法:*/list(发现可用项)、*/get(获取详情),以及对 Tools 的 tools/call(执行调用)。这种动态发现机制使得服务端能力可随运行时环境变化而更新。

  3. 实用扩展特性
    • 通知(Notifications):服务端可主动推送变更事件(如新工具上线),客户端无需轮询。
    • 进度跟踪(Progress Tracking):支持长时间运行任务的状态反馈,提升用户体验。

客户端侧原语(Client-Side Primitives)

除被动响应外,MCP 还赋予服务端主动与客户端或用户交互的能力:

  • 采样(Sampling):服务端可通过 sampling/complete 请求客户端调用其绑定的 LLM 进行文本生成,避免在服务端嵌入模型 SDK。
  • 引导(Elicitation):当需要用户确认或补充信息时,服务端可发起 elicitation/request,由 Host 弹出交互界面。
  • 日志(Logging):用于调试与监控,服务端可向客户端发送结构化日志消息。
传输层:灵活适配本地与远程场景

MCP 支持多种传输机制,以满足不同部署需求:

1. Stdio Transport(标准输入输出)

  • 定义:利用进程间标准输入/输出流进行本地通信。
  • 适用场景:本地开发、桌面应用(如 Claude 访问本地文件系统)。
  • 优势
    • 零网络依赖,配置简单;
    • 数据仅在本机流转,安全性高;
    • 低延迟、高性能。
  • 局限
    • 仅支持单客户端连接;
    • 无法跨机器或分布式部署。

2. Streamable HTTP Transport(流式 HTTP)

  • 定义:基于 HTTP POST 发送请求,并可选使用 Server-Sent Events(SSE)实现服务端推送。
  • 适用场景:远程 MCP 服务(如接入高德地图、天气 API 等云服务)。
  • 优势
    • 支持无状态部署,易于水平扩展;
    • 与现有 Web 基础设施(API 网关、CDN、负载均衡)天然兼容;
    • 可按需启用流式响应,适用于长文本生成或实时进度反馈;
    • 支持 OAuth、API Key 等标准认证方式。
  • 注意:虽然早期 MCP 曾明确支持 SSE,但当前官方文档已将其归入“Streamable HTTP”的一部分,SSE 正逐步被弃用

SSE 与 Streamable HTTP 的关键区别

  • Streamable HTTP 不再要求独立的 /sse 端点,所有客户端请求统一通过 /messages 发送;
  • 服务端可在响应中将任意请求“升级”为流式连接,用于推送通知或采样结果;
  • 可选引入会话 ID(Session ID)以维护跨请求的状态,兼顾无状态与有状态需求。
总结

MCP 通过标准化的协议设计,打通了 LLM 与现实世界之间的“最后一公里”。它不仅提升了 AI 应用的灵活性与可维护性,还为构建安全、高效、可扩展的智能系统奠定了坚实基础。随着生态的成熟,MCP 有望成为 LLM 时代的新一代“通用适配器”。


如需进一步精简、扩展某一部分,或转换为技术白皮书、产品介绍、演讲稿等风格,也可以告诉我!

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

举报

0/150
提交
取消