Home / Servers

codeintel

by phuongddx

codeintel

<!-- mcp-name: io.github.phuongddx/codeintel -->

Local-first code intelligence for coding agents. Precomputed SCIP navigation (go-to-definition, find-references, call hierarchy, document symbols), Zoekt lexical search, cross-repo blast radius, and semantic search — exposed as MCP tools to Claude Code, Cursor, or any MCP client.

Runs as a single stdio process reading local SQLite files. No server, no auth, no network, nothing leaves your machine.

# 1. External indexer binaries (scip, zoekt, per-language indexers)
curl -fsSL https://raw.githubusercontent.com/phuongddx/codeintel/main/setup.sh | sh

# 2. codeintel itself
uv tool install codeintel-mcp

# 3. Index a repo (slug defaults to the directory name)
codeintel index /path/to/your/repo

# 4. Register with Claude Code
claude mcp add codeintel --scope user -- codeintel-server

That's it — ask your agent "find all references to AuthService" and it will call findReferences instead of grepping.

<details> <summary>Other MCP clients (Cursor, Claude Desktop, any stdio client)</summary>
{
  "mcpServers": {
    "codeintel": {
      "command": "codeintel-server"
    }
  }
}

If your client can't find codeintel-server on PATH (GUI apps often don't inherit your shell's), use the absolute path from which codeintel-server.

</details> <details> <summary>Running from a clone instead</summary>
git clone https://github.com/phuongddx/codeintel && cd codeintel
uv sync
claude mcp add codeintel --scope user -- uv --directory "$(pwd)" run codeintel-server
</details>

MCP tools

ToolWhat it does
goToDefinitionResolve a symbol to its defining file and range
findReferencesEvery occurrence of a symbol across the indexed repo
callHierarchyIncoming/outgoing calls for a symbol
documentSymbolsOutline of every symbol defined in one file
searchCodeZoekt lexical/regex search, optionally filtered to one repo
semanticSearchNatural-language search — vector hits fused with Zoekt via reciprocal rank fusion
blastRadiusWhich other indexed repos depend on a package, up to 2 hops
getIndexStatusPublished commit, freshness, staleness vs. a working tree
typeHierarchySupertypes/subtypes — currently non-functional, see limitations

Every nav tool takes repo (the slug from codeintel index) plus a tool-specific symbol or path. All tools report failure the same way — a {"error": "..."} payload rather than a transport-level error, so a query bug never kills the stdio server.

Requirements and limits

Read this before installing — codeintel is deliberately narrow.

  • macOS and Linux only. Windows is not supported.

  • One language per repo. Language is detected by extension plurality across git-tracked files; a polyglot monorepo gets indexed as whichever language has the most files. Multi-language merge is out of scope. Override with --language.

  • Four language families: TypeScript/TSX, Python, Java/Kotlin, Swift. Rust, Go, C/C++, C#, Ruby, and PHP are not supported.

  • Navigation and search only — codeintel never edits code. If you want an agent that can perform semantic renames and refactors, you want Serena; the two are complementary.

  • Indexing is a separate, explicit step. Nothing is live-analyzed. Run codeintel index (or codeintel watch) to publish an index before querying.

  • Requires external binaries that setup.sh installs:

    PurposeBinarySource
    SCIP → SQLite conversionscipprebuilt, pinned v0.9.0 (minimum — older versions silently drop occurrence ranges)
    Lexical searchzoekt-index · zoekt-webservercross-compiled by our CI — upstream publishes no binaries
    TypeScript indexing`scip-typesc

Related servers

n8n

by n8n-io

Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.

NOASSERTION198,904

@modelcontextprotocol/server-everything

Official

by modelcontextprotocol

MCP server that exercises all the features of the MCP protocol

89,105

@modelcontextprotocol/server-filesystem

Official

by modelcontextprotocol

MCP server for filesystem access

SEE LICENSE IN LICENSE89,105

mcp-server-fetch

Official

by modelcontextprotocol

A Model Context Protocol server providing tools to fetch and convert web content for usage by LLMs

89,105