Repository Analyzer MCP Server について
コードリポジトリを調べる開発者向けのMCPサーバーです。構造や依存関係、検索、Git履歴の確認に加え、Nostr、NDK、NIPsの分析にも対応します。
主な機能
- 01構造、コンポーネント、依存関係の分析
- 02パターンによるコード検索
- 03リポジトリやファイルのGit履歴確認
- 04ファイルの読み取りとディレクトリ一覧
- 05NDKとNostrプロトコルの分析
活用シーン
- 01リポジトリの構成やAPIの把握
- 02パターンに合うコードの検索
- 03ファイルの最近の変更の確認
- 04NDK実装やNIPsの分析
MCP 対応
リポジトリ分析ツールをMCPクライアントに提供し、ファイル内容の読み取りやディレクトリ一覧のリソースも公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
リポジトリー分析 MCP サーバー
コードリポジトリーを分析するためのツールを提供する Model Context Protocol(MCP)サーバーです。特に Nostr 関連プロジェクトに重点を置いています。
機能
- コード構造、コンポーネント、依存関係、最近の変更を分析します
- パターンマッチングを使ってリポジトリー内のコードを検索します
- リポジトリー全体または特定のファイルの git 履歴を確認します
- ファイルの内容やディレクトリー一覧にアクセスします
- NDK(Nostr Development Kit)リポジトリーの分析に特化したツールを提供します
- Nostr Protocol の実装と NIP(Nostr Implementation Possibilities)を分析します
インストール
-
このリポジトリーをクローンします
-
依存関係をインストールします:
npm install
- プロジェクトをビルドします:
npm run build
使い方
リポジトリーパスの設定
MCP サーバーは、次の方法でファイルパスを処理します:
デフォルトのアクセス動作
-
デフォルトのアクセス:パスを指定しない場合、サーバーはデフォルトで現在の作業ディレクトリー(cwd)にアクセスします。
-
特定のディレクトリーを設定する:Claude がアクセスできるディレクトリーを指定するには、Claude の設定で
DEFAULT_REPO_PATH環境変数を設定します。 -
コマンドごとの上書き:次のように、コマンド内の
repoPathパラメーターを使ってデフォルトのパスを上書きできます:analyze-code --focus=structure --repoPath=/another/directory -
クライアントの権限:Claude for Desktop は、ファイルシステムにアクセスするツールを実行する前に許可を求めます。
複数のリポジトリーの分析
コマンドでリポジトリーパスを直接指定すれば、サーバーを再起動せずに複数のリポジトリーを分析できます:
# Analyze structure of a specific repository
analyze-repo --focus=overview --repoType=generic --repoPath=/path/to/specific/repo
# Analyze code in a different repository
analyze-code --focus=structure --path=src/index.js --repoPath=/path/to/another/repo
# Search for patterns in yet another repository
search-code --query="addEventListener" --filePattern="*.js" --repoPath=/path/to/third/repo
すべての分析ツール(analyze-repo、analyze-code、search-code、git-history、analyze-ndk、analyze-ndk-files、analyze-nostr-protocol)は repoPath パラメーターを受け付けます。このパラメーターはデフォルトのパスを上書きします。
Claude Desktop への接続
この MCP サーバーを Claude Desktop に接続するには:
- Claude Desktop の設定ファイルを編集します:
# On macOS
nano ~/Library/Application\ Support/Claude/claude_desktop_config.json
# On Windows
# Edit %AppData%\Claude\claude_desktop_config.json
- サーバーの設定を追加します:
{
"mcpServers": {
"repo-analyzer": {
"command": "node",
"args": [
"/absolute/path/to/repo-analyzer-mcp/dist/index.js"
],
"transport": "stdio",
"env": {
"NODE_ENV": "production",
"DEFAULT_REPO_PATH": "/path/to/default/repository"
}
}
}
}
/absolute/path/to/repo-analyzer-mcp はこのツールをインストールした実際のフルパスに、/path/to/default/repository はデフォルトで分析するリポジトリーのパスに置き換えてください。
- ファイルを保存し、Claude Desktop を再起動します。
トラブルシューティング
Claude Desktop が起動しない場合や、MCP サーバーが表示されない場合:
- 設定ファイルに JSON 構文エラーがないか確認します
- すべてのパスが絶対パス(フルパス)であり、正しいことを確認します
- 各オブジェクトの最後の項目の後に余分なカンマがないことを確認します
- Claude Desktop のログでエラーを確認します:
~/Library/Logs/Claude/mcp*.log - さらにデバッグするには、設定の
envセクションに"DEBUG": "mcp:*"を追加します - Claude Desktop を再起動します
利用可能なツール
analyze-code
異なる分析対象に基づいてコードファイルを分析します:
structure:行数、関数、クラスなど、ファイル構造を調べますcomponents:React コンポーネントやフックの使用状況などを特定しますdependencies:インポートと依存関係を一覧表示しますchanges:ファイルの最近の git 履歴と変更を表示します
例:
Analyze the code structure of src/index.ts
search-code
必要に応じてファイルパターンで絞り込みながら、リポジトリー内で特定のパターンを検索します。
例:
Search the code for "addEventListener" in .js files
git-history
リポジトリーまたは特定のファイルの git コミット履歴を取得します。
例:
Show me the git history for README.md, limit to 5 commits
analyze-ndk
次の項目に重点を置いて Nostr Development Kit(NDK)リポジトリーを分析します:
implementation:コア実装の詳細migrations:バージョン変更と移行ガイドall:実装と移行の両方
リポジトリーパスを明示して実行する例:
Analyze NDK implementation at /path/to/ndk-repo
analyze-ndk-files
次の項目に重点を置いて NDK のファイル構造を調べます:
overview:リポジトリーの全般的な概要components:コンポーネントのアーキテクチャapi:API の構造と設計architecture:全体的なアーキテクチャとパターンall:包括的な分析
リポジトリーパスを明示して実行する例:
Analyze NDK files with focus on components at /path/to/ndk-repo
analyze-nostr-protocol
Nostr プロトコルのリポジトリを、以下に重点を置いて分析します。
events:NIP で定義されているイベントの種類と構造implementations:さまざまな言語における実装の詳細
リポジトリのパスを明示して実行する例:
Analyze Nostr Protocol events at /path/to/nips-repo with focus on social context
analyze-repo
さまざまな分析対象に対応した、リポジトリの一般的な分析を行います。
overview:リポジトリの概要情報components:コンポーネントの構造と構成api:API の定義と構造architecture:アーキテクチャ全体のパターンimplementation:実装の詳細all:すべての側面を網羅的に分析
例:
Analyze the repo with focus on architecture
リソース
サーバーでは、以下にもアクセスできます。
file://{filePath}:リポジトリからファイルの内容を読み取りますdir://{dirPath}:リポジトリからディレクトリの内容を一覧表示します
例:
Show me the content of the package.json file
専門的な分析に必要なディレクトリ構造
専門的な分析ツールを正しく動作させるには、リポジトリが特定の構造に従っている必要があります。
NDK リポジトリの構造
アナライザーは、以下のいずれかの構造を検索します。
- ルートに
package.jsonがあり、その名前が@nostr-dev-kit/ndkのリポジトリ ndkディレクトリ内にpackage.jsonがあり、その名前が@nostr-dev-kit/ndkのリポジトリ
Nostr プロトコルリポジトリの構造
アナライザーは、以下のいずれかの構造を検索します。
- NIP 用の Markdown ファイルを含む
nipsディレクトリがあるリポジトリ - README に「NIP」と「Nostr Implementation Possibilities」の記載があるリポジトリ
package.jsonの名前、説明、またはキーワードに「nostr」が含まれているリポジトリ
開発
開発モードで実行するには:
npm run dev
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。