爆火 | API终将淘汰,MCP+Milvus+LLM才是Agent开发新范式

前言
“大模型很聪明,但又貌似什么问题都解决不了。”
这应该是不少用户使用大模型过程中都会面临的问题。
比如,问deepseek,即将到来的清明节有什么习俗,AI可以引经据典的给出答案;但如果要它给出一份三天两晚的清明旅行规划,给出的答案,就好像总是差点意思。
原因很简单,在做旅行规划的时候,大模型缺乏必要的天气、机票、铁路、导航、酒店等必要数据与工具的接入。就像一个顶级聪明的大脑,但没有配备外部的“数据”输入,以及强壮的四肢。
在这一背景下,通过为大模型配备各种外接工具与数据库,Agent成为了近些年的显学。
但一个足够智能的Agent,通常需要添加非常多的外部工具,但在传统的Agent开发过程中,我们每添加一个工具,就需要为大模型多写一个API,系统也会因此变得混乱不堪。
MCP(模型上下文协议)的出现改变了这一局面。
去年11月,硅谷AI独角兽Anthropic正式推出了MCP——模型上下文协议,让开发者只需一次编写,就能为大模型对接不同的API、数据库与文件系统,极大降低了模型的配置难度。
也是因此,MCP一经推出,就被奉为最强标准化接口协议,一夜间爆火全球大模型圈,成为新一代Agent工具调用标准协议。
那么,MCP究竟是什么?我们如何将当其与Milvus结合?
01
模型上下文协议(MCP)是什么
MCP是一种开放协议,旨在规范大模型与不同数据源及工具的连接方式。
有了MCP,LLM就像装上了标准的type C接口充电,可以快速接入的任何支持MCP的工具。
从技术架构来看,MCP采用的是客户端 - 服务器架构,其中,主机应用程序可连接至多个(工具)服务器:
MCP主机:希望通过MCP获取数据的程序,如Claude桌面版、集成开发环境(IDE)或AI工具
MCP客户端:与服务器保持一对一连接的协议客户端
MCP服务器:通过标准化的模型上下文协议连接特定功能的轻量级程序
本地数据源:MCP服务器能够安全访问的计算机文件、数据库及服务
远程服务:MCP服务器可连接的互联网上的外部系统(例如,通过API)
3.18-1.png
02
为何要将Milvus与MCP结合使用?
Milvus不仅擅长管理海量数据,其高效的相似性搜索和可扩展的向量存储功能,更是让其成为AI Agent的理想之选。
而有了MCP充当“完美中间人”,开发者们就可以在无需额外工程投入的情况下,就能实现大模型对向量数据库知识的的无缝、标准化访问。
那么,通过MCP接入Milvus,我们能获得哪些功能呢?
复杂的向量相似性搜索
创建和操作索引
Schema分析:直接通过AI代理界面检查集合Schema、字段类型和索引配置。
实时监控:查询集合统计信息、实体数量和数据库运行状况指标,以确保最佳性能。
动态操作:根据需求变化,实时创建新集合、插入数据和修改Schema
全文搜索:自Milvus 2.5起,新的版本均支持全文搜索
03
如何将milvus通过MCP与大模型集成?
Milvus MCP 服务器可以与支持MCP的各种 LLM 应用程序一起使用,包括但不限于
Claude Desktop:Anthropic 为 Claude 开发的桌面应用程序
Cursor:人工智能代码编辑器,其 Composer 功能支持 MCP
自定义 MCP 客户端:任何接入 MCP 客户端规范的应用程序
接下来,我们会使用Claude Desktop和Cursor进行部署展示。
第一步:环境准备
在使用 MCP 服务器之前,请确保已经准备好:
Python 3.10 或更高版本;
正在运行的Milvus实例(本地或远程)
uv 工具
第二步:配置指南
我们推荐,milvus MCP server 直接使用uv运行。以下示例中的Claude Desktop 和 Cursor 都可以如此配置。
git clone https://github.com/zilliztech/mcp-server-milvus.git
cd mcp-server-milvus
接下来,我们就可以直接运行server了:
uv run src/mcp_server_milvus/server.py --milvus-uri http://localhost:19530
第三步:与 Claude Desktop 集成
step1: 从https://claude.ai/download安装 Claude Desktop
step2: 打开你的 Claude Desktop 配置:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
step3:添加以下配置
{ "mcpServers": { "milvus": { "command": "/PATH/TO/uv", "args": [ "--directory", "/path/to/mcp-server-milvus/src/mcp_server_milvus", "run", "server.py", "--milvus-uri", "http://localhost:19530" ] } }}
step4:重启Claude桌面
第四步:与Cursor 集成
Cursor 可以通过 Composer 中的 Agent 功能支持 MCP工具。我们可以通过两种方式将 Milvus MCP 服务器添加到 Cursor:
方法一 :使用Cursor 设置 UI
step1: 转至Cursor Settings> Features>MCP
step2: + Add New MCP Server按钮
step3填写配置: Type选择stdio;name选择milvus;Command如下
/PATH/TO/uv --directory /path/to/mcp-server-milvus/src/mcp_server_milvus run server.py --milvus-uri http://127.0.0.1:19530
⚠️注意:要使用127.0.0.1而不是localhost,可以避免潜在的 DNS 解析问题。
方法二:使用项目特定配置(推荐)
step1: 在项目根目录中创建一个. cursor/mcp.json文件:
mkdir -p /path/to/your/project/.cursor
step2: 创建一个 mcp.json 文件,内容如下:
{ "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" ] } }}
step3: 重新启动 Cursor 或重新加载窗口
添加server后,我们需要点击 MCP 设置中的刷新按钮来激活工具列表。这样,当我们的查询相关内容的时候,Composer Agent 就能自动使用 Milvus 工具。
step4: 验证集成效果
要验证 Cursor 是否已成功与 Milvus MCP 服务器集成:
打开Cursor Settings > Features > MCP
检查“Milvus”是否出现在 MCP 服务器列表中
验证工具是否集成成功(例如 milvus_list_collections、milvus_vector_search 等)
04
案例展示
Claude Desktop+MCP+milvus效果展示
示例 1:提问
首先,我们给出一个提问
What are the collections I have in my Milvus DB?
紧接着,Claude 就会使用 MCP 在Milvus中检索和以上提问有关的信息。
I'll check what collections are available in your Milvus database.View result from milvus-list-collections from milvus (local)Here are the collections in your Milvus database:rag_demotestchat_messagestext_collectionimage_collectioncustomized_setupstreaming_rag_demo
示例 2:搜索文档
首先,我们给出一个明确的需求
Find documents in my text_collection that mention "machine learning"
Claude 将使用 Milvus 的全文搜索功能来查找相关文档:
I'll search for documents about machine learning in your text_collection.View result from milvus-text-search from milvus (local)Here are the documents I found that mention machine learning:[Results will appear here based on your actual data]
Cursor+MCP+milvus效果展示
在 Cursor's Composer 中,你可以询问:
Create a new collection called 'articles' in Milvus with fields for title (string), content (string), and a vector field (128 dimensions)
Cursor 将使用 MCP 服务器执行此操作:
I'll create a new collection called 'articles' with the specified fields.
> View result from milvus-create-collection from milvus (local)
Collection 'articles' has been created successfully with the following schema:- title: string- content: string- vector: float vector[128]
技术干货
门槛一降再降,易用性大幅提升!Milvus 2.2.12 持续升级中
一句话总结 Milvus 2.2.12 :低门槛、高可用、强性能。
2023-7-27技术干货
LangChain 查询使用指「北」
LangChain 是一种 AI 代理工具,可以为以 ChatGPT 为代表的额大语言模型(LLM)增添更多功能。此外,LangChain 还具备 token 和上下文管理功能。本文主要通过查询 GPT 和查询文档两个示例介绍如何使用 LangChain。
2023-5-30技术干货
LLMs 诸神之战:LangChain ,以【奥德赛】之名
毫无疑问,大语言模型(LLM)掀起了新一轮的技术浪潮,成为全球各科技公司争相布局的领域。诚然,技术浪潮源起于 ChatGPT,不过要提及 LLMs 的技术发展的高潮,谷歌、微软等巨头在其中的作用不可忽视,它们早早地踏入 AI 的技术角斗场中,频频出招,势要在战斗中一争高下,摘取搜索之王的桂冠。而这场大规模的 AI 之战恰好为 LLMs 技术突破奏响了序曲。LangChain 的加入则成为此番技术演进的新高潮点,它凭借其开源特性及强大的包容性,成为 LLMs 当之无愧的【奥德赛】。
2023-5-17