大家好,我是阿坡,今天我通过极简单的案例,带大家手搓一个MCP客户端和服务端代码,来快速了解MCP是什么?
MCP是一个典型的CS架构,对于有编程基础的同学来说,很容易理解,因为开发中常见的MySql就是典型的CS架构,程序员日常开发过程中,会经常接触到CS架构的产品。
本文不做太多关于MCP是什么的解释,尽最可能减少无关的噪音,只需要知道,MCP(Model Context Protocol)是一个标准化协议,通过客户端-服务端架构,让AI模型能够安全地调用工具、访问外部数据源,并实时获取信息。
这个案例的内容就是:让AI根据你的输入自动规划并调用MCP服务端,给本地电脑创建一个文件,并写入一句话。
如果这个案例你跑通了,你就会对MCP有一个初步的且正确的认知了。后面,你再去看网上其他关于MCP的大段文字科普,或者眼花缭乱的客户端配置MCP服务器的教程,再或者通过Dify等工作流与MCP结合,就会有种拨云见日,一览众山小的感觉。
一、环境安装
一)下载并安装python
官网:https://www.python.org/


二)安装uv
1、uv介绍
MCP开发要求借助uv进行虚拟环境创建和依赖管理。uv 是一个Python 依赖管理工具,采用 Rust 编写,功能类似于pip,venv,但它更快、更高效,并且可以更好地管理 Python 虚拟环境和依赖项,也就是说他兼有了创建虚拟环境和包管理工具的功能,可以平替pip,venv。
它完全兼容 pip :支持 requirements.txt 和 pyproject.toml 依赖管理。 跨平台:支持 Windows、macOS 和 Linux。
2、uv安装
ctrl+r,打开命令行,输入一下命令安装uv
代码块 pip install uv
uv常见使用命令可以自行问AI或百度,此处不再赘述。
二、案例场景概述
我们先从最简单的案例入手,创建client端,server端,然后联调通,对吗,mcp建立起一个初步完整的认知即可,尽最大可能避免引入复杂的东西。
所以,我们的案例就是:通过手动创建的client运行起来后,来调用server端的逻辑,server端的逻辑就是:创建一个名为aaa.txt文件,写入 今天天气真好! ,即可。
三、MCP客户端
一)初始化client项目
进入自己的代码目录下,创建一个文件夹:
代码块 # 创建并初始化项目目录 uv init mcp_client # 进入文件夹 cd mcp_client

为了更好的阅读体验,来飞书看吧:
https://i3k3w6il9z.feishu.cn/docx/PtmPdIXvkoIrRWxPbXzcAaiUnuU
Comments on "手搓MCP客户端&服务端:从零到实战极速了解MCP是什么?" :