爆火 | API 终将淘汰,MCP+LLM+向量数据库才是 Agent 开发新范式 原创

发布于 2025-3-20 10:06
浏览
0收藏

"大模型虽然智能,但似乎在面对各种问题时仍显得力不从心。"

许多用户在运用大模型时,可能都会遇到这样的困惑。

举例来说,询问 DeepSeek 关于即将到来的清明节的习俗,AI 能够信手拈来地提供答案;然而,当要求它制定一份为期三天两晚的清明旅行计划时,其给出的方案似乎总是不够完美。

原因显而易见,在制定旅行计划时,大模型缺少了天气、机票、铁路、导航、酒店等重要数据与工具的接入。这就好比一个极具智慧的大脑,却缺乏了外部的“数据”输入和强健的四肢支持。

在这种情况下,为了提升大模型的能力,通过为其配备多样化的外部工具和数据库,Agent 技术最近2年来备受关注。

然而,要打造一个高度智能的 Agent,通常需要集成大量的外部工具。在传统的 Agent 开发过程中,每增加一个工具,就需要为大模型编写一个新的 API,这使得系统变得越来越复杂。

MCP(模型上下文协议)的问世改变了这一现状。

去年11月,硅谷 AI 巨头 Anthropic 正式发布了MCP——模型上下文协议,使得开发者只需编写一次代码,就能让大模型对接不同的 API、数据库与文件系统,极大简化了模型的配置过程。

正因为如此,MCP 一经推出,便被誉为最强大的标准化接口协议,一夜之间在全球大模型领域掀起热潮,成为新一代 Agent 工具调用的标准协议。

那么,MCP 究竟是什么呢?我们又该如何将其与 Milvus 相结合?

1、模型上下文协议(MCP)是什么

MCP 是一种开源协议,它的目标是对大模型与各类数据源及工具的互联方式进行标准化。

借助 MCP,大模型(LLM)就如同配备了通用的 Type C 充电接口,能够迅速连接到任何支持 MCP 的工具。

从技术架构的角度来看,MCP 实行的是客户端-服务器模型,其中,主应用程序能够与多个工具服务器建立连接:

MCP 主机:指那些希望通过 MCP 来获取数据的程序,例如 Claude 的桌面应用、集成开发环境(IDE)或者 AI 工具(Cursor、Agents 等)。

MCP 客户端:这是与服务器建立一对一连接的协议客户端。

MCP 服务器:通过标准化的模型上下文协议,连接到具有特定功能的轻量级程序。

本地数据源:指的是 MCP 服务器可以安全访问的计算机文件、数据库和服务。

远程服务:MCP 服务器能够连接到互联网上的外部系统(例如,通过 API 进行连接)。


爆火 | API 终将淘汰,MCP+LLM+向量数据库才是 Agent 开发新范式-AI.x社区


2、为何要将 Milvus 与 MCP 结合使用?

Milvus 不仅在处理大规模数据方面表现出色,其高效的相似性搜索能力和可扩展的向量存储特性,使其成为 Agent 智能体的首选解决方案。

借助 MCP 这位“理想的协调者”,开发者能够在不增加额外工程量的情况下,轻松实现大模型对向量数据库知识的高效、标准化访问。

那么,通过 MCP 整合 Milvus,我们将能够享受到哪些功能呢?

  • 复杂的向量相似性搜索能力
  • 索引的创建与操作
  • Schema 分析:可以直接在 AI 代理界面中检查集合的 Schema、字段类型和索引设置。
  • 实时监控:获取集合的统计信息、实体数量和数据库运行状态指标,确保系统性能最优。
  • 动态操作:根据需求变化,即时创建新集合、插入数据或修改 Schema。
  • 全文搜索:从 Milvus 2.5 版本开始,新版本均支持全文搜索功能。

3、如何将 Milvus 通过 MCP 与大模型集成?

