repo-memory-mcp について
repo-memory-mcpは、MCP対応のコーディングエージェント向けに、リポジトリごとのローカルメモリを提供します。ルールや修正事項、設計判断をSQLiteに保存し、クラウドを使わず次のセッションでも参照できます。
主な機能
- 01リポジトリ別のSQLiteメモリ
- 02開始時コンテキストの取得と検索
- 03ルール・修正・判断の保存
- 04古い項目の更新やアーカイブ
- 05JSONのインポートとエクスポート
- 06機密情報らしい値を既定で拒否
活用シーン
- 01セッション開始時にプロジェクト指針を確認
- 02繰り返しの修正から得た教訓を保存
- 03コード変更時に関連する判断を検索
MCP 対応
リポジトリのメモリを読み込み、検索、保存、更新、アーカイブする明示的なMCPツールを公開します。ローカルのstdioで通信します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
11掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| tags | any | いいえ | |
| topic | string | はい | |
| lesson | string | はい | |
| importance | string | いいえ | |
| context_file | string | いいえ |
詳細
repo-memory-mcp
mcp-name: io.github.Umarjaum/repo-memory-mcp
AI コーディングエージェントのための永続メモリ
AI コーディングエージェントは強力ですが、リポジトリ固有の修正事項、規約、制約、アーキテクチャ上の決定を忘れてしまいます。repo-memory-mcp は、MCP 対応のコーディングエージェントに、永続的でローカルな、リポジトリを認識するメモリレイヤーを提供します。
コーディングエージェントには一度教えるだけ。あとはリポジトリが覚えておきます。
できること
MCP ホストはツールを呼び出すタイミングを決定します。MCP がすべての会話を自動的に傍受するわけではありません。このプロジェクトは、セッション開始時に重要なコンテキストを読み込み、関連するメモリを検索し、修正事項や決定を保存し、古くなったガイダンスを更新し、不要になったメモリをアーカイブするための明示的なツールをエージェントに提供します。
メモリデータベースは、検出されたリポジトリ内の .repo-memory/memory.db に保存されます。SQLite と決定論的なローカルランキングを使用し、クラウドサービスは利用しません。
開発者に選ばれる理由
- 永続的なプロジェクトメモリ: 修正事項、ルール、規約、制約、決定事項、バグ修正の教訓をセッションをまたいで保持します。
- リポジトリを認識した分離: 関係のないリポジトリ間でメモリを共有しません。
- ローカル優先のプライバシー: API キー、リモートデータベース、外部の埋め込み、テレメトリ、バックグラウンドアップロードは不要です。
- 明示的な MCP ワークフロー: エージェントが記憶と想起のタイミングを選択します。会話を自動的に傍受することはありません。
- 高速で確認しやすい: SQLite ストレージ、JSON エクスポート、CLI 診断、人間が読みやすいレコードを備えています。
- セキュリティを重視: API キー、ベアラートークン、パスワード、クラウド認証情報、秘密鍵とみられるものは、デフォルトで拒否されます。
2 分でインストールして使用する
公開 PyPI ディストリビューションの名前は repo-memory-mcp-ai です。短い名前の repo-memory-mcp は、すでに別のプロジェクトが所有しているためです。MCP サーバーと GitHub プロジェクトの識別名は、引き続き repo-memory-mcp です。
pip install repo-memory-mcp-ai
repo-memory doctor
MCP サーバーを直接起動します。
repo-memory-mcp
または、恒久的にインストールせずに実行します。
uvx --from repo-memory-mcp-ai repo-memory-mcp
サーバーはローカルで動作し、stdio 経由で通信します。API キーは必要ありません。
MCP クライアントを設定する
一般的な stdio 設定は次のとおりです。
{
"mcpServers": {
"repo-memory": {
"command": "uvx",
"args": ["--from", "repo-memory-mcp-ai", "repo-memory-mcp"]
}
}
}
MCP ホストで説明されている、クライアント固有の設定場所と形式を使用してください。すぐにコピーできる例は examples/ にあります。
このプロジェクトは特定のベンダーに依存せず、Claude Code、Cursor、Cline、Windsurf、その他の MCP 対応コーディングエージェントを対象としています。互換性は、ホストの MCP サポートと設定形式によって異なります。
推奨されるエージェントワークフロー
コーディングセッションの開始時に get_startup_context() を呼び出します。開発者が繰り返し発生するミスを修正したときは、remember_correction(topic, lesson) を呼び出します。関連する質問が生じたときは、recall_memory(query) を呼び出します。ガイダンスが古くなったときは、update_memory() を呼び出すか、forget_memory() でアーカイブします。
エージェントへの指示例:
At the start of this session, call get_startup_context. If I correct a repeated mistake or establish a durable project rule, store it with the appropriate repo-memory tool. Do not store credentials or transient chat context.
利用可能な MCP ツール
| ツール | 用途 |
|---|---|
get_startup_context | セッション開始時に、簡潔で価値の高いリポジトリのガイダンスを読み込みます |
remember_correction | 修正やバグ修正から得た教訓を保存します |
remember_rule | 永続的なプロジェクトルールや規約を保存します |
remember_decision | アーキテクチャ上の決定とその根拠を保存します |
recall_memory | 決定性のあるローカルスコアリングで、アクティブなメモリを検索します |
list_project_rules | アクティブなプロジェクトルールを一覧表示します |
list_memories | 種類またはステータスでメモリを絞り込みます |
update_memory | 既存のメモリを置き換えずに修正します |
forget_memory | 監査しやすい形で保持するため、古いメモリをアーカイブします |
export_memory / import_memory | 同じリポジトリの安全なコピー間で、検証済みのメモリを移動します |
CLI
repo-memory init
repo-memory list
repo-memory rules
repo-memory search "database migrations"
repo-memory export ./memory-backup.json
repo-memory import ./memory-backup.json
repo-memory doctor
プライバシーとセキュリティの境界
メモリはサーバーを実行しているマシン上に保存されます。この実装では、API キー、クラウドアカウント、リモートデータベース、外部の埋め込み表現、テレメトリーは必要ありません。メモリツールに明示的に送信されたテキストのみを検査します。オペレーティングシステム、パッケージマネージャー、バックアップ、MCP ホストには、それぞれ別の動作がある場合があります。
機密情報と思われる内容は、デフォルトで拒否されます。パスワード、トークン、秘密鍵、認証情報をメモリツールに送信しないでください。.repo-memory/ ディレクトリは Git の対象外となっているため、プライベートなメモリが誤ってコミットされることはありません。
開発
git clone https://github.com/Umarjaum/repo-memory-mcp.git
cd repo-memory-mcp
python -m venv .venv
. .venv/bin/activate
pip install -e '.[dev]'
pytest
発見と公開
- プロジェクトサイト:repo-memory-mcp.negoshades.workers.dev
- ドキュメント:クイックスタートとツール
- クライアントガイド:Claude、Cursor、VS Code、Cline、Windsurf
- 拡張機能:VS Code と Bing 対応ブラウザーコンパニオン
- コントリビューション:オープンソースへの貢献ガイド
- ソース:GitHub
- パッケージ:PyPI
- レジストリメタデータ:
server.json - 公開ガイド:
PUBLISHING.md
開発者
Muhammad Umar Jabbar — パキスタン、パンジャーブ州、ハーネーワール。個人ウェブサイト:umarjaum.netlify.app。
ロードマップ
今後の開発では、ランキングの改善、信頼度フィードバックの追加、オプションのローカル埋め込み表現の提供、プロジェクトコンテキストの生成、メモリ検査 UI の追加、コンパニオン拡張機能の公式マーケットプレイスへの公開などを検討しています。チーム共有メモリは、明示的なオプトイン方式を維持します。
コンパニオン拡張機能
extensions/vscodeは、VS Code 用のローカルセットアップコマンドを提供します。extensions/bingは、選択した Bing の調査内容を repo-memory のプロンプトに変換する、プライバシーに配慮した Manifest V3 のコンテキストメニューヘルパーを提供します。
ブラウザーコンパニオンは、ローカルの stdio MCP プロセスを意図的に呼び出しません。ブラウザーから MCP への直接統合には、別途レビューされたネイティブメッセージングブリッジが必要になります。
ライセンス
MIT。詳細はLICENSEを参照してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。