RAG-MCP 解決了什麼問題?

當 LLM 需要使用大量 MCP(Model Context Protocol)工具時,傳統做法是將所有工具描述全部塞入 prompt。這導致 prompt 長度急劇膨脹,token 消耗暴增,推理成本直線上升,更嚴重的是模型容易被過多資訊干擾,選擇錯誤的工具。

2026年3月發表的 RAG-MCP 研究論文(arXiv:2505.03275)提出創新架構:先用語義相似度檢索找出最相關的 MCP 工具,只將這些工具描述傳給 LLM,大幅縮減 prompt 長度,同時維持工具選擇的準確率。這種「先檢索再決策」的模式,讓 LLM 就像有了縮小版的工具清單,專注處理真正需要的工具。

RAG-MCP 核心運作原理

RAG-MCP 的運作流程可分為三個階段:

  1. 工具向量建庫:將所有 MCP 工具的描述、功能、參數規格轉換為向量,存入向量資料庫
  2. 語義檢索:根據使用者的查詢語意,從資料庫中檢索最相似的 Top-K 工具
  3. 精簡 Prompt 組裝:只將 Top-K 工具描述加入 prompt,交由 LLM 決策執行

這種方式將「工具發現」與「工具執行」分離,讓 LLM 處理更少的資訊,卻能做更精準的判斷。

實作:建立 RAG-MCP 工具檢索系統

以下示範如何使用 Python 實作基本的 RAG-MCP 架構:

# 安裝必要套件
pip install chromadb sentence-transformers

from sentence_transformers import SentenceTransformer
import chromadb

# 初始化向量資料庫與嵌入模型
model = SentenceTransformer('paraphrase-multilingual-MiniLM-L12-v2')
client = chromadb.PersistentClient(path="./mcp_tools_db")

# 假設有以下 MCP 工具描述
mcp_tools = [
    {"id": "weather_api", "name": "天氣查詢", "desc": "取得指定城市的天氣資訊"},
    {"id": "calendar_api", "name": "日曆管理", "desc": "建立、查詢、修改行事曆事件"},
    {"id": "email_api", "name": "郵件發送", "desc": "發送電子郵件給指定收件人"},
    {"id": "file_api", "name": "檔案處理", "desc": "讀取、寫入、搜尋檔案系統"},
]

# 建立向量集合並存入工具描述
collection = client.get_or_create_collection("mcp_tools")
for tool in mcp_tools:
    embedding = model.encode(tool["desc"])
    collection.add(ids=[tool["id"]], embeddings=[embedding.tolist()], metadatas=[{"name": tool["name"], "desc": tool["desc"]}])

# 語義檢索函式
def retrieve_tools(query, top_k=2):
    query_embedding = model.encode(query)
    results = collection.query(query_embeddings=[query_embedding.tolist()], n_results=top_k)
    return results

# 測試檢索
query = "我需要查詢明天台北的天氣"
results = retrieve_tools(query)
print("最相關的工具:", results["metadatas"][0])

這段程式碼展示了如何將 MCP 工具描述向量化並建立檢索系統。實際應用中,你需要將檢索結果組裝成精簡的 prompt 傳給 LLM。

RAG-MCP 與傳統 MCP 的比較

  • Token 消耗:傳統方式隨工具數量線性成長;RAG-MCP 固定在 Top-K 工具的描述量
  • 推理延遲:傳統方式因 prompt 過長導致生成時間增加;RAG-MCP 檢索時間極短,總延遲降低
  • 準確率:傳統方式容易因資訊過多而選錯工具;RAG-MCP 讓 LLM 專注於相關工具
  • 擴展性:傳統方式難以應對數百個工具;RAG-MCP 可輕鬆擴展至數千工具

企業導入建議與未來趨勢

隨著企業 MCP server 數量激增,MCP 管理與工具發現已成為 2026 年最重要的工程挑戰之一。Opik MCP server 在 2026年3月完成改版,支援 remote MCP 與改良的 auth 機制,為企業級應用奠定基礎。

建議企業從以下步驟導入 RAG-MCP:

  1. 盤點現有 MCP 工具,建立標準化的工具描述格式
  2. 選擇適合的向量資料庫與嵌入模型
  3. 設計檢索後的 prompt 模板,確保 LLM 能正確理解工具用途
  4. 建立監控機制,持續優化檢索品質

RAG-MCP 代表 RAG 與 MCP 不再是獨立模組,而是融合為企業 AI 架構的核心層。掌握這項技術,將成為 AI 工程師的關鍵競爭力。