Milvus MCP 服务器兼容支持 MCP 的各种大模型(LLM)应用程序,其中包括但不限于以下几款:

  • Claude Desktop:由 Anthropic 开发的 Claude 桌面应用程序。
  • Cursor:一款 AI 代码编辑器,其 Composer 功能支持 MCP。
  • 自定义 MCP 客户端:任何遵循 MCP 客户端规范开发的应用程序。

在接下来的步骤中,我们将通过 Claude Desktop 和 Cursor 来展示部署过程。

第一步:环境准备

在使用 MCP 服务器之前,请确保已经准备好:

  1. Python 3.10 或更高版本;
  2. 正在运行的 Milvus 实例(本地或远程)
  3. uv 工具

第二步:配置指南

我们推荐,Milvus MCP Server 直接使用 uv 方式运行。以下案例中的  Claude Desktop 和 Cursor 都可以如此配置。

git clone https://github.com/zilliztech/mcp-server-milvus.git
  • 1.

cd mcp-server-milvus
  • 1.

接下来,我们就可以直接运行 server 了,如下所示:

uv run src/mcp_server_milvus/server.py --milvus-uri http://localhost:19530
  • 1.

第三步:与 Claude Desktop 集成

Step1:从 https://claude.ai/download 安装 Claude Desktop

Step2:打开你的 Claude Desktop 配置:

macOS:

~/Library/Application Support/Claude/claude_desktop_config.json
  • 1.

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"
      ]
    }
  }
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.

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
  • 1.

⚠️注意:要使用127.0.0.1而不是 localhost,可以避免潜在的 DNS 解析问题。

方法二:使用项目特定配置(推荐)

Step1:在项目根目录中创建一个. cursor/mcp.json 文件:

mkdir -p /path/to/your/project/.cursor
  • 1.

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"
      ]
    }
  }
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.

Step3:重新启动 Cursor 或重新加载窗口

添加 server 后,我们需要点击 MCP 设置中的刷新按钮来激活工具列表。这样,当我们的查询相关内容的时候,Composer Agent 就能自动使用 Milvus 工具。

Step4:验证集成效果

要验证 Cursor 是否已成功与 Milvus MCP 服务器集成:

  • 打开 Cursor Settings > Features > MCP
  • 检查“Milvus”是否出现在 MCP 服务器列表中
  • 验证工具是否集成成功

    (例如 milvus_list_collections、milvus_vector_search 等)

4、案例展示:Claude Desktop+MCP+Milvus 效果展示

案例 1:提问

首先,我们给出如下一个提问:

What are the collections I have in my Milvus DB?
  • 1.

Claude 马上就会使用 MCP 在 Milvus 向量数据库中检索和以上提问有关的数据。

爆火 | API 终将淘汰,MCP+LLM+向量数据库才是 Agent 开发新范式-AI.x社区

案例 2:文档搜索

首先,我们明确一下需求:

爆火 | API 终将淘汰,MCP+LLM+向量数据库才是 Agent 开发新范式-AI.x社区

 Claude 将利用 Milvus 的全文搜索功能来检索相关文档:

爆火 | API 终将淘汰,MCP+LLM+向量数据库才是 Agent 开发新范式-AI.x社区

Cursor + MCP + Milvus  效果展示 

在 Cursor 的 Composer 中,您可以进行如下操作:

Create a new collection called 'articles' in Milvus with fields
 for title (string), content (string), and a vector field (128 dimensions)
  • 1.
  • 2.

Cursor 将使用 MCP 服务器执行此操作:

爆火 | API 终将淘汰,MCP+LLM+向量数据库才是 Agent 开发新范式-AI.x社区



本文转载自公众号玄姐聊AGI  作者:玄姐

原文链接:​​https://mp.weixin.qq.com/s/UuVxTptS5t4a1M8iJ1SJYw​

©著作权归作者所有,如需转载,请注明出处,否则将追究法律责任
已于2025-3-20 10:06:17修改
收藏
回复
举报


回复
相关推荐