
前言
Agent开发的安卓时刻,真的来了!
下面这张图,这是不是你使用大模型的日常:无所不能的DeepSeek老师,能30秒告诉你量子力学的发展与演变,却不能告诉你如何买到清明节出去玩的最便宜的机票。
恭喜你,发现了大模型与Agent的核心差距。
通过将“万能百科全书”大模型与规划模块(分解任务步骤)、记忆模块(存储历史与知识,通常是milvus等向量数据库)、工具调用模块(执行API/代码,比如计算器、天气、炒股软件结合,Agent可以帮助我们更好的完成如股价分析、智能出行规划在内等具体的任务。
但实际开发中,不同模块之间,开发者往往需要一一编写专门的代码来处理连接、认证、数据格式转换等工作,非常的繁琐且低效。
那有没有办法,让Agent不同模块之间的对接,就像搭积木一样,通过统一的接口快速组合?
去年11月,硅谷AI独角兽Anthropic正式推出了MCP——模型上下文协议,让开发者只需一次编写,就能对接不同的API、数据库与文件系统,极大降低了模型的配置难度。
也是因此,MCP一经推出,就被奉为最强标准化接口协议,一夜间爆火全球大模型圈,成为新一代Agent工具调用标准协议。
甚至,还有人将其重要性与互联网时代http协议的发明相媲美——统一的接口标准,意味着更低的开发难度,撬动的是无限可能的生态开发潜力。
那么如何利用MCP的基本原理是什么?如何利用MCP进行开发?具体开发效果如何?本文为你一一解答。
01
MCP原理解读
MCP就像一个通用的USB-C接口,可以让不同的AI模型可以用同一种方式访问各种数据源,支持多种功能(数据访问、工具使用、提示模板),极大简化了开发者和用户的体验。
从架构上来说,MCP采用了客户端-服务器架构,主要包括主机、客户端、服务器、数据源四大核心组件。
1. MCP主机(Hosts):这是需要访问数据的程序,如Claude Desktop、各种IDE或AI工具。它们是MCP生态系统的入口点,负责向用户提供AI功能。
2. MCP客户端(Clients):这些是协议客户端,负责维持与MCP服务器的1:1连接。它们处理通信细节,确保主机和服务器之间的数据传输顺畅。
3. MCP服务器(Servers):这些是轻量级程序,每个服务器都通过标准化的Model Context Protocol暴露特定功能。服务器是MCP的核心,它们连接AI模型与实际数据源。
4. 数据源,包括两类:
- 本地数据源:您计算机上的文件、数据库和服务,MCP服务器可以安全访问这些资源
- 远程服务:通过互联网可用的外部系统(如通过API),MCP服务器可以连接这些系统
这些组件共同工作,形成了一个完整的生态系统,让AI模型能够安全、高效地访问各种数据和工具。
02
实战案例:mcp-server-milvus项目
背景:mcp-server-milvus项目介绍
该项目包含一个 MCP 服务器,可提供对Milvus向量数据库功能的访问。
项目地址:https://github.com/zilliztech/mcp-server-milvus
第一步:环境准备与配置
说明:本教程不含Python3和Nodejs安装展示,请自行按照官方手册进行配置。
Python3官网:https://www.python.org/
Nodejs官网:https://nodejs.org/zh-cn
第二步:安装UV
curl -LsSf https://astral.sh/uv/install.sh | sh
复制
复制
或者
pip3 install uv -i https://mirrors.aliyun.com/pypi/simple
复制
复制
安装完成之后,我们需要对UV进行验证。
uv --version
复制
复制
uvx --version
复制
复制
第三步:安装Milvus
Milvus 是由Zilliz全球首款开源向量数据库产品,能够处理数百万乃至数十亿级的向量数据,在Github取得3w+star数量。基于开源 Milvus ,Zilliz还构建了商业化向量数据库产品 Zilliz Cloud,这是一款全托管的向量数据库服务,通过采用云原生设计理念,在易用性、成本效益和安全性上实现了全面提升。
通过MCP服务器,开发者无需深入了解Milvus的底层API细节,就可以轻松实现向量数据的实时查询、相似度搜索和数据管理等操作,极大地降低了向量数据库应用的开发门槛。
部署Milvus环境要求,可参考Milvus官网:https://milvus.io/docs/prerequisite-docker.md
必要条件:
软件要求统:docker、docker-compose
内存:至少16GB
硬盘:至少100GB
下载milvus部署文件
复制
[root@Milvus ~]# wget https://github.com/milvus-io/milvus/releases/download/v2.5.4/milvus-standalone-docker-compose.yml -O docker-compose.yml
复制
启动Milvus复制
复制
[root@Milvus ~]# docker-compose up -d
复制
复制
[root@Milvus ~]# docker ps -a
复制
复制
第四步:Cursor中配置mcp-server-milvus服务
Clone项目到本地
复制
clone https://github.com/zilliztech/mcp-server-milvus.git
复制
优先在本地执行依赖下载复制
建议:由于网络原因,建议优先在本地执行nv命令进行安装验证后在前往cursor添加mcp-server
复制
uv run src/mcp_server_milvus/server.py --milvus-uri http://192.168.4.48:19530
复制
复制
新增mcp配置
在项目根目录中创建一个.cursor/mcp.json文件:
说明:这里填写自己的文件路径
复制
mkdir -p /path/to/your/project/.cursor
复制
参数说明:复制
1./PATH/TO/uv
替换uv可执行命令的路径
2.--directory
替换刚才clone下来的项目的完整路径
3.--milvus-uri
替换部署的milvus的服务地址
复制
{
"mcpServers": {
"milvus": {
"command": "/PATH/TO/uv",
"args": [
"--directory",
"/path/to/mcp-server-milvus/src/mcp_server_milvus",
"run",
"server.py",
"--milvus-uri",
"http://127.0.0.1:19530"
]
}
}
}
复制
复制
第五步:实测效果
注意在对话时务必选择Agent模式,否则Cursor是不会引用MCP服务的
首先,检查集群中的集合情况
复制
What are the collections I have in my Milvus DB?
复制
可以看到当前milvus数据库里是没有任何集合的复制
接下来,创建集合
复制
Create a new collection called 'articles' in Milvus with fields for title (string), content (string), and a vector field (128 dimensions)
复制
MCP自动为我创建了集合复制
接下来,再次查询集合
复制
What are the collections I have in my Milvus DB?
复制
再次查询的结果是已经查到了刚才创建的集合了复制
03
写在最后
在这次部署结束后,我对Smithery.ai(一个提供 MCP服务器导航和托管服务的平台)上1,400多个MCP服务器做了分析。可以发现,MCP不仅是一个技术协议,更是一个完整的生态系统,它拥有
丰富的功能生态系统:超过1,400种不同的MCP服务器,覆盖知识管理、代码开发、数据库操作、搜索引擎集成、学术资源检索等主流应用场景。
统一的协议标准带来的更高效率与普适性:支持一次开发多处使用、即插即用和组件化开发。适合个人开发者到企业应用的各种规模需求,帮助解决系统碎片化问题,让开发者专注业务逻辑,快速原型验证。
安全性:提供本地数据处理、精细权限控制、数据隔离和敏感信息保护。
通过打破传统工具的局限性,降低技术门槛,MCP使得用户可以在一个统一的环境中实时获取数据、执行命令和管理资源,从根本上改变了AI应用的开发方式。
例如,一个数据科学家可以在同一个工作流中查询Milvus文档、执行向量搜索操作、可视化搜索结果,而不必在多个工具间切换,从而将更多精力集中在业务逻辑和用户体验上。
不过,如果在实际应用中,我们需要对不同模块设置不同的精细权限控制以及紧耦合带来的性能最优,那么传统的API部署可能更为适合。
但长期来看,就像USB终将统一充电接口,MCP模式也终将成为业内主流的Agent搭建范式。
作者介绍
Zilliz 黄金写手:尹珉
推荐阅读

