A Symbol-Graph Tool for Coding Agents: When It Saves 74% and When It Saves Nothing
Coding agents spend most of their discovery budget on grep-and-read loops: find a symbol, grep for callers, read the files, grep again. I built a semantic pager - a daemon that indexes a repository's AST and answers "who calls X, what does X depend on" in one call under 900 tokens - and exposed it to Claude Code as an MCP tool. On a sterile mirror of a 30-file research codebase it cut the median cost of a discovery query 74% at identical accuracy (n=10 per arm, $0.141 -> $0.037, 20/20 correct), and the model adopted it unprompted in 10 of 10 runs, replicating a result from eleven days earlier (p=0.95 on the treatment arm). Across three repositories the tool's cost was nearly constant ($0.037-$0.057) while the control's ranged from $0.053 to $0.141; the saving is the baseline's search cost, and the ratio tracks it monotonically from 0.26 to 1.07. Three experiments bound the claim. A weaker model (Haiku) adopts the tool but re-reads files in 8 of 10 runs, halving the saving to 50%. On an edit task the tool is never invoked (0/10), and injecting its output into the prompt halves greps without moving cost. On a small, cleanly structured library the baseline answers in one grep and the pager saves nothing (ratio 1.07) despite returning an answer more precise than the regex ground truth. Query wording that matches the tool's own vocabulary makes post-tool verification lighter, though it never removes it. I also document a confound: loaded behind Claude Code's deferred tool search the pager was adopted 0/5; loaded directly, 5/5. Benchmarks of MCP tools that do not control for this will report discoverability as preference.
Authors
- Elijah Clark
Publication Details
- Journal
- Zenodo (CERN European Organization for Nuclear Research)
- Published
- 2026-10-04
- DOI
- https://doi.org/10.5281/zenodo.23128518
- Primary Topic
- Scientific Computing and Data Management
- Type
- preprint