MCP 是一套标准化的JSON‑RPC通信协议,用来让大模型程序可以安全调用外部本地工具、本地数据、本地软件。它不是大模型,也不是工具本身,它只是一套对话规则,规定双方消息怎么发、参数怎么传、结果怎么返回,实现大模型和本地程序互相协作。

        整个体系分为Host、MCP‑Client、MCP‑Server三个角色,三者分工明确。 Host是完整的上层AI应用,比如WorkBuddy、Claude Desktop,是整个体系的宿主。它里面运行大模型、管理用户会话、做权限校验、处理上下文窗口、执行上下文压缩。 

        接下来我们就做一个mcp server,用workbuddy来调用这个mcp server实现功能吧!

步骤一:准备环境

        1、安装python环境,安装uv工具。

         2、进入创建好的文件夹MCP_Server,执行uv init . -p 3.11,将当前文件夹初始化成一个python工程。

        3.安装MCP的SDK,执行命令uv add "mcp[cli]",把python-sdk安装上。python-sdk是MCP协议的Python代码库,封装底层JSON‑RPC、stdio通信、握手、工具schema,这让开发者只写业务逻辑,不用手动实现协议底层。

步骤二:打开编辑器,编写mcp_server代码

        1、打开vscode,先将github上的这段server.py代码复制进去。

        2、在main.py文件中修改代码,保证直接运行脚本时启动 MCP 服务,通过 stdio 管道等待 WorkBuddy 父进程发送调用指令。

实际上不只是stdio这一种方法,还可以通过SSE、streamable‑http来实现MCP服务与客户端之间的通信。

步骤三:使用workbuddy验证效果

        1、打开workbuddy,在连接器中自定义MCP服务管理,点击配置MCP。

配置json服务:

这里出现绿灯就说明mcp配置成功了!

        2、然后在对话中进行测试:

发现工具已经成功调用了!

最后我们将MCP Server发布到公网上,可以供所有人来使用。

方式一:将它打包为一个python包,上传到pypi上

        新建一个名为wb_add_mcp_demo的文件夹,在该文件夹的终端内执行命令uv init . --package -p3.11,在当前目录初始化 uv 项目,生成 pyproject.toml 等工程文件,指定 Python 版本为 3.11;执行命令uv add "mcp[cli]"安装 MCP SDK 以及 cli 配套依赖。

        打开src文件下的__init__.py文件,修改代码:

        执行命令uv build打包:

        打开pypi,输入恢复码点击验证:

        通过后点击添加双重身份验证:

        然后添加API tokens:

        有了token后我们在终端执行uv publish --token XXXX(这里是你的pypitoken),回到我们的pypi中,可以看到项目已经成功发布了!

Logo

欢迎加入 MCP 技术社区!与志同道合者携手前行,一同解锁 MCP 技术的无限可能!

更多推荐