It's so weird that codex/claude code will manually read through sometimes dozens of files in a project because they have no easy way to ask the editor to "Find Usages".
Even though efficient use of CLI tools might make the token burn not too bad, the models will still need to spent extra effort thinking about references in comments, readmes, and method overloading.
We have that in Scala with the MCP tools metals provides but convincing Claude to actually use the tools has been really painful.
https://scalameta.org/metals/blog/2025/05/13/strontium/#mcp-...
Which is why I wrote a code extractor MCP which uses Tree-sitter -- surely something that directly connects MCP with LSP would be better but the one bridge layer I found for that seemed unmaintained. I don't love my implementation which is why I'm not linking to it.
both opencode and charm's crush support LSP's and MCP's as configs
Also, the business models are incentivized towards efficient token usage.
Really? Github Copilot Agent can search. Interesting.