jcodemunch-mcp: 一個透過 AST 解析實現精確 GitHub 源碼檢索的高 Token 利用率 MCP 伺服器
jcodemunch-mcp: 一個透過 AST 解析實現精確 GitHub 源碼檢索的高 Token 利用率 MCP 伺服器
它解決了什麼問題
AI agent 通常透過閱讀整個檔案來探索程式碼庫,這會浪費 Token 並讓無關的程式碼污染上下文視窗。jCodeMunch 提供了一種結構化的符號級別檢索系統,讓 agent 可以僅獲取其所需的特定函數、類別或方法,在許多工作流程中可減少 95% 或更多的 Token 使用量。
運作原理
該專案使用 tree-sitter AST 解析對程式碼庫進行一次索引,以儲存結構化的符號元數據和位元組偏移量。這讓 agent 可以進行精確檢索,而非暴力讀取檔案。它還具有一種稱為 "MUNCH" 的緊湊傳輸格式,透過對路徑前綴進行內化處理並將列表打包成類似 CSV 的行,進一步減少了傳送給模型的位元組數。
目標對象
使用 MCP 相容 AI 客戶端(例如 Claude Code, Cursor, VS Code, Windsurf, 和 Continue)的開發者,希望降低 AI Token 成本並提高其 agent 程式碼探索的可靠性。
重點功能
- 符號級別檢索:無需閱讀完整檔案即可獲取函數、類別和常數的精確實作。
- 任務編排:如
assemble_task_context和plan_turn等工具,讓 agent 可以在單次呼叫中收集任務所需的所有上下文,而非鏈接多次請求。 - 結構化分析:提供標準工具無法提供的進階查詢,例如爆炸半徑分析(blast-radius analysis)、死碼檢測(dead code detection)和類別層級遍歷。
- Token 利用率:結合了基於 AST 的檢索與緊湊的輸出格式,以顯著降低 Token 消耗和 CO2 排放。
- 廣泛的語言支持:使用 tree-sitter 以支援超過 70 種語言。
Sources
- undefinedjgravelle/jcodemunch-mcp