Scubiee MCP

Local code index for agents: the MCP tool map searches by meaning and structure, and code never leaves your machine

  • 148 ★ on the repository
  • Last commit
  • Apache-2.0
MCP server

Minimal access

Why this level

  • A background daemon watches the repository and keeps a code index on disk
  • Setup downloads an embedding model from an external source
All reasons and checks

usmansayed/scubiee

Install

Manual install

uv tool install scubiee

Package install from the README, then `scubiee setup` and `scubiee connect --claude-code` or `--all` to pick clients.

Access and checks

How we review

Minimal accessThe tool runs nothing and makes no network calls.

  • A background daemon watches the repository and keeps a code index on disk
  • Setup downloads an embedding model from an external source

This is third-party code. Review the repository files before installing.

What it does

Scubiee builds an index of your repository on your own machine and serves it to an agent through an MCP server. The single `map` tool has two modes: `find` returns ranked places in the code and `focus` shows a symbol with its surroundings. The same search is available in the terminal as `scubiee search`. Search combines a code graph (calls, imports, definitions), lexical BM25 and dense embeddings in FAISS. Parsing uses Tree-sitter for Python, JavaScript, TypeScript, Go, Rust, Java, C, C++, C#, Ruby and JSON. A background daemon compares a Merkle tree and re-indexes only what changed. The `scubiee connect` command configures MCP in Cursor, Claude Code, Codex, Copilot, Kiro, Windsurf, Cline, Roo Code, Continue, Zed, OpenCode, Amp and other clients.

Who it is for. Developers of large repositories where the agent burns tokens on blind grep, and teams that cannot send code to external services.

Good fit when

  • The agent spends a long time locating the right spot in a big repository and reads extra files
  • Code cannot go to a cloud index, so search must be local
  • One index should serve several clients at once: Cursor, Claude Code and Codex
  • You need search by meaning beyond exact string match

Not a fit when

  • The repository is small and plain grep is enough for the agent
  • The project language is outside the Tree-sitter list: PHP, Kotlin and Swift are not among those named
  • The machine is short on disk or lacks Python 3.11, and a 270 MB model download is not an option

Example request

Find where a repeated payment submission is handled in this project and show the function with its callers

MCP

Transport
stdio
Authentication
not required

Limitations

Python 3.11 or newer is required, and the authors recommend installing with `uv`. Setup downloads a model of about 270 MB, which is the only network step. Acceleration is picked automatically: CUDA, DirectML, Apple MLX or CPU. A background daemon runs continuously and keeps the index on disk. The last commit is dated October 25, 2026, and the tree holds many service backups of settings. The index is stored on disk next to the project, so large repositories need free space and the first indexing takes time. Search quality depends on how the agent phrases its query to the tool.

How to disable. Remove the scubiee entry from the agent MCP settings (or use the client disconnect command from the docs), stop the daemon and delete the package with `uv tool uninstall scubiee`.

FAQ

Does code leave the repository?

No, parsing and embeddings run locally. The only network operation during setup is downloading the model, about 270 MB.

Which clients can scubiee connect?

The `scubiee connect` command sets up Cursor, Claude Code, Codex, Copilot, Kiro, Windsurf, Cline, Roo Code, Continue, Zed, OpenCode, Amp, Devin Desktop and Pi. The `--all` flag connects every client it finds.

What does the map tool do?

The `find` mode returns a ranked list of places in the code, and the `focus` mode shows a chosen symbol with its context.

How does the index stay fresh?

A background daemon compares a Merkle tree after edits and pulls and re-indexes only changed files.

Which languages does Scubiee parse?

Python, JavaScript, TypeScript, Go, Rust, Java, C, C++, C#, Ruby and JSON through Tree-sitter.

Discussion

No questions or reviews yet.

A local codebase index for agents: hybrid search, dependency graphs and change impact analysis

MCP serverExtended access3.4KRepository stars

An MCP server that indexes a local repository with tree-sitter and gives the agent code search, file lookup and a structure summary of a file

MCP serverExtended access1KRepository stars

An MCP server that indexes code with tree-sitter and returns individual functions and classes to the agent instead of whole files

MCP serverExtended access2.8KRepository stars

codesearch searches code across several repositories with hybrid retrieval and runs fully offline, without a GPU or Docker.

MCP serverMinimal access103Repository stars
Official

A local MCP server builds a SQLite and tree-sitter code index so an agent finds symbols, calls and meaning in one query

MCP serverExtended access59Repository stars
Official

Fast semantic code search for agents: returns the exact snippets instead of reading whole files and spends far fewer tokens

MCP serverExtended access6.4KRepository stars

Comparison with similar tools

Cards that share the main search query, and how they differ.

ToolOfficialAuthenticationRepository starsMain difference
Scubiee (this card)nonot required148
Claude ContextyesAPI key12,690a fully local index with no cloud database
Code Context Enginenonot required457a code graph, BM25 and FAISS behind one `map` tool with find and focus modes

README in short

The README presents Scubiee as a local code-context engine for AI agents. It starts with its promises: locality, an MCP server and live sync. It continues with a feature list, a three-step quick start, client setup and links to the docs.

README badge

Report a problem