mcpField
L
Lybrary

Lybrary

ローカル
github.com/vibhu-dixitメモリ・ナレッジ03 日前に更新

Lybrary について

Lybrary は、Codex、Claude Code などの MCP コーディングエージェント向けのローカルコードベース索引・検索サーバーです。リポジトリのシンボルとソース位置を対応付け、変更を監視し、完全一致・語句・セマンティック検索を組み合わせます。

主な機能

  1. 01リポジトリ構造とシンボルの索引作成
  2. 02完全一致とセマンティック検索
  3. 03順位付きパスと行抜粋の提示
  4. 04ファイル監視と索引の更新
  5. 05パーサー、埋め込みモデル、除外設定

活用シーン

  1. 01コード編集前の関数特定
  2. 02複数ファイルにまたがる機能の追跡
  3. 03ファイル変更に応じた索引更新
  4. 04索引済みリポジトリのコマンドライン検索

MCP 対応

Lybrary は `lybrary mcp` でローカルの stdio MCP サーバーを実行します。ツールからコードベースメモリを検索し、索引状態を確認し、差分・全体・パス指定の再索引を実行できます。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"vibhu-dixit-lybrary": {
"command": "uvx",
"args": [
"lybrary"
]
}
}
}
起動コマンドuvx lybrary

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
pypilybrary0.3.2

ツール

3

掲載時のツール一覧 · 2 週間前に更新

パラメーター型必須説明
paramsanyはい

詳細

Lybrary — コーディングエージェント向けのローカルコードベースメモリ

Lybrary は、コード構造に基づいてリポジトリをインデックス化し、Codex、Claude Code、その他の MCP クライアントに、関数、クラス、ファイルを検索できるマップとして提供します。ローカルで動作し、変更を監視するため、エージェントはファイル全体を開く前に、関連するソースコードの行を見つけられます。

PyPI · ドキュメント · エージェントのセットアップガイド · ソース · 課題

コーディングエージェントにセットアップを依頼する場合は、リポジトリ用のローカル MCP コード検索ツールを見つけてインストールし、エージェントのセットアップガイドを参照するように伝えてください。このガイドには、PyPI パッケージ、ソースリポジトリ、インストールコマンド、およびエージェントがこのリポジトリのインデックスを使用していることを確認する手順が記載されています。

任意のリポジトリですぐに使う

一度インストールしたら、インデックス化したい各フォルダーで lybrary start を実行します。

pip install lybrary
cd /path/to/your/repo
lybrary start
lybrary status

start は必要に応じて .lybrary/ を作成し、インデックスを構築して、バックグラウンドでファイル監視デーモンを実行します。ターミナルを閉じた後も動作し続けます。停止するには、そのリポジトリで lybrary stop を実行してください。初回のインデックス作成ではローカル埋め込みモデルがダウンロードされることがあります。以降の実行ではキャッシュが使用されます。

各リポジトリには独自のインデックスと .lybrary/config.toml があります。インデックスはお使いのマシンに保存され、API キーもホスト型データベースも必要ありません。

エージェントを接続する

MCP サーバーをお使いのマシンに一度登録します。インデックス化されたリポジトリでエージェントを起動し、memory_status を呼び出してルートとチャンク数を確認するよう依頼してください。

Codex

Codex ユーザーは、リポジトリのプラグインマーケットプレイスから Lybrary のセットアップスキルをインストールできます。

codex plugin marketplace add vibhu-dixit/lybrary
codex plugin add lybrary@lybrary

プラグインはセットアップを支援します。ローカル MCP サーバーは別途登録してください。

codex mcp add lybrary -- lybrary mcp
codex mcp list

Codex にメモリを一貫して使用させたい場合は、そのリポジトリの AGENTS.md に次の内容を追加します。

When .lybrary/index.db exists, use Lybrary memory_query before broad code searches or reading multiple files. Inspect the returned source paths and lines before editing. If the index is absent or the tool fails, use normal search.
Claude Code

