jCodeMunch MCP:按符号而非文件检索源码的 MCP 服务器
jCodeMunch MCP 是一个基于 tree-sitter AST 解析、以符号为单位的源码检索 MCP 服务器,可接入 Claude Code、Cursor 等兼容客户端。作者公布的基准显示,单次查找比 grep-and-read 方式少用 96.2% token(15 次查找合计 26.5 倍),另有一项自测 A/B 结果;这些数据均由项目方自测,适用条件受具体提交版本限制。
它做什么
jCodeMunch MCP 是一个 MCP 服务器,核心思路是让智能体按符号(函数、类、方法、常量等)检索源码,而不是打开整个文件。它用 tree-sitter 解析源码,在本地索引中保存符号元数据(签名、种类、限定名、摘要、字节偏移)和原始文件内容,需要时按需取回精确实现。
页面称支持 70 多种语言,兼容 Claude Code、Cursor、VS Code、Codex CLI、Windsurf、Continue 等 MCP 客户端,采用 local-first 方式,索引存放在 ~/.code-index/。
项目方自测的 token 基准
作者的基准覆盖 express、fastapi、gin 三个仓库的固定提交,每仓 5 次查询,用 tiktoken cl100k_base 计数;“一次查找”指一次 search_symbols 加对前 3 个命中执行 get_symbol_source,对照组是按匹配数排序后整读前 3 个文件的 grep-and-read。
- 合计 15 次查找:664,975 vs 25,132 token,即 96.2% 减少、26.5 倍;
- 单仓对比为 15.9x、33.4x、21.6x,作者也说明没有单一倍数能代表所有查询;
- 响应采用 MUNCH 紧凑编码后,字节数中位数再减少 45.5%。
这些数字出自项目方自测,依赖固定提交与特定流程,不能外推为普遍收益。READM 另有 50 次迭代的生产代码库 A/B 测试(成功��� 80% vs 72%,超时率 32% vs 40%),同样为作者自报。
能力范围
除符号检索外,页面列出结构查询类工具,如 find_importers、get_blast_radius、get_call_hierarchy、find_dead_code、search_ast 等;还有编辑前安全检查(check_edit_safe、check_delete_safe)与 plan_refactoring。文档特别区分 check_references(名称被使用的位置)与 find_references(仅沿导入图回答谁导入了它)。
安全类工具会返回终止性判定:stop_rule.terminal 为 true 表示再调用不会改变结论;但作者强调它表示“最终”而非“安全”。corpus_inadequate 与 dynamic_import_boundary 不属终止判定。索引无法覆盖时,check_rename_safe 返回 safe: null,get_pr_risk_profile 返回 risk_score: null,作者建议 CI 在 null 时失败。
适用与不适用
作者指出,它对单函数或单方法的定向编辑收益最大;若编辑必须依赖整个文件(大规模重构、文件级状态调整),则没有优势;用 grep 定位文件这一步收益与原生工具相当。
隐私与安装说明
索引保存在本地;默认只上报匿名节省计数(随机 ID、节省 token 数),不含代码、路径或查询,可通过配置或环境变量关闭。安装推荐 uv tool install jcodemunch-mcp 后运行 jcodemunch-mcp init,init 会检测客户端并写入配置。页面提及个人免费、商业使用需授权,具体条款以原文为准。
> 说明:原始 README 内容被截断,基准局限、完整工具清单与定价细节未完整获取,本文未展开。
来源与核对说明
- jgravelle/jcodemunch-mcp ↗https://github.com/jgravelle/jcodemunch-mcp
本文经 AI 整理及独立自动校对,未做运行验证;自动校对仍可能遗漏问题,请以原始资料为准。
这篇内容对你有帮助吗?
点赞人数由服务器记录,收藏保存在当前浏览器。
继续阅读
Stop That Shit:为AI Agent设定任务边界的Guard工具 →
Pro Workflow:为 Claude Code 等编码代理提供基于 SQLite 的记忆与知识库工具 →