Skip to main content
MCP server CX Codex

vex — Claude Code MCP server: code search, what it does, install

Local code search for coding agents: symbol lookup, callers, AST patterns and semantic matches. Useful when an agent gets lost in a large repo.

Open on GitHub

What vex does

vex indexes a repository once and then answers code questions in milliseconds. vex check finds an exact name, vex show returns just the symbol body, and vex usages or vex callers reveal who references and who invokes a function. There is semantic vex search, AST matching through vex pattern, and vex bundle that packs a symbol body with its callers into a single response.

The index combines three channels: an FST of names, BM25 over body text and a vector search for meaning, fused into one ranked list. The call graph is persisted, so caller and callee lookups skip a fresh tree-sitter scan. Tree-sitter covers 20 languages; refactor-grade --strict references work for Rust, TypeScript, Python, C#, C++, Go, Java and Kotlin.

It is not an LSP replacement. Go-to-definition into third-party packages, renames and type checks stay with your language server. Decorator routing, string-resolved factories and reflection are invisible to vex, so vex grep remains the escape hatch there. Outside function bodies the call graph is patchy, and on Python or FastAPI codebases read docs/LIMITATIONS.md first.

What it helps with

  • locate a class definition without opening the whole file
  • list every caller and implementation of a function
  • find a symbol by meaning when the name is forgotten
  • match an AST pattern such as fn $NAME($$$) -> Result
  • pull a symbol body and its callers in one request

Example prompts for the agent

  • Use vex to check whether TelemetryProcessor exists and show me its class body.
  • List everyone who calls process_event with vex, then show all implementations of BaseService.
  • Search the vex index for timeout retry handling; afterwards find symbols semantically close to PaymentService.

How to install vex

Install

The MCP registry has no launch command for it: see the repository README

Step by step, with commands for each platform: How to add an MCP server to Claude Code, Codex, Cursor, VS Code, Gemini CLI and more

Questions about vex

How do I install vex in Claude Code?

There is no install command for Claude: build the binary from the tenatarika/vex repository and register it as a local MCP server in the Claude configuration.

What does vex do?

It indexes your codebase and answers symbol questions: where it is defined, who calls it, which implementations exist, what is semantically nearby. Text grep and AST pattern search are included.

Do I need to build an index first?

Yes. Search reads a pre-built index: vex index costs a fraction of a second on a typical project, and queries then run in milliseconds. Without the index the search commands have nothing to query.

Similar MCP servers

All MCP servers for Agent setup: memory, context, orchestration →

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor