DeusData/codebase-memory-mcp
High-performance code intelligence MCP server. Indexes codebases into a persistent knowledge graph — average repo in milliseconds. 158 languages, sub-ms queries, 99% fewer tokens. Single static binary, zero dependencies.
codebase-memory-mcp – 面向 AI 編碼助手的快速本地程式碼智慧引擎
是什麼 – 一個原生、零執行時的可執行檔,使用 Tree-sitter 解析器為 158 種語言 建構持久的程式碼庫知識圖譜(函數、類別、呼叫鏈、HTTP 路由、基礎設施檔案等)。該圖譜可在毫秒級回應查詢,專為 AI 驅動的編碼助手(Claude Code、Codex、OpenCode 等)設計,使其無需將原始碼檔案傳送至遠端服務即可回答結構化問題。
為何重要 – 傳統基於 LLM 的程式碼工具逐個掃描檔案,速度慢且消耗大量 token。透過一次性索引程式碼庫並公開圖譜,此工具將 token 預算減少約 120 倍,工具呼叫開銷減少超過 2 倍,並能在不到 1 毫秒內回答「這個函數在哪裡被使用?」或「這個變更會產生什麼影響?」等複雜問題。
核心功能
| 功能 | 作用 |
|---|---|
| 閃電般快速索引 | 完整 Linux 核心(2800 萬行程式碼,7.5 萬個檔案)在約 3 分鐘內完成索引;典型程式碼庫在數秒內完成。 |
| 混合 LSP 類型解析 | 使用輕量級 C 實作,對 Python、TS/JS、PHP、C#、Go、C/C++、Java、Kotlin、Rust、Perl 等 12 種主要語言進行深度語意分析,模擬主流語言伺服器行為。 |
| 圖譜與分析 API | 支援函數、類別、匯入、呼叫邊、HTTP 路由、gRPC/GraphQL 服務、事件通道邊、未使用程式碼檢測、社群檢測(Louvain)、git 差異影響映射、ADR 管理等。 |
| 查詢語言 | • Cypher 風格:圖譜上的模式匹配 • 語意搜尋:使用內建 Nomic 程式碼嵌入(無需 API 金鑰) • BM25 全文搜尋:透過 SQLite FTS5 實作,支援 camelCase/snake_case 詞元化 • 結構化/正規表示式搜尋:對節點標籤進行搜尋 |
| 內建 3D UI | 啟動本地 Web UI(localhost:9749),可視化跨一個或多個程式碼庫的圖譜。 |
| 跨程式碼庫智慧 | 節點可跨多個索引程式碼庫連結,實現全團隊架構視圖。 |
| 零執行時,純本地 | 無需 Docker、無需語言執行時、無需外部 API 金鑰。所有處理均在開發者機器上完成。 |
| 代理整合 | 自動偵測並配置 43 種支援的編碼代理「表面」(如 Claude Code、Codex、OpenCode),透過向代理設定檔寫入所需 MCP 條目實現。 |
| 套件管理員分發 | 支援透過 npm、PyPI、Homebrew、Scoop、Winget、AUR 和 go install 安裝。 |
典型工作流程
- 安裝 – 一行指令(macOS/Linux 上為
curl … | bash,Windows 上為 PowerShell 指令碼)下載已驗證的二進位檔和小型安裝輔助工具。 - 索引 – 安裝後,工具自動偵測你的編碼代理;你向代理發出「索引此專案」命令。守護程序建構圖譜並儲存在
~/.cache/codebase-memory-mcp/下。 - 查詢 – 透過代理或 CLI 執行
search_graph、detect_changes或自訂 Cypher 查詢。代理現在可即時回答結構化問題。 - 可視化 – 執行
codebase-memory-mcp --ui=true --port=9749在瀏覽器中探索圖譜。 - 更新 / 卸載 – 同一安裝指令碼處理升級;
codebase-memory-mcp uninstall清理設定條目和可選索引。
適合誰使用
- 依賴基於 LLM 的編碼助手,希望獲得關於自己程式碼的確定性、低延遲回應的 開發者。
- 需要共享、版本控制的程式碼庫表示的 團隊(可將
.codebase-memory/graph.db.zst資產提交以避免重新索引)。 - 探索基於程式碼圖譜的提示或 LLM 工具呼叫策略的 研究人員。
限制與注意事項
- 純本地 – 無雲端服務;必須在每台需要圖譜的機器上執行二進位檔。
- 初始索引成本 – 首次完整索引可能記憶體密集(記憶體中 SQLite,LZ4 壓縮),但完成後會釋放記憶體。
- 誤報防毒軟體警告 – 某些掃描器(如 Microsoft Defender)會標記二進位檔;專案提供雜湊值和 VirusTotal 掃描以驗證完整性。
- 支援語言 – 雖然捆綁了 158 種語法,但深度語意類型解析(混合 LSP)僅限於列出的 12 種語言。
- 代理相容性 – 43 種列出的代理可開箱即用;其他工具可能需要手動設定 MCP 條目。
快速入門片段
# macOS / Linux
curl -fsSL https://raw.githubusercontent.com/DeusData/codebase-memory-mcp/main/install.sh | bash
# Windows (PowerShell)
Invoke-WebRequest -Uri https://raw.githubusercontent.com/DeusData/codebase-memory-mcp/main/install.ps1 -OutFile install.ps1
notepad install.ps1 # 可選檢查
Unblock-File .\install.ps1
.\install.ps1
安裝後,重新啟動你的編碼助手並發出「索引此專案」命令。
更多學習資源
- 研究論文 – Codebase-Memory: Tree-Sitter-Based Knowledge Graphs for LLM Code Exploration via MCP (arXiv:2603.27277)。
- 文件 – 倉儲的
README、SECURITY.md以及倉儲中的 UI 截圖提供了關於圖譜模式和守護程序協調的更詳細資訊。 - 發布版本 – 每個發布版本包含三個相同的二進位檔(未剝離、除錯剝離、剝離),均經過 VirusTotal 掃描並使用 SHA-256 雜湊簽名。
總結 – codebase-memory-mcp 提供一個自包含、高性能的程式碼圖譜引擎,使 AI 編碼助手能本地處理你的程式碼庫,大幅減少 token 使用量與延遲,同時將所有控制權掌握在你手中。
相關
- 專案
- 專案
- 專案
- 專案
- 專案