Vesalius MCP
An MCP server that builds a code map on your Mac: Claude Code gets answers on calls and dependencies with file and line refs.
- 82 ★ on the repository
- Last commit
- MIT
Extended access
Why this level
- The server reads repository sources and keeps an index on your Mac, and `setup` adds a tool permission to `~/.claude/settings.json`.
Install
- Works in
Manual install
brew install haplollc/tap/vesaliusThe first install command from the README. Then `vesalius setup` registers the server with Claude Code and Codex.
Access and checks
How we reviewExtended accessThe tool runs code or makes network calls and only reads external data.
- The server reads repository sources and keeps an index on your Mac, and `setup` adds a tool permission to `~/.claude/settings.json`.
This is third-party code. Review the repository files before installing.
What it does
Vesalius indexes a whole repository on your Mac and remembers how things connect: which file uses which, who calls what, where a function lives. Claude Code asks the map through the `vesalius mcp` MCP server with five read-only tools and gets an answer with file and line references, usually in one call instead of a chain of searches. `vesalius setup` registers the server with Claude Code for every project, adds `mcp__vesalius__*` to `permissions.allow` in `~/.claude/settings.json` and indexes the current repository. If `codex` is installed it is registered too. The same data is available to a person in the Mac app and the VS Code extension. Code stays on the machine. `vesalius setup --undo` reverses every change.
Who it is for. Mac developers on Apple silicon who use Claude Code on large repositories and want to spend fewer tokens on search.
Good fit when
- You need to know who calls `SessionStore.save` and what to change when renaming it.
- A new developer looks for where in-app purchases are handled in the project.
- Before a refactoring you check for circular imports under `src/`.
- A team shares one server registration through `.mcp.json` in the repository.
Not a fit when
- You need an Intel Mac, Linux or Windows: a Mac with Apple silicon and macOS 15 or newer is required.
- The agent must see live debugger state or run code in an IDE: the map is built from sources.
- You need a language that is not parsed: check the language list beforehand.
Example request
Who uses Theme in this project and what would I have to change to rename it? Answer through Vesalius and show files with line numbers.MCP
- Transport
- stdio
- Authentication
- not required
Environment variables
VESALIUS_MCP_PROFILE- Tool profile; the `lean` value loads tools on demand.
Limitations
A Mac with Apple silicon and macOS 15 or newer and Claude Code or another MCP client are required. Installing with `brew install haplollc/tap/vesalius` touches `~/.claude/settings.json`: a permission for the read-only tools is added, and you can skip it with `--no-permissions`. Building from source needs Xcode 26 and takes several minutes because of SwiftSyntax. The measurements in the README were made by the authors on 20 questions and show token savings of about half: check the result on your own repository.
How to disable. Run `vesalius setup --undo`: it reverses the registration and the permission. Then remove the program with `brew uninstall vesalius` and the Mac app if you like.
FAQ
How do I install Vesalius?
Run `brew install haplollc/tap/vesalius`, then `vesalius setup`. Building from source: `scripts/install-cli.sh` from a clone of the repository.
What does setup change?
It registers `vesalius mcp` with Claude Code and Codex, adds `mcp__vesalius__*` to `permissions.allow` and indexes the repository. It does not write to the repository, CLAUDE.md or hooks.
How do I register the server by hand?
Run `claude mcp add --scope user vesalius -- vesalius mcp`. For a team use the `project` scope so the entry lands in `.mcp.json`.
Can I skip the automatic permission?
Yes, run `vesalius setup --no-permissions`, and the `--dry-run` flag shows the plan first.
How do I check the connection?
`vesalius doctor` checks the link at any time, and `vesalius stats` shows what Claude asked Vesalius.
Discussion
No questions or reviews yet.
Related
MCP serversA VS Code extension that runs a local MCP server so an agent can search symbols, edit files and run commands in the terminal
An MCP server that gives an agent search over a large Claude Code guide, official docs, releases and ready-made templates
An MCP bridge to VS Code that gives agents language-server diagnostics and symbol references instead of slow tsc runs.
A semantic code search MCP server: indexes the project into a vector database and gives the agent only relevant snippets
Persistent memory for Claude Code on your own database: capture of decisions and context plus a code graph, injected into every prompt
Codex MCP Tool (cexll)
Codex MCP Tool
An MCP server that sends tasks to Codex CLI from Claude Code and Cursor: code review via @ refs, a sandbox, patch edits, ideas
Comparison with similar tools
Cards that share the main search query, and how they differ.
| Tool | Official | Authentication | Repository stars | Main difference |
|---|---|---|---|---|
| Vesalius (this card) | no | not required | 82 | |
| Serena | no | not required | 31,335 | an MCP server giving an agent symbol search and edits through LSP or JetBrains; Vesalius builds a local relation index on a Mac and returns read-only answers |
| CodeGraph | no | not required | 77,481 | a local code graph for agents with MCP; Vesalius runs on Mac and adds an app and a VS Code extension |
README in short
The README describes the quick start in detail, what setup changes, building from source, manual registration for Claude Code, Codex and Cursor, tool profiles and benchmark results.