MCP Server for TypeScript Projects Replaces Claude Code's Grep Pattern with Indexed Symbol Lookups

A developer has created an MCP server specifically designed to improve Claude Code's performance on TypeScript projects by replacing its grep-and-guess pattern with indexed symbol lookups. The tool is free and open source.
The Problem with Current Agent Behavior
When using Claude Code and Cursor on TypeScript projects, a common pattern emerges: the agent searches across files, opens likely matches, reads significant amounts of code, realizes it's the wrong place, and tries again. The agent lacks structural awareness of the codebase and starts each session from scratch.
How the MCP Server Works
The server provides structured access to the codebase by maintaining a live SQLite index of the project that includes:
- Symbols
- Call sites
- Imports
- Class hierarchy
This allows the agent to query structure directly. Instead of searching for "handleRequest," the agent can go directly to the exact file and line for that symbol.
Performance Benchmarks
Tested on a 31-file TypeScript project with the same tasks performed with and without the index:
- Find one function: 1,350 tokens with grep vs. 500 tokens with index (63% fewer)
- Trace callers across 3 files: 2,850 tokens with grep vs. 900 tokens with index (68% fewer)
- Map inheritance across 15+ files: 4,800 tokens with grep vs. 1,000 tokens with index (79% fewer)
Grep performance degrades as the codebase grows, while indexed queries remain consistent.
Where the Savings Come From
The developer initially thought symbol lookup would be the primary benefit, but discovered three key areas where the index provides significant efficiency gains:
get_callersqueries replace the pattern where agents read 4-5 files trying to figure out who calls a function- Partial reads: knowing the exact line means reading 20 lines instead of an entire file (accounting for over half the savings)
trace_middlewaretells the agent what runs before a route handler, eliminating the need to read the router, each middleware file, and reconstruct the order
Limitations
The tool struggles with:
- Dynamic patterns (computed method names, etc.)
- Dependency injection setups
- Anything outside your own codebase
While not perfect, the tool significantly reduces the trial-and-error loop in agent-assisted development.
📖 Read the full source: r/ClaudeAI
👀 See Also

sourcecode: Open-Source CLI to Compress Large Java/Spring Monorepos for Claude
sourcecode CLI reduces a ~4k-file Java/Spring monorepo from ~3M tokens to 1.7k tokens (compact mode). Currently focuses on context compression, git hotspot detection, and symbol lookup.

OpenClaw Kubernetes Operator with Embedded Ollama Support
A community member has created an OpenClaw Kubernetes operator that includes embedded Ollama support, allowing AI agents to run with local models in the same namespace. The setup includes installation commands, configuration details for both local and cloud Ollama models, and dashboard access instructions.

Voxray-AI: Production Go Backend for Real-Time Voice Agent Pipelines
Voxray-AI is a Go backend that chains Whisper → any LLM → TTS into a real-time voice agent pipeline with WebSocket and WebRTC support. It's built for production-grade servers and high-concurrency voice workloads with configurable providers for STT, LLM, and TTS layers.

OpenClaw as Infrastructure-as-Code Interface for Home Lab Management
OpenClaw transforms from AI gadget to primary computer interface for home lab management, executing tasks like configuring Traefik containers, creating Dashy configurations, and setting up Tailscale access with direct machine access.