目录
1. 我理解的 MCP
- 官方的套词就不说了,到处都是,这里说说个人的理解,仅供参考
- 目前 AI 的能力在一点一点的进步,但是 AI 的世界和真实的世界还是隔着十万八千里,AI 知道时间是什么,但是不知道现在几点;AI 的知识库停留到它训练的那一刻,它不知道最新的工具文档和代码包;AI 知道怎么开车,但是它看不到路,摸不到方向盘,踩不了刹车。
- 大家发现没有,这里面 AI 缺了什么能力?对,缺乏和真实世界产生联系的能力。而 MCP 就是用来做这个的,让 AI 可以跟真实世界发生联系,来回互动。这个我个人觉得就是 MCP 最大的意义。
- 有了 MCP,当你问 AI 现在几点,它就不会再乱编了,会去调用时间 MCP,获取真实的时间;有了 MCP,当你问 AI 一个最新出炉的技术文档,它也不会再乱编了,会去调用网络查询 MCP,获得最新的内容,整理后发给你;有了 MCP,它就可以开车,只要你把看路的能力,转动方向盘的能力,刹车的能力给它,它就能开,能转弯,能刹车。
2. 写一个自己的MCP然后发布到 PyPi 上,包括加法工具和获取当前 ip 工具
2.1 先碎碎念一下 uv
- 官方的 Python SDK 使用的是 Python 一个新的包管理工具,
uv,已经写了一篇前置文章把 uv 的简单使用刷了一下,快速用 uv 模拟发布一个 Python 依赖包到 TestPyPI 上,以及常用命令 - 为什么要模拟发布呢,因为 MCP 这东西太新了,要求的 Python 版本是3.10起步,而我本地是3.9,不想不敢升级,印象中之前升级遇到坑,有一些老 Python 项目无法兼容3.10,似乎3.10删了一些东西,无法理解,不向下兼容,坑死了。
- 拉回来,其实一开始是陷入了牛角尖,一直在琢磨如何测试 MCP 的效果,也是因为第一次接触 MCP,对这个东西的运行机制不了解,虽然它一出来的时候就关注到了,但是网上的 MCP 例子,都是什么操控数据库啦,操控 git 啦,操控聊天工具啦,其实都没有什么本质上的提效(针对程序员来说),就一直没有试用。
- 这一次正正经经的试用,起因其实是 Augment,太好用了,但也太慢了,不可能一直盯着它看进度,就想着做一个通知类的 MCP,让 Augment 在运行结束后通知一下我,这样可以把正在摸鱼的我拉回电脑前。
- 接下来我们来尝试开发一个简单的 MCP,就叫 mcp-scoful-demo,功能包括加法、获取当前本地 ip 地址
2.2 初始化项目(全程在 cmd 下运行命令)
uv init --lib mcp-scoful-demo # 初始化
cd mcp-scoful-demo # 进入初始化的目录
2.3 添加 mcp 依赖
uv add "mcp[cli]"
2.4 添加 server.py,先把加法功能添加上
- 在
mcp-scoful-demo目录下,找到src/mcp-scoful-demo,添加server.py,内容如下:
cd src
cd mcp-scoful-demo
code server.py #假设你本地已经安装了 vs code

&spm=1001.2101.3001.5002&articleId=148615189&d=1&t=3&u=c0255d3391ee453ebc18d06dde73b016)
4532

被折叠的 条评论
为什么被折叠?



