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

360免费建站李梦网络营销主要是什么

360免费建站李梦,网络营销主要是什么,网站开发定制企业,一半都有哪些做影视外包的网站1. 背景 前面我们介绍了 MCP 架构是server client 模式,今天来研究一下Client实现方案,本文会依赖MCP Python SDK,如果Python环境还未搭建好,可以爬楼看一下,我前序文章。 Client 有两种模式,今天研究std…

1. 背景

前面我们介绍了 MCP 架构是server + client 模式,今天来研究一下Client实现方案,本文会依赖MCP Python SDK,如果Python环境还未搭建好,可以爬楼看一下,我前序文章。
Client 有两种模式,今天研究stdio(Standard Input/Output, stdio 标准输入输出) 模式,客户端通过启动服务器子进程并使用标准输入(stdin)和标准输出(stdout)建立双向通信,一个服务器进程只能与启动它的客户端通信(1:1 关系)。stdio 适用于本地快速集成的场景。

两种模式,对比一下,方便大家选型:

特征stdio模式sse模式
通信协议标准输入输出服务器发送事件
实时性不支持实时更新支持实时更新
架构灵活性耦合,由客户端启动服务器解耦,客户端可随时连接
适用场景简单本地应用交互式应用
配置复杂性无需网络,本地命令运行需要网络连接和url

2. 环境准备

python 版本:3.12.5
LLM: deepseek-chat
SDK:openai 1.63.2

3. 步骤

1)使用 uv 工具初始化项目

uv init mcp-client-demouv  
#使用 uv 初始化一个名为 mcp-client-demo 的新 Python 项目,并在其中创建一个虚拟环境。add "mcp[cli]"
# 将包添加到当前项目中,"mcp[cli]": 表示要安装的包名是 mcp,并额外包含其 [cli] 可选依赖组uv add mcp
# 安装mcp包

初始化后项目结构
在这里插入图片描述

2)首先引用一下 MCP Client 的包

from mcp import ClientSession, StdioServerParameters
from mcp.client.stdio import stdio_client

在这里插入图片描述

3)设置服务器连接参数

然后需要编写设置服务器连接参数的代码。在使用 stdio 方式进行通信时,MCP 服务器的进程由 MCP 客户端程序负责启动。因此,我们通过 StdioServerParameters 来配置服务器进程的启动参数,包括运行 MCP 服务器的命令及其对应的参数。代码如下:

# Create server parameters for stdio connection
server_params = StdioServerParameters(command="uv", # Executableargs=["run","--with","mcp[cli]","--with-editable","/Users/zhangsir/PycharmProjects/Geek02/achievement-mcp-server/achievement",# "D:\\workspace\\python\\mcp-test\\achievement","mcp","run","/Users/zhangsir/PycharmProjects/Geek02/achievement-mcp-server/achievement/server.py"],# Optional command line argumentsenv=None # Optional environment variables
)

过配置这部分内容,可以确保 MCP 客户端能够正确启动并连接到 MCP 服务器。
配置结果
在这里插入图片描述

4)建立服务器连接

写一个 run 方法来建立客户端与服务器的连接

async def run():# stdio_client  负责启动服务器进程并建立双向通信通道,它返回用于读写数据的流对象。async with stdio_client(server_params) as (read, write):# ClientSession  则在这些流的基础上提供高层的会话管理,包括初始化连接、维护会话状态等async with ClientSession(read, write) as session:# Initialize the connectionawait session.initialize()# List available toolstools = await session.list_tools()print("Tools:", tools)# call a toolscore = await session.call_tool(name="get_score_by_name",arguments={"name": "张三"})print("score: ", score)

在这里插入图片描述

5)启动 run 函数

if __name__ == "__main__": 
import asyncio 
asyncio.run(run())

6)运行客户端

可以使用 uv 命令运行程序

uv run .\hello.py

4. 总结

1)stdio 模式是在client启动服务器,不适用用于生产环境,不可能,新增、变更tools后,所有client端都重启一次。

http://www.dtcms.com/wzjs/210992.html

相关文章:

  • 1688域名网站哪里有学电脑培训班
  • 如何做网站收录搜索量最大的关键词
  • 网站后台编辑器下载上海seo优化
  • 青浦做网站公司注册
  • 合肥网站建设新手网店运营工作内容
  • 济南住建局官方网站网络优化是做啥的
  • 小企业网站制作深圳seo推广
  • 不用写代码可以做网站的软件怎么样推广最有效最快速
  • 自我介绍网页郑州靠谱seo整站优化
  • 河南做网站多少钱域名注册网站系统
  • 服装网站建设效果2023年8月新闻热点事件
  • 买了虚拟主机怎么建设网站表白网页制作免费网站制作
  • 企业网络组网设计方案seo的优缺点
  • 微信上的网站怎么做的吗关键词seo排名公司
  • 摄影作品网站建设方案书网站设计方案模板
  • 网站建设制作放之宁波seo推广服务
  • 关于加强政务网站建设的通知常见的网络营销平台有哪些
  • 电子商务网站b2c开源网站怎么注册个人网站
  • 网站建设后的优势四川seo推广方案
  • 群晖nas安装wordpress南宁seo推广外包
  • 欧亚达网站是哪家公司做的郑州网站优化培训
  • 怎么做网站备案八百客crm系统登录入口
  • 网页设计基础填空题及答案石家庄网络推广优化
  • 做网站 服务器多少钱一年深圳做网站公司
  • 个人网站示例营销推广是干什么的
  • 免费的产品展示小程序seo工具有哪些
  • 新疆做网站的公司排名营销推广的工具有哪些
  • 装饰网站建设流程长沙网站推广公司
  • 自己做网站制作需要多少钱网络营销与直播电商就业前景
  • wordpress 评论头像不显示网站优化方案案例