13|动手实现一个简单的MCP Client
邢云阳

你好,我是邢云阳。
上节课,我带你动手实现了一个 MCP Server,并使用 Roo Code 与 Claude Desktop 作为 MCP 客户端测试了功能。这节课,我们将进一步学习如何使用 MCP Python SDK 来编写一个 MCP Client,以便更加灵活地与 MCP 服务器进行通信和集成。
MCP 通信方式
在写代码之前,我们需要先了解一下 MCP 支持的两种通信方式:
标准输入输出(Standard Input/Output, stdio):客户端通过启动服务器子进程并使用标准输入(stdin)和标准输出(stdout)建立双向通信,一个服务器进程只能与启动它的客户端通信(1:1 关系)。stdio 适用于本地快速集成的场景。
服务器发送事件(Server-Sent Events, SSE):服务器作为独立进程运行,客户端和服务器代码完全解耦,支持多个客户端随时连接和断开。
这节课,我们分别了解一下这两种方式。
Stdio 方式
首先我来实现一个简单的示例,带你体会一下 stdio 方式 MCP Client 与 MCP Server 的通信过程。
项目初始化
我们还是使用 uv 工具对项目进行初始化。
公开
同步至部落
取消
完成
0/2000
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结

1. MCP支持的两种通信方式:标准输入输出(stdio)和服务器发送事件(SSE) 2. 使用MCP Python SDK编写一个MCP Client,以实现与MCP服务器的通信和集成 3. 通过stdio方式进行MCP Client与MCP Server的通信过程 4. 使用MCP Client的核心部分——工具的调用,包括列出MCP Server支持的工具和调用指定工具 5. SSE(服务器发送事件)是一种基于HTTP协议的技术,允许服务器向客户端单向、实时地推送数据 6. 改造MCP Server代码以支持SSE,包括创建SSE服务器和绑定SSE请求处理到MCP服务器 7. 重点在于MCP通信方式、MCP Client与Server的通信过程、SSE技术的介绍和MCP Server代码的改造
仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《DeepSeek 应用开发实战》,新⼈⾸单¥59
《DeepSeek 应用开发实战》,新⼈⾸单¥59
立即购买
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
全部留言(2)
- 最新
- 精选
- simple_孙像Cline是配置npx命令直接使用ts开发的server,有个问题就是,自己写的Python的client,怎么运行npx命令起一个本地的server呢,因为npx不需要指定本地文件,会报找不到本地文件的错误
作者回复: 看我上节课的内容
2025-03-28归属地:广东 - 夏落de烦恼盲猜Sdtio😂
作者回复: 哈哈 我猜也是
2025-03-28归属地:广东
收起评论