Skip to content

Documentation.

Five steps from zero to a working AI assistant that understands your codebase: download the binary, start the server, connect your AI client, learn the CLI, and explore the 32 MCP tools.

1 · Download

Grab the binary for your platform.

Statically-linked native binary for macOS, Linux, and Windows. No Node, no Python, no Docker. The right GPU build (CPU / CUDA / DirectML / Metal / TensorRT) is selected when you pick the download — see /pricing for tier details.

  1. Sign in to your account dashboard and download the binary for your platform from the Downloads tab.
  2. Move the binary to a folder on your $PATH (e.g. /usr/local/bin on macOS / Linux, or a folder added to PATH on Windows).
  3. Verify the install:
    bash
    codeindexer --version

Package-manager installers (Homebrew, Scoop, apt) are coming. This page will be updated when they ship.

2 · Run

Start the server and open the dashboard.

Start the MCP server (it binds to 127.0.0.1:8978 by default — local only, no LAN exposure):

bash
codeindexer serve

Open the local dashboard in your browser to manage projects, view indexing jobs, browse search history, and configure auth:

bash
open http://127.0.0.1:8978/

The dashboard runs on the same port as the MCP endpoint (/mcp) — same process, same authentication, separate UI routes. Set a password under Settings if you plan to expose the dashboard beyond localhost.

3 · Integrations

Connect every major AI client.

Copy-paste config for each supported client. The server must be running (codeindexer serve) for HTTP transport; stdio transport launches the binary on demand.

Option A — one-click deeplink (Cursor 0.45+)

Open this URL in your browser; Cursor will intercept it:

text
cursor://anysphere.cursor-deeplink/mcp/install?name=codeindexer&config=eyJ1cmwiOiJodHRwOi8vbG9jYWxob3N0Ojg5NzgvbWNwIn0=

The base64 payload decodes to {"url":"http://localhost:8978/mcp"}.

Option B — edit config file manually

Global: ~/.cursor/mcp.json (every project). Project: .cursor/mcp.json (committed with the repo).

json
{
  "mcpServers": {
    "codeindexer": {
      "url": "http://localhost:8978/mcp"
    }
  }
}

Restart Cursor or reload the MCP panel in Settings → MCP.

Option A — one-liner via the claude CLI

HTTP transport (needs codeindexer serve running):

bash
claude mcp add --transport http codeindexer \
  --scope user http://127.0.0.1:8978/mcp

stdio transport (no server needed, Claude launches the binary):

bash
claude mcp add --transport stdio codeindexer \
  --scope user -- codeindexer serve --stdio

Scope flags: --scope user → ~/.claude.json; --scope project → .mcp.json (committed); --scope local → .claude/settings.local.json.

Option B — edit config manually

User scope: ~/.claude.json. Project scope: .mcp.json in repo root.

json
{
  "mcpServers": {
    "codeindexer": {
      "type": "http",
      "url": "http://127.0.0.1:8978/mcp"
    }
  }
}

⚠ Important: set "type": "http" — not "sse". Claude Code uses "http" for the Streamable HTTP transport; without it, the URL is treated as a subprocess.

Option A — one-liner via the codex CLI

Streamable HTTP (needs codeindexer serve):

bash
codex mcp add codeindexer --url http://localhost:8978/mcp

stdio (no server needed):

bash
codex mcp add codeindexer -- codeindexer serve --stdio

Add --bearer-token-env-var NAME to send Authorization: Bearer $NAME with every HTTP request.

Option B — edit ~/.codex/config.toml

stdio:

toml
[mcp_servers.codeindexer]
command = "codeindexer"
args = ["serve", "--stdio"]

Streamable HTTP:

toml
[mcp_servers.codeindexer]
url = "http://localhost:8978/mcp"

Project-scoped variant (only loaded for trusted projects): .codex/config.toml in the repo root.

Config file: ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or equivalent on other OS.

json
{
  "mcpServers": {
    "codeindexer": {
      "command": "codeindexer",
      "args": ["serve", "--stdio"]
    }
  }
}

No running server needed — Claude Desktop launches codeindexer automatically.

Config file: ~/.gemini/antigravity/mcp_config.json

json
{
  "mcpServers": {
    "codeindexer": {
      "url": "http://localhost:8978/mcp"
    }
  }
}

Antigravity uses Streamable HTTP (/mcp), not SSE. Restart Antigravity after editing.

Option A — one-liner via the code CLI

bash
code --add-mcp {"name":"codeindexer","type":"http","url":"http://localhost:8978/mcp"}

For VS Code Insiders use code-insiders. The entry is written to your User-profile mcp.json; trust the server on first use.

Option B — edit mcp.json manually

In VS Code run MCP: Open User Configuration or MCP: Add Server. Or open the file directly:

  • macOS — ~/Library/Application Support/Code/User/mcp.json
  • Linux — ~/.config/Code/User/mcp.json
  • Windows — %APPDATA%\Code\User\mcp.json

Workspace-scoped: .vscode/mcp.json (committed with repo).

json
{
  "servers": {
    "codeindexer": {
      "type": "http",
      "url": "http://localhost:8978/mcp"
    }
  }
}

⚠ Plan mode notice: built-in Plan mode in VS Code Copilot disables non-built-in tools, including MCP servers. Use Agent mode (MCP tools fully available) or define a custom chat mode that whitelists codeindexer tools — see the README on GitHub for the template.

