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

MCP与通讯模式:理论与实战体验

文章目录

    • MCP是什么?
      • 1. 工具(Tools)
      • 2. 资源(Resources)
      • 3. 提示模板(Prompt Templates)
    • MCP通信机制模式
      • MCP的生命周期
        • 1. 建立连接(初始化)
        • 2. 通信
        • 3. 断开连接
      • MCP传输层
      • 1. 本地传输
      • 2. 远程传输
        • SSE模式(当前主流选择)
        • HTTP流模式
    • 实战 体验MCP--AI分析网页
      • 配置大模型
      • 配置MCP
      • 在聊天中使用

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模式支持无状态连接,现在技术还很新,但将是未来的主流

在这里插入图片描述

适用场景:

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

优势:

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

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

实战 体验MCP–AI分析网页

使用别的开发者提供的MCP只需要配置即可,不需要额外开发

配置大模型

下载国内AI集成桌面版:https://docs.cherry-ai.com/cherry-studio/download

下完后,按照下图配置下,若没有deepseek API需要去官网充下钱,然后填入密钥,国产的大模型真的好便宜,我充了10块钱,经常用才花了一块钱
在这里插入图片描述


配置MCP

准备配置MCP了
在这里插入图片描述

在内置广场选fetch,点击+安装,如下图
在这里插入图片描述
安装好了返回去会出现绿色电脑
在这里插入图片描述

在聊天中使用

需要选中要不然用不了工具
在这里插入图片描述

使用语句尝试

https://blog.csdn.net/ngadminq/category_12962115.html  介绍下这个博主

可以看到确实调用了工具,恭喜!
在这里插入图片描述

相关文章:

  • 【集成电路】集成电路导论知识点
  • MFC 编程中 OnInitDialog 函数
  • 电子电路原理第十六章(负反馈)
  • Mergekit——任务向量合并算法Ties解析
  • 电机控制杂谈(25)——为什么对于一般PMSM系统而言相电流五、七次谐波电流会比较大?
  • 嵌入式51单片机:C51
  • 【Python-Day 15】深入探索 Python 字典 (下):常用方法、遍历、推导式与嵌套实战
  • `asyncio.gather()` 是什么
  • Chrome插件学习笔记
  • 专题五:floodfill算法(太平洋大西洋水流问题)
  • POJ3107树的重心
  • java collection集合特点知识点详解
  • Golang的Web应用架构设计
  • CentOS相关操作hub(更新中)
  • Hooks实现原理与自定义Hooks
  • 头歌之软件工程-用例设计
  • 【C++】不推荐使用的std::allocator<void>
  • ETL数据集成产品选型需要关注哪些方面?
  • 嵌入式自学第二十四天
  • 操作系统————五种页面置换算法(OPT,FIFO,LRU,NRU,加强版NRU)大总结
  • “宝马女司机驾车拖行虐猫”引关注,海口警方介入调查
  • 马上评|房屋“注胶堵漏”骗局何以屡屡得逞
  • 雷军:小米芯片采用3纳米制程,首款SUV“YU7”即将发布
  • 释新闻|拜登确诊恶性前列腺癌,预后情况如何?
  • AI创业者聊大模型应用趋势:可用性和用户需求是关键
  • 广东信宜一座在建桥梁暴雨中垮塌,镇政府:未造成人员伤亡