Codeix MCP server
Ermöglicht KI-Agenten eine schnelle semantische Code-Suche, um Symbole, Referenzen und Aufrufer über Codebases hinweg mithilfe eines portablen Index-Formats zu finden.
Auch bekannt als montanetech/codeix
- Stars
- 9
- Tools
- 7
- Downloads, 30 Tage
- 69
- Neueste Version
- 0.5.0
- Letzter Commit
- 21. Feb. 2026
- Lizenz
- Apache-2.0
Was ist Codeix MCP?
Codeix ist ein MCP server. Ermöglicht KI-Agenten eine schnelle semantische Code-Suche, um Symbole, Referenzen und Aufrufer über Codebases hinweg mithilfe eines portablen Index-Formats zu finden. Er stellt 7 Tools bereit, etwa explore, search, get_file_symbols.
Zusammenfassung generiert aus dem README des Projekts
Über Codeix MCP server
Codeix ermöglicht es KI-Coding-Agenten, spezifische Funktionen oder Klassen in großen Codebases zu finden. Anstatt einen Agenten Token-intensiv durch das Greppen von rohem Text zu zwingen, stellt dieser MCP server eine vorgefertigte Map deines Projekts im portablen .codeindex Format bereit. Dies erlaubt es Agenten, Symbole, Signaturen und Parent-Beziehungen über mehrere Repositories oder Monorepos hinweg sofort zu lokalisieren.
Entwickler nutzen dieses Tool lokal, indem sie den Befehl codeix ausführen, um einen Index zu erstellen, und diesen dann via MCP bereitstellen. Es sind keine API-Keys oder Netzwerkzugriffe nötig, was es ideal für Air-Gapped-Umgebungen macht. Der Server nutzt Rust und tree-sitter, um strukturierte Daten inklusive Symbol-Typen und Zeilenbereichen zu erstellen. Da der Index aus einem Satz von JSONL-Dateien besteht, kann er in Git committet werden. So können Teammitglieder und CI-Runner denselben vorgefertigten Index nutzen, ohne den Quellcode erneut parsen zu müssen.
Durch sieben spezifische Tools wie get_callers und search können Agenten komplexe Dependency-Trees navigieren. Der Server unterstützt sogar die Suche in Fließtext, um gezielt Docstrings und Kommentare zu erfassen. So stellt er sicher, dass ein Agent ein TODO oder eine Fehlermeldung findet, ohne von passenden Codemustern abgelenkt zu werden.
Was du damit machen kannst
- 1Funktionsdefinitionen und Signaturen lokalisierenEin KI-Agent kann den exakten Zeilenbereich und die Signatur einer spezifischen Funktion finden, um zu verstehen, wie sie aufgerufen werden muss.
- 2Code-Dependencies und Referenzen nachverfolgenEin Entwickler kann einen Agenten bitten, jede Stelle in einer Codebase zu identifizieren, die eine bestimmte Methode aufruft.
- 3Dokumentation und Kommentare durchsuchenEin Agent kann gezielt nach Text innerhalb von Docstrings oder Kommentaren suchen, um Implementierungshinweise oder TODOs zu finden.
- 4Monorepos und Dependencies navigierenEin Agent kann über verschiedene Packages in einem Monorepo hinweg abfragen oder sogar durch die APIs installierter Dependencies navigieren.
Geschrieben aus dem README des Projekts. Jeder Use Case wurde gegen ein Zitat daraus geprüft.
So installierst du Codeix MCP
Formate geprüft am 10. Nov. 2026Zu Cursor hinzufügenZu Goose hinzufügenCodeix MCP in Claude Code installieren
$ claude mcp add codeix -- npx -y codeixCodeix MCP in Cursor installieren
~/.cursor/mcp.json
{
"mcpServers": {
"codeix": {
"command": "npx",
"args": [
"-y",
"codeix"
]
}
}
}Codeix MCP in VS Code installieren
.vscode/mcp.json
{
"servers": {
"codeix": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"codeix"
]
}
}
}Codeix MCP in VS Code CLI installieren
$ code --add-mcp '{"name":"codeix","type":"stdio","command":"npx","args":["-y","codeix"]}'Codeix MCP in Claude Desktop installieren
claude_desktop_config.json
{
"mcpServers": {
"codeix": {
"command": "npx",
"args": [
"-y",
"codeix"
]
}
}
}Codeix MCP in Codex installieren
$ codex mcp add codeix -- npx -y codeixCodeix MCP in Codex config.toml installieren
~/.codex/config.toml
[mcp_servers.codeix] command = "npx" args = ["-y", "codeix"]
Codeix MCP in Gemini CLI installieren
$ gemini mcp add -s user codeix npx -- -y codeixCodeix MCP in Gemini settings.json installieren
~/.gemini/settings.json
{
"mcpServers": {
"codeix": {
"command": "npx",
"args": [
"-y",
"codeix"
]
}
}
}Codeix MCP tools 7
Erkannt aus dem READMEexploresearchget_file_symbolsget_childrenget_callersget_calleesflush_index
| explore | — | |
| search | — | |
| get_file_symbols | — | |
| get_children | — | |
| get_callers | — | |
| get_callees | — | |
| flush_index | — |
Automatisierte Checks
Geluften am 14. Nov. 2026Vollständiger Bericht →Noch nicht verifiziert. Ein Server benötigt einen Score von 80, keine kritischen Befunde und genug Daten für unsere Prüfung. Wie die Checks funktionieren · Was du für mehr Punkte verbessern kannst
- Source Repository verknüpft und erreichbarmontanetech/codeix is public and reachablegithub.com/montanetech/codeix ↗Bestanden
- Paket nennt dieses Repository als Quellecodeix, codeix name montanetech/codeix as sourcenpmjs.com/package/codeix ↗Bestanden
- Build-Provenienz (Sigstore-Attestierung)Sigstore attestation for codeix, codeixnpmjs.com/package/codeix/v/0.5.0#provenance ↗Bestanden
- Open Source Lizenz (OSI)Apache-2.0spdx.org/licenses/Apache-2.0.html ↗Bestanden
- Commit oder Release im letzten JahrLast commit or release 2026-02-21github.com/montanetech/codeix ↗Bestanden
- OpenSSF ScorecardNicht geprüft
- Package-Name ähnelt keinem populären Packagecodeix looks like @claude-flow/codexBefund
- Keine kritischen Advisories im Paket oder seinen Abhängigkeiten1 resolved dependencies checked; no critical advisoryosv.dev ↗Bestanden
- Keine versteckten Anweisungen an das Modell7 tool descriptions and the README read; no override phrases, credential paths or hidden charactersBestanden
- Destruktive Tools sind markiertNo tool named like delete, drop or execBestanden
- Remote-Endpoint beantwortet den MCP-HandshakeNicht geprüft
README
Auf GitHub ansehencodeix
codeix.dev · Fast semantic code search for AI agents — find symbols, references, and callers across any codebase.
codeix # start MCP server, watch for changes
codeix build # parse source files, write .codeindex
codeix -r ~/project build # build from a specific directory
Why
AI coding agents spend most of their token budget finding code before they can work on it. They grep, read files, grep again, backtrack. On a large codebase the agent might burn thousands of tokens just locating the right function — or worse, miss it entirely and hallucinate.
Codeix gives the agent a pre-built map of your codebase. One structured query returns the symbol name, file, line range, signature, and parent — no scanning, no guessing.
What existing tools get wrong
| Problem | What happens today |
|---|---|
| No structure | grep finds text matches, not symbols. The agent can't distinguish a function definition from a comment mentioning it. |
| Slow re-parsing | Python-based indexers re-parse everything on startup. On large codebases, you wait. |
| Not shareable | Indexes are local caches — ephemeral, per-machine. A new developer or CI runner starts from scratch. |
| No composition | Monorepo with 10 packages? Dependencies with useful APIs? No way to query across boundaries. |
| Prose is invisible | TODOs, docstrings, error messages — searchable by grep but not selectively. You can't search only comments without also matching code. |
What codeix does differently
- Committed to git — the index is a
.codeindexdirectory you commit with your code. Clone the repo, the index is already there. No re-indexing. - Shareable — library authors can ship
.codeindexin their npm/PyPI/crates.io package. Consumers get instant navigation of dependencies. - Composable — the MCP server auto-discovers dependency indexes and mounts them. Query your code and your dependencies in one place.
- Structured for LLMs — symbols have kinds, signatures, parent relationships, and line ranges. The agent gets exactly what it needs in one tool call instead of piecing it together from raw text.
- Prose search —
search --scope texttargets comments, docstrings, and string literals specifically. Find TODOs, find the error message a user reported, find what a function's docstring says — without noise from code. - Fast — builds in seconds, queries in milliseconds. Rust + tree-sitter + in-memory SQLite FTS5 under the hood.
The .codeindex format
An open, portable format for structured code indexing. Plain JSONL files you commit alongside your code — git-friendly diffs, human-readable with grep and jq, no binary blobs.
.codeindex/
index.json # manifest: version, name, languages
files.jsonl # one line per source file (path, lang, hash, line count)
symbols.jsonl # one line per symbol (functions, classes, imports, with signatures)
texts.jsonl # one line per comment, docstring, string literal
Any tool that can parse JSON can consume a .codeindex. Codeix builds it using tree-sitter, and AI agents query it through MCP (Model Context Protocol).
Example — symbols.jsonl:
{"file":"src/main.py","name":"os","kind":"import","line":[1,1]}
{"file":"src/main.py","name":"Config","kind":"class","line":[22,45]}
{"file":"src/main.py","name":"Config.__init__","kind":"method","line":[23,30],"parent":"Config","sig":"def __init__(self, path: str, debug: bool = False)"}
{"file":"src/main.py","name":"main","kind":"function","line":[48,60],"sig":"def main(args: list[str]) -> int"}
Ship your index with your package
Include .codeindex in your package and every developer who depends on you gets instant navigation of your API — no setup, no re-indexing.
Works with Git repos, npm, PyPI, and crates.io.
MCP tools
Seven tools, zero setup. The agent queries immediately — no init, no config, no refresh.
| Tool | What it does |
|---|---|
explore |
Explore project structure: metadata, subprojects, files grouped by directory |
search |
Unified full-text search across symbols, files, and texts (FTS5, BM25-ranked) with scope/kind/path/project filters |
get_file_symbols |
List all symbols in a file |
get_children |
Get children of a class/module |
get_callers |
Find all places that call or reference a symbol |
get_callees |
Find all symbols that a function/method calls |
flush_index |
Flush pending index changes to disk |
Project discovery
Launch codeix from any directory. It walks downward and treats every directory containing .git/ as a separate project — each gets its own .codeindex.
Works uniformly for single repos, monorepos, sibling repos, and git submodules. No config needed.
Languages
Tree-sitter grammars, feature-gated at compile time:
| Language | Feature flag | Default | Extensions |
|---|---|---|---|
| Python | lang-python |
yes | .py .pyi .pyw |
| Rust | lang-rust |
yes | .rs |
| JavaScript | lang-javascript |
yes | .js .mjs .cjs .jsx |
| TypeScript | lang-typescript |
yes | .ts .mts .cts .tsx |
| Go | lang-go |
yes | .go |
| Java | lang-java |
yes | .java |
| C | lang-c |
yes | .c .h |
| C++ | lang-cpp |
yes | .cpp .cc .cxx .hpp .hxx |
| Ruby | lang-ruby |
yes | .rb .rake .gemspec |
| C# | lang-csharp |
yes | .cs |
| Markdown | lang-markdown |
yes | .md .markdown |
Markdown support
Markdown files are parsed for headings (both ATX # and Setext underline styles) which are indexed as section symbols with hierarchical parent-child relationships — enabling TOC extraction and document structure navigation.
Fenced code blocks are extracted as code text entries, parented to their containing section.
Embedded scripts
HTML, Vue, Svelte, and Astro files are preprocessed to extract embedded <script> blocks, which are then parsed with the JavaScript or TypeScript grammar:
| Format | Extensions | Script detection |
|---|---|---|
| HTML | .html .htm |
<script> tags, with optional lang="ts" |
| Vue | .vue |
<script> and <script setup>, with optional lang="ts" |
| Svelte | .svelte |
<script>, with optional lang="ts" |
| Astro | .astro |
--- frontmatter (always TypeScript) + optional <script> tags |
Line numbers in the index point to the original file, not the extracted script block.
Install
# npm / npx — run without installing
npx codeix
# pip / uvx — run without installing
uvx codeix
# Rust
cargo install codeix
# Homebrew
brew install codeix
# Or build from source
git clone https://github.com/montanetech/codeix.git
cd codeix
cargo build --release
All channels install the same single binary. No runtime dependencies.
Usage
# Build the index for the current project
codeix build
# Build from a specific directory (discovers all git repos below)
codeix -r ~/projects build
# Start MCP server (default command, watches for changes)
codeix
# Or explicitly
codeix serve
codeix serve --no-watch
# Serve from a specific directory
codeix -r ~/projects serve
MCP client configuration
Add to your MCP client config (e.g. Claude Desktop, Cursor):
{
"mcpServers": {
"codeix": {
"command": "codeix"
}
}
}
Design principles
- Local only — no network, no API keys, works offline and air-gapped
- Deterministic — same source always produces the same index (clean diffs)
- Composable — dependency indexes are auto-discovered and mounted at query time
- Minimal surface — 7 query tools, zero management plumbing
Architecture
See docs/architecture.md for the full set of architecture decision records.
License
MIT OR Apache-2.0
Codeix MCP Fragen
Wie füge ich Codeix MCP zu Claude Code hinzu?
Führe claude mcp add codeix -- npx -y codeix in deinem Terminal aus. Füge --scope user hinzu, damit der Server in jedem Projekt verfügbar ist.
Wie füge ich Codeix MCP zu Cursor hinzu?
Öffne ~/.cursor/mcp.json und füge den Server unter mcpServers hinzu, mit der Cursor-Config aus dem Installationsabschnitt oben.
Welche Tools bietet Codeix MCP?
Er stellt 7 Tools bereit, darunter explore, search, get_file_symbols, get_children, get_callers.
Wie hilft Codeix KI-Coding-Agenten?
Es stellt eine vorgefertigte Map der Codebase bereit, sodass Agenten Symbole, Signaturen und Parent-Beziehungen mit einem einzigen Tool-Call finden können, anstatt rohen Text scannen zu müssen.
Kann der Index zwischen Entwicklern geteilt werden?
Ja, der Index wird in einem .codeindex Verzeichnis gespeichert, das in Git committet werden kann. So können andere ihn nutzen, ohne ihn neu indizieren zu müssen.
Benötigt Codeix eine Internetverbindung oder API-Keys?
Nein, es ist für den rein lokalen Betrieb konzipiert und funktioniert offline sowie in Air-Gapped-Umgebungen, ohne dass Netzwerkzugriff oder API-Keys erforderlich sind.