GrebMCP Case Study
GrebMCP Case Study
GrebMCP
GrebMCP
GrebMCP is a code-search MCP server that gives coding agents the right context instead of more context. It answers retrieval queries over a codebase from a pipeline built on BM42 sparse embeddings and Reciprocal Rank Fusion, so an agent reads a handful of correct files rather than crawling the repo to find them.
GrebMCP is a code-search MCP server that gives coding agents the right context instead of more context. It answers retrieval queries over a codebase from a pipeline built on BM42 sparse embeddings and Reciprocal Rank Fusion, so an agent reads a handful of correct files rather than crawling the repo to find them.

2025
MCP Infrastructure
TypeScript · Python · Model Context Protocol · Vector search · BM42 sparse embeddings · Reciprocal Rank Fusion
Live at grebmcp.com, at 300+ users with 50+ active, handling around 500K tokens a day with zero marketing spend.
Mission
Mission
Coding agents fail on context, not reasoning. I kept watching them burn a whole window grepping around a codebase before writing a single line, so I set out to make retrieval good enough that the agent finds the right file first and spends its budget on the actual work.
Coding agents fail on context, not reasoning. I kept watching them burn a whole window grepping around a codebase before writing a single line, so I set out to make retrieval good enough that the agent finds the right file first and spends its budget on the actual work.

Challenge
Challenge
Retrieval quality and token budget pull against each other. Dense embeddings alone miss exact identifiers, keyword search alone misses intent, and returning more candidates to stay safe is exactly what blows the context window. I needed high recall on real codebases while shrinking what actually reaches the model.
Retrieval quality and token budget pull against each other. Dense embeddings alone miss exact identifiers, keyword search alone misses intent, and returning more candidates to stay safe is exactly what blows the context window. I needed high recall on real codebases while shrinking what actually reaches the model.
Solution
Solution
I built a retrieval pipeline that combines BM42 sparse embeddings with Reciprocal Rank Fusion, so lexical precision on identifiers and semantic recall on intent merge into one ranking instead of competing. The server runs TypeScript and Python over MCP and returns a tight ranked set, never a raw file dump.
I built a retrieval pipeline that combines BM42 sparse embeddings with Reciprocal Rank Fusion, so lexical precision on identifiers and semantic recall on intent merge into one ranking instead of competing. The server runs TypeScript and Python over MCP and returns a tight ranked set, never a raw file dump.


Result
Result
GrebMCP has grown to 300+ users, 50+ of them active, processing around 500K tokens a day with zero marketing spend behind any of it. The agents pointed at it run around 30% faster on a smaller token budget.
GrebMCP has grown to 300+ users, 50+ of them active, processing around 500K tokens a day with zero marketing spend behind any of it. The agents pointed at it run around 30% faster on a smaller token budget.
