Code Index について
Code Index は、ローカルのソースディレクトリをインデックス化し、Zoekt でコードを検索する MCP サーバーです。プロジェクト内を素早く検索したい開発者向けに、部分一致、正規表現、ファイルや言語による絞り込みを提供します。
主な機能
- 01ソースディレクトリごとのインデックス作成
- 02Zoekt のトライグラムインデックスによる検索
- 03正規表現とブール演算子の利用
- 04ファイル種別と言語による絞り込み
- 05インデックスの一覧表示、確認、削除
活用シーン
- 01インデックス済みプロジェクトからシンボルを検索
- 02言語やファイル種別を指定して検索
- 03ローカルに保存したディレクトリインデックスの管理
MCP 対応
ディレクトリのインデックス作成、コード検索、インデックスの一覧表示・削除、設定確認のツールを提供します。Claude Desktop や Claude Code などの MCP クライアントに登録できます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Code Index MCP Server
Zoekt を使用してソースコードを高速にローカル検索する MCP(Model Context Protocol)サーバーです。
特長
- 高速なコード検索:Zoekt のトライグラムベースのインデックス作成により、部分文字列と正規表現を高速に照合します
- ディレクトリごとのインデックス:インデックスを作成した各ディレクトリに独自のインデックスが作成され、ユーザープロファイルに保存されます
- 豊富なクエリ言語:正規表現、ファイルフィルター、言語フィルター、ブール演算子に対応しています
- クロスプラットフォーム:macOS と Linux で動作します
インストール
このサーバーはMCP Registryで利用できます。
ビルド済み MCPB バンドルのダウンロード(実験的)
GitHub Releasesページから、お使いのプラットフォームに適した .mcpb バンドルをダウンロードしてください。
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
.mcpb ファイルは、バイナリとマニフェストを含む ZIP アーカイブです。Claude Desktop で直接開いてインストールできます。
手動インストール(推奨)
バイナリをコンピューターに配置するには、次のいずれかの方法を使用できます。
リリースからダウンロード
GitHub Releasesにアクセスし、 お使いのプラットフォームに適したファイル(mcpb ではなく、対応する tar/gzip ファイル)をダウンロードしてください。 例:
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
Go を使用
go install github.com/trondhindenes/code-index-mcp@latest
ソースからビルド
git clone https://github.com/trondhindenes/code-index-mcp
cd code-index-mcp
go build -o code-index-mcp .
設定
バイナリをローカルにインストールしたら、使用するツールに登録できます。 mcpb バンドル経由でインストールした場合は不要なはずですが、環境によって異なる場合があります。
Claude Desktop
Claude Desktop の設定(macOS の場合は ~/Library/Application Support/Claude/claude_desktop_config.json)に追加します。
{
"mcpServers": {
"code-index": {
"command": "/path/to/code-index-mcp"
}
}
}
Claude Code
次を実行します。
claude mcp add --scope user --transport stdio code-index /path/to/code-index-mcp
環境変数
CODE_INDEX_DIR:デフォルトのインデックス保存場所を上書きします
デフォルトのインデックス保存場所:
- macOS:
~/Library/Application Support/code-index/ - Linux:
~/.local/share/code-index/または$XDG_DATA_HOME/code-index/
利用可能なツール
index_directory
ソースコードのディレクトリにインデックスを作成し、高速検索できるようにします。
パラメーター:
directory(必須):インデックスを作成するディレクトリのパス
例:
Index the directory /Users/me/projects/myapp
search_code
インデックス作成済みのディレクトリからコードを検索します。コンテキストウィンドウの使用量を抑えるため、grep のような簡潔な出力を返します。
パラメーター:
query(必須):Zoekt 構文を使用した検索クエリdirectory(任意):検索対象を特定のインデックス作成済みディレクトリに限定しますmax_files(任意):返すファイルの最大数(デフォルト:20)max_lines_per_file(任意):ファイルごとに返す一致箇所の最大数(デフォルト:3)files_only(任意):ファイルの内容を含めず、ファイルパスのみを返します(デフォルト:false)
出力形式:
/path/to/file.go:42: matching line content here
/path/to/file.go:58: another matching line
... and 5 more matches in this file
クエリ構文の例:
func main- 単純なテキスト検索file:\.go$ func main- .go ファイルのみを検索lang:python class.*Model- Python ファイルを検索-test func main- "test" を含むファイルを除外case:yes MyFunc- 大文字と小文字を区別して検索
list_indexes
インデックス作成済みのディレクトリと、その保存場所をすべて一覧表示します。
delete_index
特定のディレクトリのインデックスを削除します。
パラメーター:
directory(必須):インデックスを削除するディレクトリのパス
index_info
保存場所を含む、インデックス作成の設定情報を取得します。
スキップされるディレクトリ
インデックス作成時、次のディレクトリは自動的にスキップされます。
- 隠しディレクトリ(
.で始まるもの) node_modules、vendor、__pycache__target、build、distvenv、.venv、env、.env
スキップされるファイル
バイナリファイルや一般的な非コードファイルは自動的にスキップされます。対象には以下が含まれます。
- 実行ファイル(
.exe、.dll、.so、.dylib) - アーカイブ(
.zip、.tar、.gz) - 画像(
.png、.jpg、.gif) - ドキュメント(
.pdf、.doc、.docx)
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。