Claude Code ユーザーは、MCP サーバーを登録し、セットアップスキルも含むリポジトリのプラグインをインストールできます。

claude plugin marketplace add vibhu-dixit/lybrary
claude plugin install lybrary@lybrary

Python パッケージも pip install lybrary でインストールする必要があります。または、プラグインを使わずに MCP サーバーを直接登録できます。

claude mcp add --scope user --transport stdio lybrary -- lybrary mcp
claude mcp list

Claude Code では、/mcp で接続状況を確認できます。同じ指示をリポジトリの CLAUDE.md に記載してください。登録するとツールが利用可能になります。指示を記載すると、エージェントが必要に応じてツールを選択しやすくなります。

その他の stdio MCP クライアントでは、コマンドを lybrary、引数を mcp として設定してください。セットアップガイドを参照してください。

エージェントが利用できる機能

memory_query は、まずシンボルの完全一致と SQLite FTS5 インデックスを確認します。語句の一致度が高い場合は埋め込みモデルを読み込まず、コードの表現と検索語句が一致しない場合の代替手段として、セマンティック検索を使用します。デフォルトの応答では、ランキングされたパス、シンボル、行範囲、および簡潔な番号付き抜粋を返します。トレースが最初の結果に含まれていない名前付き呼び出しをたどる場合は、そのシンボルを一度だけ検索してください。チャンク全体が必要な場合は、include_content=true を設定します。

memory_status は、アクティブなリポジトリとインデックスの状態を報告します。memory_update は、増分、全体、またはパスを指定した再インデックス作成を実行します。

これにより、広範な検索や大きなファイルの読み込みを何度も行う必要が減ります。特に、エージェントが複数のセッションにまたがって機能を探す場合に役立ちます。実際のトークン使用量は、タスク、エージェントが選択するツール、さらに調査が必要なソースコードの量によって異なります。ベンチマークガイドでは、単一の応答サイズから削減量を推測するのではなく、実行全体を比較する方法を説明しています。

リポジトリに合わせる

.lybrary/config.toml を編集して、埋め込みモデルとデバイス、チャンクサイズ、インデックス対象の言語、除外するパス、ファイル監視のデバウンス時間を選択します。Git 形式の無視パターンを .lybrary/ignore に追加します。保存済みのチャンクや埋め込みに影響する設定を変更した場合は、lybrary index --full を再実行してください。

対応しているパーサーは、Python、JavaScript、TypeScript、TSX、Go、Rust、Java、C、C++ です。インデクサーは tree-sitter の境界を使用し、デーモンの実行中に変更されたファイルを更新します。

CLI

コマンド目的
lybrary start現在のリポジトリを初期化し、インデックスを作成して監視します
lybrary stopバックグラウンドデーモンを停止します
lybrary statusデーモンとインデックスの状態を表示します
lybrary query "authentication flow"ターミナルから検索します
lybrary index --fullインデックスを再構築します
lybrary logsデーモンのログを表示します
lybrary mcpstdio MCP サーバーを実行します

エージェントがインデックス対象のリポジトリより上の階層から起動する場合は、MCP ツールの repo_root にそのリポジトリの絶対パスを渡すか、エージェントをリポジトリ内で起動してください。

効果を測定する

ソースコードをチェックアウトした状態で、Lybrary の使用時と不使用時について、同じ読み取り専用の質問を比較します。

python benchmark.py /path/to/indexed/repo "Trace how interview invitations are sent"

スクリプトは、両方の回答、ツール呼び出し、入力トークンの合計数・キャッシュ済み数・未キャッシュ数を .lybrary/benchmarks/ に記録します。まず回答の正確性を確認してください。質問が1つだけでは、一般的な削減効果を判断できません。

コントリビュート

Issue とプルリクエストを歓迎します。ローカルでチェックアウトした場合は、次のようにします。

pip install -e ".[dev]"
pytest

Lybrary は MIT ライセンスです。リリースについては変更履歴をご覧ください。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。