DeepSeek 应用开发实战
云阳
某大厂 AI 与容器技术专家
4247 人已学习
新⼈⾸单¥59
登录后,你可以任选4讲全文学习
课程目录
已更新 17 讲/共 34 讲
第二章 理解力+文本撰写力:打造求职助手 (3讲)
DeepSeek 应用开发实战
15
15
1.0x
00:00/00:00
登录|注册

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 工具对项目进行初始化。
uv init mcp-client-demo
uv add "mcp[cli]"
pip install mcp
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
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
立即购买
登录 后留言

全部留言(2)

  • 最新
  • 精选
  • simple_孙
    像Cline是配置npx命令直接使用ts开发的server,有个问题就是,自己写的Python的client,怎么运行npx命令起一个本地的server呢,因为npx不需要指定本地文件,会报找不到本地文件的错误

    作者回复: 看我上节课的内容

    2025-03-28归属地:广东
  • 夏落de烦恼
    盲猜Sdtio😂

    作者回复: 哈哈 我猜也是

    2025-03-28归属地:广东
收起评论
大纲
固定大纲
MCP 通信方式
Stdio 方式
项目初始化
显示
设置
留言
2
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部