Labsco
MCP SERVER

A pre-built map of your codebase that lives in the repository — symbols, callers, callees and prose search, all from a committed index.

Code Intelligence & Repository IndexingVerified
Summary
The index is a file you commit, so a fresh clone — or a CI runner, or a dependency you installed — already has the map.

That is what separates it from a local cache: .codeindex is plain JSONL in the repository, and a library author can ship it so consumers get navigation of the API with no indexing step. Day to day the payoff is fewer round trips — one query returns the symbol, its file, line range, signature and parent, instead of a grep, a file read and another grep.

What it is

A Rust code indexer with an MCP front end. It parses source with tree-sitter into a .codeindex directory of JSONL files you commit alongside the code, so a fresh clone already knows the codebase.

What you get
  • search across symbols, files and prose with BM25 ranking and a real query syntax — implicit AND, | or OR for either, * for prefixes, quotes for exact phrases, NOT to exclude — scoped by kind, path or project
  • Prose as its own scope: comments, docstrings and string literals, so you can find a TODO or the exact error message a user reported without matching code that merely mentions it
  • explore for a project's shape — metadata, subprojects and files grouped by directory, capped at 200 entries unless you raise it
  • get_file_symbols for everything declared in a file, in line order, returned as code snippets
  • get_children for the members of a class or module
  • get_callers and get_callees to walk the call graph in either direction, sorted by file and line, with the context lines you ask for
  • flush_index to persist pending index changes before a git operation
Requirements

Nothing to authorize and no runtime dependencies — it ships as a single binary through npx codeix, uvx codeix, cargo install codeix or brew install codeix. codeix build parses the source and writes the .codeindex directory; running codeix starts the stdio server and watches for changes, codeix serve --no-watch turns the watcher off, and -r points it at another directory. It walks downward and treats every directory containing .git as its own project, so monorepos, sibling repos and submodules need no configuration. Languages: Python, Rust, JavaScript, TypeScript, Go, Java, C, C++, Ruby, C# and Markdown, with embedded scripts extracted from HTML, Vue, Svelte and Astro files.

Setup effort

One command — npx -y codeix