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

MCP入门实战(极简案例)

MCP简介

MCP(Model Context Protocol,模型上下文协议)2024年11月底由 Antbropic 推出的一种开放标准,旨在统一大型语言模型(LLM)与外部数据源和工具之间的通信协议。
在这里插入图片描述

Function Calling是AI模型调用函数的机制,MCP是一个标准协议,使AI模型与API无缝交互,而Al Agent是一个自主运行的智能系统,利用FunctionCallinq和MCP来分析和执行任务,实现特定目标。

Function Calling 现在基本上被淘汰了,现在几乎全部都用MCP了。

MCP通信机制

MCP 协议支持三种主要的通信机制:

  1. 基于标准输入输出的本地通信(stdio),这个通信协议企业中不会用。
  2. 基于SSE(Server-Sent Events)的远程通信。是一种基于HTTP协议的单向通信协议,允许服务器以事件流的形式实时向客户端推送数据,而无需客户端明确请求。MCP中的SSE Transport结合了SSE技术和HTTP POST
  3. Streamable HTTP是MCP协议推荐的下一代传输机制(2025年3月26日),基于标准HTTP协议实现动态流式升级的传输方式,它移除了专用SSE端点,所有消息通过端点传输,服务器可根据需要将普通HTTP请求升级为SSE流,支持流式响应。
HTTP+SSE的缺陷
  1. 不支持恢复连接
    如果客户端和服务器之间的 sSE 连接中断了,就无法“从端点继续”,只能重新开始新的连接,之前的上下文可能会丢失。

  2. 要求服务器保持高可用的长连接
    服务器必须一直保持一个稳定、不中断的sSE长连接,否则通信就中断。

  3. 服务器只能通过ss发送消息
    服务器无法在已有的请求之外,主动地发送消息给客户端,除了通过专门的/sse 通道,换句话说,它是“单向被动响应”而不是“任意时机推送”。

MCP架构

在这里插入图片描述

MCP工作流程

在这里插入图片描述

代码实战

mcp server
# 导入FastMCP库 - 用于快速构建MCP服务器的Python框架
from fastmcp import FastMCP# 创建MCP服务器实例
# name='test_mcp': 服务器名称(在客户端连接时显示)
# instructions="测试mcp": 服务器功能描述(帮助AI理解服务器用途)
mcp_server = FastMCP(name='test_mcp', instructions="测试mcp")# 使用装饰器注册工具函数
# @mcp_server.tool(): 声明下面的函数是MCP工具
# 工具:让AI模型能调用的外部功能(如计算器、数据库查询等)
@mcp_server.tool()
def 
http://www.lqws.cn/news/289.html

相关文章:

  • 1、Pytorch介绍与安装
  • 详解GPU
  • 用 Python 模拟下雨效果
  • 计算机网络常见体系结构、分层必要性、分层设计思想以及专用术语介绍
  • Selenium 测试框架 - Kotlin
  • 【Oracle】DCL语言
  • 企业文件乱、传输慢?用群晖 NAS 构建安全高效的共享系统
  • 华为OD机试真题——阿里巴巴找黄金宝箱(III)(2025A卷:100分)Java/python/JavaScript/C/C++/GO最佳实现
  • Java异常处理的全面指南
  • leetcode450.删除二叉搜索树中的节点:迭代法巧用中间节点应对多场景删除
  • C++:智能指针
  • 今天遇到的bug
  • 设计模式-工厂方法模式
  • mysql一主多从 k8s部署实际案例
  • Vulhub靶场搭建(Ubuntu)
  • 【计算机网络】第2章:应用层—DNS