Skip to main content
Glama
crazyrabbitLTC

Code Review MCP Server

コードレビューサーバー

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 つの主要なツールを公開します。

  1. analyze_repo : Repomix を使用してコードベースをフラット化する

  2. 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 inspector

LLM統合

コード レビュー サーバーは、複数の 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-preview

LLM統合の仕組み

  1. code_reviewツールはRepomixを使用してコードを処理してリポジトリ構造をフラット化します。

  2. コードは、LLMコンテキストの制限内に収まるように必要に応じてフォーマットされ、チャンク化されます。

  3. 詳細なプロンプトは、焦点領域と詳細レベルに基づいて生成されます。

  4. プロンプトとコードは、選択したプロバイダーのLLM APIに直接送信されます。

  5. LLM応答は構造化された形式に解析される

  6. レビューは、問題点、強み、推奨事項を含む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"]
}

ライセンス

マサチューセッツ工科大学

Install Server
A
security – no known vulnerabilities
F
license - not found
A
quality - confirmed to work

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/crazyrabbitLTC/mcp-code-review-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server