RAG 的局限:知识是"静态快照"(索引时定了,之后不变)。MCP 的强项:能力是"动态接入"(随时调用)。把两者结合——把知识变成工具,让 LLM “查询即检索”——是知识型 Agent 的新架构。
一、RAG 的天花板#
核心问题:RAG 把知识变成了"静态切片",而业务知识是动态、结构化、有权限的。
二、MCP 给出的答案:查询即检索#
变化:
优势:
三、架构模式#
模式 A:查询工具(替代 RAG 检索)#
1
2
3
4
5
|
@mcp.tool()
def search_resume(query: str, limit: int = 10):
"""按技能/经历/职位关键词检索候选人,返回结构化结果"""
hits = es.search(query, size=limit, filters=perm_filter())
return [normalize(h) for h in hits] # 结构化,不是 chunk
|
模式 B:聚合工具(RAG 做不到的)#
1
2
3
4
|
@mcp.tool()
def skill_distribution(city: str):
"""统计某城市候选人技能分布(招聘分析场景)"""
return es.aggregate(terms="skills", filter={"city": city})
|
RAG 拿不到"聚合结果"(chunk 检索只有文档);MCP 工具可以返回任何计算产物。
模式 C:混合(RAG 兜底 + 工具优先)#
四、什么时候用哪种#
| 知识类型 |
方案 |
| 静态文档(手册、论文) |
传统 RAG(索引成本低) |
| 实时业务数据(简历、订单) |
MCP 工具查询 |
| 结构化统计(聚合分析) |
MCP 工具 |
| 混合知识库 |
混合(工具优先 + RAG 兜底) |
判断标准:
五、最佳东方实践#
六、避坑清单#
七、MCP-RAG 的局限#
MCP 与 RAG 结合的核心认知:
- RAG 的局限是"静态切片",MCP 的答案是"动态查询"
- 查询即检索:知识变成工具,实时、结构化、带权限
- 工具优先 + RAG 兜底:精确查工具、模糊查向量
- 判断标准:数据会变/结构化/有权限 → 用工具;静态文档 → 用 RAG
2026 年知识型 Agent 的方向:不是"塞更多知识",是"给模型更好的查询能力"。 MCP 把知识的边界从"上下文"扩展到了"整个系统"。
微信公众号「福清而不淡」
后端架构 · AI 工程 · 云原生的一线实践,扫码关注,不错过更新。
本文已同步发布到公众号,欢迎留言交流。