Code Index MCP Server
An MCP server for fast local source code searching using Zoekt, enabling regex and substring queries across indexed directories.
README
Code Index MCP Server
An MCP (Model Context Protocol) server for fast local source code searching using Zoekt.
Features
- Fast code search: Uses Zoekt's trigram-based indexing for fast substring and regex matching
- Per-directory indexes: Each indexed directory gets its own index stored in the user profile
- Rich query language: Supports regex, file filters, language filters, and boolean operators
- Cross-platform: Works on macOS and Linux
Installation
This server is available on the MCP Registry.
Download Pre-built MCPB bundle (experimental)
Download the appropriate .mcpb bundle for your platform from the GitHub Releases page:
code-index-mcp-darwin-arm64.mcpb- macOS Apple Siliconcode-index-mcp-darwin-amd64.mcpb- macOS Intelcode-index-mcp-linux-amd64.mcpb- Linux x64code-index-mcp-linux-arm64.mcpb- Linux ARM64
The .mcpb file is a ZIP archive containing the binary and manifest. You can open it directly in Claude Desktop in order to install it
Manual installation (recommended)
In order to get the binary onto your computer, you can do one of the following:
Download from releases
Go to GitHub Releases and download the appropriate file (not mcpb but the tar/gzipped ones corresponding to your platform). For example:
curl -sL https://github.com/trondhindenes/code-index-mcp/releases/download/1.0.13/code-index-mcp-darwin-arm64.tar.gz | tar xz
chmod +x code-index-mcp
Using Go
go install github.com/trondhindenes/code-index-mcp@latest
Build from Source
git clone https://github.com/trondhindenes/code-index-mcp
cd code-index-mcp
go build -o code-index-mcp .
Configuration
Now that you have the binary installed locally, you can register it in your tools of choice. This should not be necessary if you installed via mcpb bundle but your mileage may vary.
Claude Desktop
Add to your Claude Desktop configuration (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):
{
"mcpServers": {
"code-index": {
"command": "/path/to/code-index-mcp"
}
}
}
Claude Code
Run the following:
claude mcp add --scope user --transport stdio code-index /path/to/code-index-mcp
Environment Variables
CODE_INDEX_DIR: Override the default index storage location
Default index locations:
- macOS:
~/Library/Application Support/code-index/ - Linux:
~/.local/share/code-index/or$XDG_DATA_HOME/code-index/
Available Tools
index_directory
Index a source code directory for fast searching.
Parameters:
directory(required): The path to the directory to index
Example:
Index the directory /Users/me/projects/myapp
search_code
Search for code across indexed directories. Returns compact grep-like output to minimize context window usage.
Parameters:
query(required): The search query using Zoekt syntaxdirectory(optional): Limit search to a specific indexed directorymax_files(optional): Maximum files to return (default: 20)max_lines_per_file(optional): Maximum matches per file (default: 3)files_only(optional): Only return file paths, no line content (default: false)
Output Format:
/path/to/file.go:42: matching line content here
/path/to/file.go:58: another matching line
... and 5 more matches in this file
Query Syntax Examples:
func main- Simple text searchfile:\.go$ func main- Search only in .go fileslang:python class.*Model- Search in Python files-test func main- Exclude files containing "test"case:yes MyFunc- Case-sensitive search
list_indexes
List all indexed directories and their locations.
delete_index
Delete the index for a specific directory.
Parameters:
directory(required): The path to the directory whose index should be deleted
index_info
Get information about the indexing configuration, including storage location.
Skipped Directories
The following directories are automatically skipped during indexing:
- Hidden directories (starting with
.) node_modules,vendor,__pycache__target,build,distvenv,.venv,env,.env
Skipped Files
Binary files and common non-code files are automatically skipped, including:
- Executables (
.exe,.dll,.so,.dylib) - Archives (
.zip,.tar,.gz) - Images (
.png,.jpg,.gif) - Documents (
.pdf,.doc,.docx)
License
MIT
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.