コードレビューサーバー
Repomix と LLM を使用してコードレビューを実行するカスタム MCP サーバー。
特徴
Repomix を使用してコードベースをフラット化する
大規模言語モデルでコードを分析する
具体的な問題と推奨事項を含む構造化されたコードレビューを取得します
複数の LLM プロバイダー (OpenAI、Anthropic、Gemini) のサポート
大規模なコードベースのチャンク化を処理
Related MCP server: MCP Prompt Enhancer
インストール
# Clone the repository
git clone https://github.com/yourusername/code-review-server.git
cd code-review-server
# Install dependencies
npm install
# Build the server
npm run build構成
.env.exampleテンプレートに基づいて、ルート ディレクトリに.envファイルを作成します。
cp .env.example .env.envファイルを編集して、優先する LLM プロバイダーと API キーを設定します。
# LLM Provider Configuration
LLM_PROVIDER=OPEN_AI
OPENAI_API_KEY=your_openai_api_key_here使用法
MCPサーバーとして
コード レビュー サーバーはモデル コンテキスト プロトコル (MCP) を実装しており、任意の MCP クライアントで使用できます。
# Start the server
node build/index.jsサーバーは 2 つの主要なツールを公開します。
analyze_repo: Repomix を使用してコードベースをフラット化するcode_review: LLMを使用してコードレビューを実行します
MCPツールを使用する場合
このサーバーは、異なるコード分析ニーズに対応する 2 つの異なるツールを提供します。
分析リポジトリ
次の場合にこのツールを使用します。
コードベースの構造と構成の概要を把握する
初期分析のためにリポジトリをテキスト表現にフラット化する
詳細な確認なしでディレクトリ構造とファイルの内容を理解する
より詳細なコードレビューの準備
コードベースを素早くスキャンして、さらに分析する必要がある関連ファイルを特定します。
例:
「レビューする前にこのリポジトリの構造を理解したい」
「このコードベースに含まれるファイルとディレクトリを表示してください」
「コードの構成を理解するために、コードを平面的に表示してください」
コードレビュー
次の場合にこのツールを使用します。
包括的なコード品質評価を実行する
特定のセキュリティ脆弱性、パフォーマンスのボトルネック、コード品質の問題を特定する
コードを改善するための実用的な推奨事項を入手する
問題の重大度評価を含む詳細なレビューを実施する
ベストプラクティスに照らしてコードベースを評価する
例:
「このコードベースのセキュリティ上の脆弱性を確認してください」
「これらの特定のJavaScriptファイルのパフォーマンスを分析します」
「このリポジトリの詳細なコード品質評価を教えてください」
「私のコードをレビューして、保守性を向上させる方法を教えてください」
パラメータを使用する場合:
specificFiles: リポジトリ全体ではなく、特定のファイルのみをレビューしたい場合fileTypes: 特定のファイル拡張子(例: .js、.ts)に焦点を当てたい場合detailLevel: 簡単な概要には「basic」、詳細な分析には「detailed」を使用しますfocusAreas: 特定の側面(セキュリティ、パフォーマンスなど)を優先したい場合
CLIツールの使用
テスト目的では、付属の CLI ツールを使用できます。
node build/cli.js <repo_path> [options]オプション:
--files <file1,file2>: レビューする特定のファイル--types <.js,.ts>: レビューに含めるファイルの種類--detail <basic|detailed>: 詳細レベル(デフォルト: details)--focus <areas>: 重点を置く領域 (セキュリティ、パフォーマンス、品質、保守性)
例:
node build/cli.js ./my-project --types .js,.ts --detail detailed --focus security,quality発達
# Run tests
npm test
# Watch mode for development
npm run watch
# Run the MCP inspector tool
npm run inspectorLLM統合
コード レビュー サーバーは、複数の LLM プロバイダー API と直接統合されます。
OpenAI (デフォルト:gpt-4o)
人間中心的(デフォルト:claude-3-opus-20240307)
Gemini (デフォルト: gemini-1.5-pro)
プロバイダー構成
.envファイルで、優先する LLM プロバイダーを構成します。
# Set which provider to use
LLM_PROVIDER=OPEN_AI # Options: OPEN_AI, ANTHROPIC, or GEMINI
# Provider API Keys (add your key for the chosen provider)
OPENAI_API_KEY=your-openai-api-key
ANTHROPIC_API_KEY=your-anthropic-api-key
GEMINI_API_KEY=your-gemini-api-keyモデル構成
オプションで、各プロバイダーに使用するモデルを指定できます。
# Optional: Override the default models
OPENAI_MODEL=gpt-4-turbo
ANTHROPIC_MODEL=claude-3-sonnet-20240229
GEMINI_MODEL=gemini-1.5-flash-previewLLM統合の仕組み
code_reviewツールはRepomixを使用してコードを処理してリポジトリ構造をフラット化します。コードは、LLMコンテキストの制限内に収まるように必要に応じてフォーマットされ、チャンク化されます。
詳細なプロンプトは、焦点領域と詳細レベルに基づいて生成されます。
プロンプトとコードは、選択したプロバイダーのLLM APIに直接送信されます。
LLM応答は構造化された形式に解析される
レビューは、問題点、強み、推奨事項を含むJSONオブジェクトとして返されます。
実装には、API エラーに対する耐性のための再試行ロジックと、最も関連性の高いコードがレビューに含まれるようにするための適切なフォーマットが含まれています。
コードレビューの出力形式
コードレビューは構造化された JSON 形式で返されます。
{
"summary": "Brief summary of the code and its purpose",
"issues": [
{
"type": "SECURITY|PERFORMANCE|QUALITY|MAINTAINABILITY",
"severity": "HIGH|MEDIUM|LOW",
"description": "Description of the issue",
"line_numbers": [12, 15],
"recommendation": "Recommended fix"
}
],
"strengths": ["List of code strengths"],
"recommendations": ["List of overall recommendations"]
}ライセンス
マサチューセッツ工科大学
Appeared in Searches
- Research assistant for AI and ML papers, code, and methodology
- A service for finding coding review resources and best practices
- Security testing, penetration testing, and code auditing services
- Software Development Lifecycle Guide and Resources
- General search for programming code or coding-related information