当前位置: 首页 > ops >正文

MCP与通讯模式:理论篇

文章目录

    • MCP是什么?
      • 1. 工具(Tools)
      • 2. 资源(Resources)
      • 3. 提示模板(Prompt Templates)
    • MCP通信机制模式
      • MCP的生命周期
        • 1. 建立连接(初始化)
        • 2. 通信
        • 3. 断开连接
      • MCP传输层
      • 1. 本地传输
      • 2. 远程传输
        • SSE模式(当前主流选择)
        • HTTP流模式

MCP(Model Context Protocol,模型上下文协议)是Anthropic 2024年11月推出的技术,其出名原因是该协议简化了AI集成。现在几乎所有主流大模型都已经开始支持MCP,比如deepseek支付宝等,这里可以看到开放的服务。


MCP是什么?

MCP初学者可以将其看作大模型的API,区别就是MCP只用对数据源写一次,而API则需要开发者为每个服务编写特定的调用代码和处理逻辑。

MCP的组成部分包括三部分:

1. 工具(Tools)

MCP中的工具类似于AI模型的工具。工具本质上是可以被客户端调用的函数,允许执行以下操作:

  • 检索数据
  • 搜索信息
  • 发送消息
  • 更新数据库记录

工具通常用于需要POST请求或某种数据修改操作的场景。

2. 资源(Resources)

资源是服务器暴露的只读数据或上下文,类似于GET请求。您的应用程序可以选择是否使用这些资源,但不必将其全部带入上下文。资源的例子包括:

  • 数据库记录
  • API响应
  • 文件
  • PDF文档

资源可以是动态的,随着应用程序中数据的变化而更新,无需使用工具来获取这些信息。

3. 提示模板(Prompt Templates)

提示模板的目标是减轻用户进行提示工程的负担。想象一个MCP服务器,其任务是查询Google Drive中的内容并进行摘要,用户本身需要编写必要的提示以最有效地完成这些任务。

提示模板是预定义的,存在于服务器上,客户端可以访问并提供给用户。这样,用户不必自己编写完整的提示或弄清楚提示工程的最佳实践。

MCP通信机制模式

与其他协议类似,MCP遵循经典的客户端-服务器(CS)架构模式,其中:

  • MCP客户端:能提供MCP的主机,是MCP访问的对象
  • MCP服务器:轻量级程序,通过协议暴露特定功能。程序员开发的
  • 主机(Host):负责存储和维护所有客户端及其与MCP服务器的连接
    在这里插入图片描述
    在这里插入图片描述

MCP的生命周期

1. 建立连接(初始化)

在这里插入图片描述

  1. 客户端发送initialize带有协议版本和功能的请求
  2. 服务器以其协议版本和功能进行响应
  3. 客户端发送initialized通知作为确认
  4. 开始正常消息交换
    此初始化的目的是为了确认CS都在线,当确认好后就可以开始通信了
2. 通信

请求-响应:客户端或服务器发送请求,对方响应
通知:任何一方发送单向消息

3. 断开连接

任何一方都可以终止连接:

通过以下方式干净关机close()
传输断开
错误条件

那MCP是如何通信的呢?

在工业系统中,大模型接入MCP平台时,主要有三种通信模式可以选择,分别适用于不同的场景需求。采用FastMCP实现会很简单,即在函数上加上一个装饰器即可。下面我们展开讲讲每种实现

MCP传输层

MCP协议支持两种类型传输

1. 本地传输

主要指本地STDIO(标准输入/输出 Standard IO)模式,这种方式不经过网络,通信延迟低,数据不会外传,适合高安全内网环境。

STDIO模式是将MCP客户端和服务端部署在同一台设备上,通过标准输入输出流通信,不依赖网络。

大模型 <-> MCP主机 <-> 本地MCP服务(STDIO)<-> 工业系统

在这里插入图片描述

2. 远程传输

SSE模式(当前主流选择)

SSE(Server-Sent Events)是基于HTTP/HTTPS协议的远程通信方式,支持服务端主动推送数据。
在这里插入图片描述

适用场景:

  • 跨系统、跨网络集成(如不同部门/厂区)
  • 大规模分布式工业系统
  • 工厂智能化系统与大模型集成

优势:

  • 支持横向扩展、服务发现
  • 标准化的安全认证机制
  • 适合实时数据推送(如设备监控、报警)

示意图:

大模型 <-> MCP主机 <-> 远程MCP服务(SSE)<-> 分布式工业系统

在工业智能化改造中,SSE是目前应用最广的通信模式。


HTTP流模式

这种方式的引进是因为它可以比SSE模式支持无状态连接,现在技术还很新,但将是未来的主流

在这里插入图片描述

适用场景:

  • 实时视频流、工业大数据处理
  • 大文件传输(如诊断日志、历史数据)
  • 需要流式输出结果的任务(如模型分段推理)

优势:

  • 传输过程可实时查看进度
  • 减少等待时间,避免超时
  • 支持大数据集处理

这类模式对于未来工业场景中的“边采边分析”非常关键。

http://www.xdnf.cn/news/7356.html

相关文章:

  • 云服务器开发软件操作步骤
  • 微机系统第二章-题目整理
  • 数据治理进阶:精读45页深入浅出数据治理培训教材【附全文阅读】
  • Nginx基础知识
  • 学习BI---QuickBI介绍
  • 【find / -name “xxx“】为什么有时候搜索范围扩大之后,就无法找到
  • 预训练、指令微调与RLHF如何塑造LLM
  • 【AI论文】端到端视觉标记器调优
  • Typora编写Markdown文档(支持Mermaid)
  • 客户体验数据使用的三种视角——旅程视角
  • python-判断闰年( 极其简单的python)
  • ubuntu sh安装包的安装方式
  • 关于摄像头模块的红外截止滤光片
  • Pichome 任意文件读取漏洞复现(CVE-2025-1743)
  • 技术解码 | 玩转视频播放,自适应码流技术
  • Google设置app-ads.txt
  • 技术架构缺乏灵活性,如何应对变化需求?
  • 油烟净化设备维护保养的科学方法与实践
  • python使用jsonpath-ng库操作json数据
  • 创建型:抽象工厂模式
  • 【RAG系统高效召回2】[特殊字符] 提升 RAG 系统检索质量的六大策略:从 top-k 到索引扩展
  • SpringBoot-1-入门概念介绍和第一个Spring Boot项目
  • 如何在LVGL之外的线程更新UI内容
  • 《Linux服务与安全管理》| DNS服务器安装和配置
  • 进程退出 和 僵尸进程、孤儿进程
  • 电子电路原理第十六章(负反馈)
  • 打卡第二十二天
  • 鸿蒙PC操作系统:从Linux到自研微内核的蜕变
  • Vue 3 项目开发 MinIO 文件管理模块
  • 数字图像处理——图像压缩