Octocode
Overview
Description from the maker (original English)
AI-powered code indexer with semantic search and knowledge graphs
PopNx MCP’s three pillars
These three are never merged into one score: opinions, measurements and popularity are different things.
- User voiceiNo reviews yetReviews open together with accounts in a later step
- Our basic checksi2 of 2 passedChecked from public information; code not scanned yet
- UsageiGrowing↓ 582/wk · ★ 523
What you can do with it
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
- Connection: Runs on your computer
- Transport: stdio
- Category: Search & AI memory
Install
Pick the AI app you use, then copy the settings.
Before you install
- Basic checks: 2 of 2 passed
- Runs on your computer with your user’s permissions (files, network, apps).
- The registry lists no key to fill in.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Download the maker’s .mcpb file
The link goes to the maker’s own file; we do not host or repackage it. Open the file and Claude Desktop installs it.
Run this in your terminal
claude mcp add octocode -- npx -y @muvon/octocode mcpOr copy the settings yourself
Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"octocode": {
"command": "npx",
"args": [
"-y",
"@muvon/octocode",
"mcp"
]
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Or copy the settings yourself
Paste into .vscode/mcp.json in your project
{
"servers": {
"octocode": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@muvon/octocode",
"mcp"
]
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.
Your choice stays on this device in a cookie; no account needed.
These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Which apps can use it
Based on how this server connects and on each app’s own docs, checked Nov 10, 2026.
Run on your computer in
ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatRaycast
Related guides
What it can do
Runs on your computer; the tool list appears in your AI app after you install it.
Basic checksi
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 11, 2026
- ✓ Pass
Maker matches the repo
The registry name was verified with the GitHub account muvon, which owns the repo
- ✓ Pass
Still maintained
Code last changed 3 days ago
- … Not checked yet
Has a licence
We have not read this repo from GitHub yet
- – Not applicable
Endpoint responds
This one runs on your computer; there is no internet endpoint
- – Not applicable
Sign-in with OAuth
Runs on your computer and uses local settings instead
- … Not checked yet
No hidden instructions in tool descriptions
Runs on your computer; we can only read tool lists from internet endpoints
Compared with others in Search & AI memoryi
- More stars than 99% of the other 5867 servers in this category
- Published to the registry more recently than 92% of the other 5867 servers in this category
- Basic checks equal to or better than 100% of the other 5867 servers in this category
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
Common questions
Is Octocode safe?
It passed 2 of 2 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
What keys or codes does it need?
The registry does not list a required key, though some servers ask you to sign in on first use.
Does it run on my computer or in the cloud?
It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).
Is it still maintained?
The GitHub repo last changed 3 days ago, and the latest version (0.29.2) reached the registry 3 days ago.
Which apps can use it?
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Node.js, MCPB on your computer.
What can I use instead?
In the same category: Ruflo, Context7, Metabase
Alternatives
Servers in the same category from other makers, sorted by stars.
Reading a card:↓ Downloads per weeki★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
README from the maker
Open the README
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
Octocode
Code search and dependency graphs for AI assistants.
Quick start · MCP integration · OctoFS · Documentation · Contributing · Website
Octocode is a Rust CLI and MCP server for exploring codebases. It combines semantic search, structural search, and a live graph of symbols and dependencies. Connect it to Claude Code, Codex, Cursor, Windsurf, or another MCP client, or search directly from your terminal.
- Find code by intent with hybrid vector and keyword search, plus configurable reranking.
- Locate definitions and usages with structural search over the current source.
- Trace relationships between files and symbols: imports, calls, inheritance, and implementations.
- Read signatures without loading entire files; add a language server for definitions, references, and hover information.
- Run locally with the default embedding and reranking models, or configure remote providers.
Quick start
1. Install
Use the installer on Linux or macOS, or in a Unix-compatible shell on Windows:
curl -fsSL https://raw.githubusercontent.com/Muvon/octocode/master/install.sh | sh
Alternatively, on macOS:
brew install muvon/tap/octocode
Other installation methods
Download a binary from GitHub Releases, or install the published crate:
cargo install octocode
Building from source requires Rust 1.95 or later and protoc. See the installation guide for platform requirements, build features, and manual installation.
Verify the installation:
octocode --version
2. Index and search
Run these commands in your project's Git repository:
cd /path/to/your/project
octocode index octocode search "authentication middleware"
The default configuration uses local FastEmbed models for embeddings and reranking. No API key is required; model files download on first use. For a directory without Git, use octocode index --no-git.
# Combine related queries
octocode search "auth" "middleware" "session"
Filter code results by language
octocode search "database connection pool" --language rust
Search documentation
octocode search "deployment configuration" --mode docs
3. Connect your AI assistant
Choose your client in MCP integration. Structural search, signatures, and the live dependency graph read the current source directly and work without an index. Semantic search uses the index created above.
MCP integration
Install Octocode where your client can find it on PATH, and replace /path/to/your/project with your project's absolute directory path.
Claude Code
claude mcp add --transport stdio octocode -- octocode mcp --path /path/to/your/project
claude mcp list
See the Claude Code MCP documentation for configuration scopes and connection details.
Codex CLI
codex mcp add octocode -- octocode mcp --path /path/to/your/project
codex mcp list
See the Codex MCP documentation for CLI and configuration-file options.
Claude Desktop, Cursor, and Windsurf
Add an Octocode entry to your client's MCP configuration:
{
"mcpServers": { "octocode": { "command": "octocode", "args": ["mcp", "--path", "/path/to/your/project"] } } }
Restart the client after saving. The MCP client setup guide covers configuration locations and other clients.
Octomind
Octomind is a companion AI agent runtime. Its developer:general agent includes Octocode and OctoFS capabilities. After installing Octomind, start it in your project:
cd /path/to/your/project
octomind run developer:general
The first run may install required tools and ask for model credentials. See the Octomind quick start for installation and model access.
Available tools
| Tool | Use it for | Requires an index |
|---|---|---|
semantic_search | Find code, documentation, and indexed history by meaning | Yes |
structural_search | Find definitions, usages, and AST patterns in current source | No |
view_signatures | Read function signatures, declarations, and imports | No |
graphrag | Explore live file and symbol relationships and dependency paths | No |
lsp_* | Definitions, references, hover information, symbols, and completion | No; requires a language server |
To enable LSP tools, install a language server and add --with-lsp to the server command, for example:
octocode mcp --path /path/to/your/project --with-lsp rust-analyzer
By default, the MCP server uses the existing semantic index without updating it. Rerun octocode index after changes, or run octocode watch separately in the project directory. In-process indexing is available through index.mcp_index = true.
See the MCP integration guide for tool parameters, HTTP transport, and serving multiple repositories, and the LSP guide for language server setup.
Use Octocode with OctoFS
OctoFS adds file reading and atomic editing tools to your assistant. Run both MCP servers against the same project directory.
Octocode's structural_search returns source lines as N:hh|content, with the same line IDs used by OctoFS view. An agent can use these IDs directly in OctoFS batch_edit, without reading the same lines again to obtain edit targets. Exact-name lookups include complete definitions up to 32 lines; larger results identify omitted ranges for a targeted read.
Each ID hashes the original line, including indentation. OctoFS checks IDs before applying edits and reports stale targets when the content no longer matches. Group known edits to a file into one atomic batch, then use the fresh IDs returned by the edit for follow-up changes. The N:hh| prefix is metadata, not part of the source code.
After installing OctoFS, add it alongside the Octocode server configured above. Choose your client:
Claude Code:
claude mcp add --transport stdio octofs -- octofs mcp --path /path/to/your/project
Codex CLI:
codex mcp add octofs -- octofs mcp --path /path/to/your/project
Use the same absolute project path for both servers. OctoFS is optional; Octocode's search and navigation tools work independently.
How it works
Current source → Language parsers → Live file and symbol graph → MCP tools
Indexed code → Embeddings + BM25 → Hybrid search + reranking → CLI / MCP
The live graph uses Tree-sitter to extract symbols and relationships from current source, without embeddings or an LLM. It remains available through MCP when [graphrag].enabled = false.
Enabling indexed GraphRAG adds persisted file-level enrichment, including semantic file discovery and optional LLM descriptions and architectural relationships. The octocode graphrag CLI uses this persisted layer:
octocode config --graphrag-enabled true
octocode index octocode graphrag overview
See the architecture guide for module boundaries and storage details.
Supported languages
| Language | Extensions |
|---|---|
| Rust | .rs |
| Python | .py |
| TypeScript / JavaScript | .ts, .tsx, .js, .jsx |
| Go | .go |
| PHP | .php |
| C / C++ | .c, .cpp, .cc, .cxx, .c++, .h, .hpp, .hxx, .cppm, .ixx, .mxx, .ccm, .cxxm |
| Ruby | .rb |
| Elixir | .ex, .exs |
| Java | .java |
| Swift | .swift |
| Svelte | .svelte |
| Lua | .lua |
| CSS | .css, .scss, .sass |
| JSON | .json |
| Bash | .sh, .bash |
| Markdown | .md, .markdown |
Retrieval benchmark
The repository includes ground truth, scoring scripts, and reproduction instructions. The published local matrix used 127 code-search queries, corpus commit b1771ba, Octocode 0.17.1, and fastembed:jinaai/jina-embeddings-v2-base-code, with reranking disabled for the variants below.
| Configuration | Hit@5 | Hit@10 | MRR | NDCG@10 | Recall@10 |
|---|---|---|---|---|---|
| Dense vector only | 0.598 | 0.717 | 0.485 | 0.528 | 0.671 |
| Hybrid, vector/keyword weights 0.7/0.3 | 0.598 | 0.717 | 0.485 | 0.528 | 0.671 |
| Hybrid, vector/keyword weights 0.3/0.7 | 0.732 | 0.835 | 0.572 | 0.620 | 0.807 |
These are historical results from June 21, 2026; they do not measure the current release or its default configuration. See the full variant matrix for settings and reranker comparisons.
Privacy and configuration
- Local models by default. Embedding and reranking run locally after model downloads. Remote embedding, reranking, and LLM providers are optional; when enabled, they receive the queries and source content needed for those features.
- Local storage. Indexes live outside your repository in Octocode's per-project data directory.
- File exclusions. Indexing respects
.gitignoreand.noindex. Configure exclusions for files you do not want indexed. - Client access. The default MCP transport is stdio. The model used by your AI client may receive source content returned by tools, even when Octocode uses local models.
- Provider credentials. API keys can be supplied through environment variables. See the API key guide before enabling remote providers.
The configuration guide explains model selection and indexing options. The embedded default template contains the current defaults.
Documentation
- Getting started — basic workflow
- Installation — binaries, source builds, and platform requirements
- MCP clients — client setup and configuration locations
- MCP integration — tools, transports, and multiple repositories
- LSP integration — language server tools
- Commands — CLI reference
- Configuration — models and customization
- API keys — remote provider setup
- Architecture — internals
- Changelog — release history
Contributing
Bug reports, documentation improvements, and code contributions are welcome. Read the contributing guide for development setup and the engineering standards before changing code.
Use [GitHub Issues](https