爆火 | API 終將淘汰,MCP+LLM+向量數(shù)據(jù)庫才是 Agent 開發(fā)新范式 原創(chuàng)
"大模型雖然智能,但似乎在面對(duì)各種問題時(shí)仍顯得力不從心。"
許多用戶在運(yùn)用大模型時(shí),可能都會(huì)遇到這樣的困惑。
舉例來說,詢問 DeepSeek 關(guān)于即將到來的清明節(jié)的習(xí)俗,AI 能夠信手拈來地提供答案;然而,當(dāng)要求它制定一份為期三天兩晚的清明旅行計(jì)劃時(shí),其給出的方案似乎總是不夠完美。
原因顯而易見,在制定旅行計(jì)劃時(shí),大模型缺少了天氣、機(jī)票、鐵路、導(dǎo)航、酒店等重要數(shù)據(jù)與工具的接入。這就好比一個(gè)極具智慧的大腦,卻缺乏了外部的“數(shù)據(jù)”輸入和強(qiáng)健的四肢支持。
在這種情況下,為了提升大模型的能力,通過為其配備多樣化的外部工具和數(shù)據(jù)庫,Agent 技術(shù)最近2年來備受關(guān)注。
然而,要打造一個(gè)高度智能的 Agent,通常需要集成大量的外部工具。在傳統(tǒng)的 Agent 開發(fā)過程中,每增加一個(gè)工具,就需要為大模型編寫一個(gè)新的 API,這使得系統(tǒng)變得越來越復(fù)雜。
MCP(模型上下文協(xié)議)的問世改變了這一現(xiàn)狀。
去年11月,硅谷 AI 巨頭 Anthropic 正式發(fā)布了MCP——模型上下文協(xié)議,使得開發(fā)者只需編寫一次代碼,就能讓大模型對(duì)接不同的 API、數(shù)據(jù)庫與文件系統(tǒng),極大簡(jiǎn)化了模型的配置過程。
正因?yàn)槿绱?,MCP 一經(jīng)推出,便被譽(yù)為最強(qiáng)大的標(biāo)準(zhǔn)化接口協(xié)議,一夜之間在全球大模型領(lǐng)域掀起熱潮,成為新一代 Agent 工具調(diào)用的標(biāo)準(zhǔn)協(xié)議。
那么,MCP 究竟是什么呢?我們又該如何將其與 Milvus 相結(jié)合?
1、模型上下文協(xié)議(MCP)是什么
MCP 是一種開源協(xié)議,它的目標(biāo)是對(duì)大模型與各類數(shù)據(jù)源及工具的互聯(lián)方式進(jìn)行標(biāo)準(zhǔn)化。
借助 MCP,大模型(LLM)就如同配備了通用的 Type C 充電接口,能夠迅速連接到任何支持 MCP 的工具。
從技術(shù)架構(gòu)的角度來看,MCP 實(shí)行的是客戶端-服務(wù)器模型,其中,主應(yīng)用程序能夠與多個(gè)工具服務(wù)器建立連接:
MCP 主機(jī):指那些希望通過 MCP 來獲取數(shù)據(jù)的程序,例如 Claude 的桌面應(yīng)用、集成開發(fā)環(huán)境(IDE)或者 AI 工具(Cursor、Agents 等)。
MCP 客戶端:這是與服務(wù)器建立一對(duì)一連接的協(xié)議客戶端。
MCP 服務(wù)器:通過標(biāo)準(zhǔn)化的模型上下文協(xié)議,連接到具有特定功能的輕量級(jí)程序。
本地?cái)?shù)據(jù)源:指的是 MCP 服務(wù)器可以安全訪問的計(jì)算機(jī)文件、數(shù)據(jù)庫和服務(wù)。
遠(yuǎn)程服務(wù):MCP 服務(wù)器能夠連接到互聯(lián)網(wǎng)上的外部系統(tǒng)(例如,通過 API 進(jìn)行連接)。
2、為何要將 Milvus 與 MCP 結(jié)合使用?
Milvus 不僅在處理大規(guī)模數(shù)據(jù)方面表現(xiàn)出色,其高效的相似性搜索能力和可擴(kuò)展的向量存儲(chǔ)特性,使其成為 Agent 智能體的首選解決方案。
借助 MCP 這位“理想的協(xié)調(diào)者”,開發(fā)者能夠在不增加額外工程量的情況下,輕松實(shí)現(xiàn)大模型對(duì)向量數(shù)據(jù)庫知識(shí)的高效、標(biāo)準(zhǔn)化訪問。
那么,通過 MCP 整合 Milvus,我們將能夠享受到哪些功能呢?
- 復(fù)雜的向量相似性搜索能力
- 索引的創(chuàng)建與操作
- Schema 分析:可以直接在 AI 代理界面中檢查集合的 Schema、字段類型和索引設(shè)置。
- 實(shí)時(shí)監(jiān)控:獲取集合的統(tǒng)計(jì)信息、實(shí)體數(shù)量和數(shù)據(jù)庫運(yùn)行狀態(tài)指標(biāo),確保系統(tǒng)性能最優(yōu)。
- 動(dòng)態(tài)操作:根據(jù)需求變化,即時(shí)創(chuàng)建新集合、插入數(shù)據(jù)或修改 Schema。
- 全文搜索:從 Milvus 2.5 版本開始,新版本均支持全文搜索功能。
3、如何將 Milvus 通過 MCP 與大模型集成?
Milvus MCP 服務(wù)器兼容支持 MCP 的各種大模型(LLM)應(yīng)用程序,其中包括但不限于以下幾款:
- Claude Desktop:由 Anthropic 開發(fā)的 Claude 桌面應(yīng)用程序。
- Cursor:一款 AI 代碼編輯器,其 Composer 功能支持 MCP。
- 自定義 MCP 客戶端:任何遵循 MCP 客戶端規(guī)范開發(fā)的應(yīng)用程序。
在接下來的步驟中,我們將通過 Claude Desktop 和 Cursor 來展示部署過程。
第一步:環(huán)境準(zhǔn)備
在使用 MCP 服務(wù)器之前,請(qǐng)確保已經(jīng)準(zhǔn)備好:
- Python 3.10 或更高版本;
- 正在運(yùn)行的 Milvus 實(shí)例(本地或遠(yuǎn)程)
- uv 工具
第二步:配置指南
我們推薦,Milvus MCP Server 直接使用 uv 方式運(yùn)行。以下案例中的 Claude Desktop 和 Cursor 都可以如此配置。
git clone https://github.com/zilliztech/mcp-server-milvus.git
cd mcp-server-milvus
接下來,我們就可以直接運(yùn)行 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 服務(wù)器添加到 Cursor:
方法一 :使用 Cursor 設(shè)置 UI
- Step1:轉(zhuǎn)至 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 解析問題。
方法二:使用項(xiàng)目特定配置(推薦)
Step1:在項(xiàng)目根目錄中創(chuàng)建一個(gè). cursor/mcp.json 文件:
mkdir -p /path/to/your/project/.cursor
Step2:創(chuàng)建一個(gè) mcp.json 文件,內(nèi)容如下:
{
"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:重新啟動(dòng) Cursor 或重新加載窗口
添加 server 后,我們需要點(diǎn)擊 MCP 設(shè)置中的刷新按鈕來激活工具列表。這樣,當(dāng)我們的查詢相關(guān)內(nèi)容的時(shí)候,Composer Agent 就能自動(dòng)使用 Milvus 工具。
Step4:驗(yàn)證集成效果
要驗(yàn)證 Cursor 是否已成功與 Milvus MCP 服務(wù)器集成:
- 打開 Cursor Settings > Features > MCP
- 檢查“Milvus”是否出現(xiàn)在 MCP 服務(wù)器列表中
- 驗(yàn)證工具是否集成成功
(例如 milvus_list_collections、milvus_vector_search 等)
4、案例展示:Claude Desktop+MCP+Milvus 效果展示
案例 1:提問
首先,我們給出如下一個(gè)提問:
What are the collections I have in my Milvus DB?
Claude 馬上就會(huì)使用 MCP 在 Milvus 向量數(shù)據(jù)庫中檢索和以上提問有關(guān)的數(shù)據(jù)。
案例 2:文檔搜索
首先,我們明確一下需求:
Claude 將利用 Milvus 的全文搜索功能來檢索相關(guān)文檔:
Cursor + MCP + Milvus 效果展示
在 Cursor 的 Composer 中,您可以進(jìn)行如下操作:
Create a new collection called 'articles' in Milvus with fields
for title (string), content (string), and a vector field (128 dimensions)
Cursor 將使用 MCP 服務(wù)器執(zhí)行此操作:
本文轉(zhuǎn)載自公眾號(hào)玄姐聊AGI 作者:玄姐