Config file: ~/.codeium/windsurf/mcp_config.json

json
{
  "mcpServers": {
    "codeindexer": {
      "command": "codeindexer",
      "args": ["serve", "--stdio"]
    }
  }
}

Verify: ask your agent “What MCP tools do you have available?” — it should list search_code, find_references, find_callers, and the rest of the 32-tool set.

4 · CLI

Command reference.

The commands you'll reach for most often. Run codeindexer --help for the complete list and codeindexer <command> --help for per-command flags.

Indexing

codeindexer index <path> Index a project directory
codeindexer reindex <project> Reindex (incremental by default; --force for full)
codeindexer status List indexed projects with stats
codeindexer delete <project> Remove a project from the index
codeindexer relocate <project> <new-path> Update project path without reindexing

Server

codeindexer serve Start the MCP server (default: 127.0.0.1:8978)
codeindexer serve --stdio Run over stdio transport (no HTTP server, agent launches binary directly)
codeindexer info System information and diagnostics
codeindexer doctor Health checks — metadata, index integrity, duplicates

Search and navigation

codeindexer search <query> Search code from the terminal (for testing)
codeindexer references <symbol> Find all references to a symbol
codeindexer callers <function> Who calls this function
codeindexer callees <function> What does this function call

Project management

codeindexer tag Manage project tags
codeindexer alias Manage project aliases (alternative names that resolve to the project)
codeindexer project-config Show effective .indexer.toml for debugging
codeindexer init Generate default config with all options documented
codeindexer config Manage configuration files

Index maintenance

codeindexer compact Merge fragmented LanceDB files after reindex cycles
codeindexer rebuild-fts Rebuild the full-text search index without re-embedding
codeindexer rebuild-index Rebuild the vector index (IVF-PQ / HNSW)
codeindexer quantize Compress vectors in an existing project (TurboQuant)

License

codeindexer activate <key> Activate a license key on this machine
codeindexer license Show current license status
codeindexer deactivate Free this seat for another machine
codeindexer upgrade Check for updates and upgrade to the latest version

Audit and reports (Security tier)

codeindexer audit <project> Generate a code-quality / security audit report
codeindexer ci-init --platform <github|gitlab|pre-commit> Generate a CI/CD pipeline (or pre-commit hook) that runs audit and fails on HIGH/CRITICAL
codeindexer report Manage curated long-form Markdown reports
codeindexer cards export Export memory cards to a Markdown vault

Async jobs

codeindexer jobs List active indexing jobs (requires running server)
codeindexer pause / resume / cancel Control an active indexing job
codeindexer activity-log View mutation history
Tip: configuration lives in ~/.config/codeindexer/config.toml (global) and .indexer.toml (per project). Run codeindexer init to generate a default config with every option documented inline.
Capabilities

One server. 32 tools.
Every workflow.

Your AI agent doesn't see a “code indexer” — it sees a toolbox. Here's what's in it.

Search & navigation

Find symbols, files and patterns; walk the call graph in any direction

group 01 / 05
  • search_code semantic, symbol, exact, or cascade (all three) — cascade is Pro
  • read_chunk fetch the indexed chunk that owns a given line
  • read_file_range precise file slice (cap 500 lines) without leaving MCP
  • find_references every place a symbol is used — Pro
  • find_callers walk the call graph backwards (transitive option) — Pro
  • find_callees walk the call graph forwards (transitive option) — Pro
  • find_call_chain shortest path between two functions — Pro
  • find_call_cycles detect circular call paths — Pro
  • shortest_call_path fastest known path between two symbols — Pro
  • find_by_signature by parameter types, return type, async, modifier — Pro

Code understanding

Reason about structure, impact, entry points and quality

group 02 / 05
  • find_dead_code functions nothing calls anymore — Pro
  • find_complex_functions high cyclomatic complexity offenders — Pro
  • find_bridges modules connecting distinct subsystems — Pro
  • find_execution_flows labeled entry-point traces — Pro
  • rank_functions importance score across the call graph — Pro
  • review_diff blast-radius analysis of a git diff — Pro
  • analyze_corpus TF-IDF topic clustering for docs and corpora — Pro
  • find_related files that co-occur in search results — Pro
  • find_tropes recurring patterns and idioms across the codebase — Pro
  • consistency_check cross-file naming, structure and convention checks — Pro
  • find_citations where docs / READMEs cite a symbol or file — Pro

Memory for AI

Persistent context across sessions, agents and projects

group 03 / 05
  • memory_cards decisions, gotchas, conventions, bugs (CRUD + links) — Free, within limits
  • card_chat multi-agent review threads attached to a memory card — Pro
  • solutions solved-problem snippets, auto-promoted — Free, within limits
  • skills reusable SKILL.md files your agent discovers — Free, within limits

Projects & ops

Run codeindexer over many projects with audit trails

group 04 / 05
  • projects add, list, reindex, tag, relocate, report
  • roadmap phases, success criteria, card linking — Free, within limits
  • reports curated long-form Markdown reports — Free, within limits
  • history searches and mutation audit trail — Pro
  • jobs manage long-running async operations

Audit & security

Deep audit pipeline, compliance mapping, supply-chain analysis

group 05 / 05
  • audit_project full security + quality audit pipeline — Security
  • find_test_coverage map tests to the source symbols they exercise — Pro

We use a couple of small first-party cookies to keep the site working and remember your theme preference. No tracking, no ads. Learn more.