Code Research MCP Server について
Code Research MCP Server は、複数のプラットフォームからプログラミング情報を検索する手段を LLM に提供します。コード例、ドキュメント、Q&A、パッケージ情報をまとめ、検索結果をキャッシュします。
主な機能
- 01Stack Overflow の質問と回答を検索
- 02MDN ドキュメントを検索
- 03GitHub のリポジトリとコードを検索
- 04npm と PyPI のパッケージ情報を取得
- 05複数サイトを並列検索し結果をキャッシュ
活用シーン
- 01プログラミングの疑問への回答を探す
- 02Web 開発ドキュメントを調べる
- 03リポジトリ、コード例、パッケージを比較
MCP 対応
MCP クライアントに、各情報源の個別検索と全サイトの一括検索を含む、プログラミング情報検索ツールを公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Code Research MCP Server
複数のプラットフォームにわたるプログラミングリソースを検索・利用するためのツールを提供する、Model Context Protocol サーバーです。このサーバーは、人気の開発者向けプラットフォームと連携し、LLM が関連するコード例、ドキュメント、パッケージを見つけられるよう支援します。
機能
対応プラットフォーム
- Stack Overflow - プログラミングに関する Q&A
- MDN Web Docs - ウェブ開発ドキュメント
- GitHub - コードとリポジトリの検索
- npm - JavaScript パッケージレジストリ
- PyPI - Python パッケージインデックス
ツール
search_stackoverflow
Stack Overflow でプログラミングに関する質問と回答を検索します。
- パラメーター:
query(必須):検索クエリ文字列limit(任意):最大結果数(1~10、デフォルト:5)
- 戻り値:スコア、回答数、抜粋を含む、質問の書式付きリスト
- 結果は1時間キャッシュされます
search_mdn
MDN Web Docs でウェブ開発ドキュメントを検索します。
- パラメーター:
query(必須):検索クエリ文字列
- 戻り値:概要とリンクを含む、上位5件の MDN ドキュメントの検索結果
- 結果は1時間キャッシュされます
search_github
GitHub でリポジトリとコード例の両方を検索します。
- パラメーター:
query(必須):検索クエリ文字列language(任意):プログラミング言語で絞り込みlimit(任意):カテゴリーごとの最大結果数(1~10、デフォルト:5)
- 戻り値:次の2つのセクション:
- スター数順の上位リポジトリ
- リポジトリの情報を含む関連コードファイル
- 結果は1時間キャッシュされます
search_npm
npm レジストリで JavaScript パッケージを検索します。
- パラメーター:
query(必須):検索クエリ文字列limit(任意):最大結果数(1~10、デフォルト:5)
- 戻り値:バージョン、説明、ダウンロード統計などのパッケージ情報
- 結果は1時間キャッシュされます
search_pypi
PyPI で Python パッケージを検索します。
- パラメーター:
query(必須):検索クエリ文字列
- 戻り値:バージョン、作成者、リンクなどの詳細なパッケージ情報
- 結果は1時間キャッシュされます
search_all
すべてのプラットフォームを同時に検索し、幅広い結果を取得します。
- パラメーター:
query(必須):検索クエリ文字列limit(任意):プラットフォームごとの最大結果数(1~5、デフォルト:3)
- 戻り値:すべてのプラットフォームから統合した結果:
- Stack Overflow の質問と回答
- MDN ドキュメント
- GitHub のリポジトリとコード
- npm パッケージ
- PyPI パッケージ
- 結果は1時間キャッシュされます
- 注:応答を高速化するため、すべての検索を並行して実行します
必要条件
- Node.js >= 20.11.0
- npm >= 10.0.0
- 任意:API のレート制限を緩和するための GitHub 個人アクセストークン
インストール
Smithery 経由でのインストール
Smithery 経由で Code Research Server を Claude Desktop に自動インストールするには:
npx -y @smithery/cli install @nahmanmate/code-research-mcp-server --client claude
手動インストール
- リポジトリをクローンし、依存関係をインストールします:
git clone https://github.com/nahmanmate/code-research-mcp-server.git
cd code-research-server
npm install
- サーバーをビルドします:
npm run build
- MCP 設定を構成します:
サーバーの設定を MCP 設定ファイルに追加します:
- VSCode:
~/.vscode-server/data/User/globalStorage/rooveterinaryinc.roo-cline/settings/cline_mcp_settings.json - Claude Desktop:
- MacOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%/Claude/claude_desktop_config.json
- MacOS:
{
"mcpServers": {
"code-research": {
"command": "node",
"args": ["/absolute/path/to/code-research-mcp-server/build/index.js"],
"env": {
"GITHUB_TOKEN": "your_github_token" // Optional: Prevents rate limiting
},
"disabled": false,
"alwaysAllow": []
}
}
}
注:/absolute/path/to は、リポジトリをクローンした実際のパスに置き換えてください。
開発
開発モードでの実行
変更時に自動で再ビルドする開発環境を実行するには:
npm run watch
エラー処理
サーバーは堅牢なエラー処理を実装しています。
- 各プラットフォームに固有の API エラーメッセージ
- GitHub API のレート制限への対応
- サービスが利用できない場合の適切なフォールバック
- API の負荷を軽減するキャッシュ済みレスポンス
デバッグ
MCP サーバーは標準入出力(stdio)経由で通信するため、デバッグが困難な場合があります。詳細なリクエスト/レスポンスの監視には、MCP Inspector を使用してください。
npm run inspector
Inspector では、次の情報を確認できます。
- リクエスト/レスポンスのリアルタイム監視
- ツール実行のトレース
- エラースタックトレース
- パフォーマンス指標
提供された URL にブラウザーからアクセスして、デバッグインターフェースを使用してください。
キャッシュ
結果は node-cache を使用してキャッシュされます。
- デフォルトの TTL:1 時間
- クエリと上限の組み合わせごとに個別のキャッシュキーを使用
- プラットフォーム固有のキャッシュ戦略
- メモリー効率の高いストレージ
貢献
- リポジトリをフォークします
- 機能ブランチを作成します
- 変更をコミットします
- ブランチにプッシュします
- プルリクエストを作成します
ライセンス
AGPLv3
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。