热门技能日报 Vol.041 · MCP工具|为AI编程Agent装上代码知识图谱
你是不是也这样 👇
让 Claude Code / Cursor 改一个老项目里的 Bug,Agent 上来先 一通 Read 文件,Read 了几十个文件还是找不到调用关系,Token 烧得飞快,最后答非所问。
结果:一个本该 5 分钟搞定的问题,因为 Agent 看不到代码全局图,硬是拖成了 30 分钟 + 一张天价账单。
这个 Skill 做的事很简单:
给你的 Coding Agent 装一个 代码知识图谱,把整个代码库变成一张可查询的图:函数、类、调用链、HTTP 路由一目了然。Agent 不再 Read 一个又一个文件,直接查图 → 一次拿到答案。
做完之后你会看到什么?
| Before |
▸ Agent 改一个函数,先 Read 30+ 文件找调用关系 ▸ 大型仓库(Linux kernel 这种 2800 万行)根本跑不动 ▸ Token 消耗爆炸,单次任务经常上百万 token ▸ Agent 看不到跨服务调用,问东答西 |
| After |
▸ Agent 改之前先 查图,秒级拿到完整调用链 ▸ Linux kernel 3 分钟全量索引,结构化查询 1ms 返回 ▸ 同类查询 token 减少 120 倍(3400 vs 412000) ▸ 跨文件、跨服务的真实依赖关系清晰可见 |
照着做,5 分钟看到效果 👇
1一行命令安装(30秒)
macOS / Linux 一行搞定:
curl -fsSL https://raw.githubusercontent.com/DeusData/codebase-memory-mcp/main/install.sh | bash
✅ 预期效果:单文件二进制已下载到 ~/.local/bin,自动配置到 Claude Code / Codex / Cursor 等 43 种 agent
2索引你的项目(看仓库大小)
在 Agent 里说一句话:
Index this project
✅ 预期效果:平均仓库毫秒级完成索引,Linux kernel 这种 2800 万行 / 75K 文件也只要 3 分钟
3让 Agent 用图查(开始省 token)
直接问代码结构问题:
Who calls Search() and what does Search() call?
✅ 预期效果:Agent 调 trace_path,一次拿到 5 层深的完整调用链,不用再 Read 几十个文件
它凭什么能省 120 倍 token?
01 · 158 种语言的代码索引
底层用 tree-sitter 做 AST 解析,加上 Hybrid LSP 做类型解析,能正确处理 Python/TS/Go/Rust/Java/C++ 等主流语言里的 import、泛型、继承、async 调用。理解的不是字符串,是真的代码结构。
▸ 关键指标:Linux kernel 2800 万行 / 3 分钟 / 毫秒级查询
02 · 15 个 MCP 工具直接喂给 Agent
search_graph / trace_path / get_architecture / detect_changes / query_graph(Cypher 子集)…… 一个 MCP 协议把整个图谱能力暴露出去,Agent 不用学新 API,像查表一样查代码。
▸ 关键指标:43 种 agent 一键接入,零运行时依赖
03 · 跨服务 HTTP 调用也能追踪
不只是单文件内的函数调用。它能把”前端路由 → 后端 API → 数据库表”这种跨服务调用关系也建边,写微服务的项目终于能看清单个改动的爆炸半径。
▸ 关键指标:Louvain 社区检测 + 死代码识别 + 架构 ADR 持久化
适不适合你?
| ✅ 适合你 | 用 Claude Code / Cursor / Codex 改大型老项目,Agent 总是找不到上下文 |
| ✅ 适合你 | 做微服务 / 多仓库架构,需要看跨服务调用关系 |
| ✅ 适合你 | 关心 LLM API 账单成本,想让 Agent 少烧 token |
| ⚠️ 不急 | 你只改 1-2 个文件的小项目,简单 Read 就够用 |
15 个 MCP 工具速查
| 分类 | 工具 | 用途 |
|---|---|---|
| 索引 | index_repository | 把仓库索引成图,自动同步 |
| 查询 | search_graph | 按 label / 名称 / 文件名结构化搜索 |
| 查询 | trace_path | 沿调用链 BFS 上下游 1-5 层 |
| 查询 | query_graph | 类 Cypher 只读查询 |
| 分析 | get_architecture | 一次拿到全仓库语言/包/路由/热点/集群 |
| 分析 | detect_changes | 把 git diff 映射到受影响符号 + 爆炸半径 |
| 可视化 | –ui=true –port=9749 | 内置 3D 知识图谱浏览器 |
资源 & 链接
▸ GitHub: DeusData/codebase-memory-mcp
▸ 论文: Codebase-Memory(arXiv:2603.27277)
▸ 协议:MIT | 最新版本 v0.9.0(2026-07-08)