🤖 AI Code Review MCP Server について
AI Code Review MCP Serverは、コミットタイプ別にGitHubのPRを分析し、品質・セキュリティ・性能を評価します。コードレビューを行うチーム向けで、統合チェックリストやMarkdownレポートも生成します。
主な機能
- 01コミットタイプ別のPR分析
- 02複雑さと保守性の評価
- 03セキュリティ脆弱性の検査
- 04性能への影響分析
- 05統合レビューとMarkdownレポート
活用シーン
- 01マージ前のGitHub PRレビュー
- 02コミットタイプ別ガイドに沿った変更確認
- 03統合レビュー報告書の作成
MCP 対応
`analyze_pr`などのMCPツールを通じて、MCPクライアントにPR分析とレビュー機能を公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
🤖 AI コードレビュー MCP サーバー
AI を活用したコードレビューと品質管理のための MCP(Model Context Protocol)サーバーです。
✨ 主な機能
🔍 AI コードレビュー
- コミットタイプ別の分析:feat、fix、refactor などのタイプに合わせたレビュー
- 品質スコアの算出:複雑さ、保守性、セキュリティなどを多角的に評価
- セキュリティ脆弱性の検査:潜在的なセキュリティ問題を自動検出
- パフォーマンスへの影響分析:パフォーマンスへの影響を評価
📋 統合レビューシステム
- コミットタイプ別の分析:各コミットタイプに合わせて個別に分析
- 統合レビューのチェック:すべての分析結果を一度に確認
- チェックリストの提供:見落としやすいレビューポイントをチェック
- マークダウンレポート:総合レビューの結果をマークダウン形式で生成
🎯 レビューガイド
- タイプ別ガイド:コミットタイプに合わせたレビューガイドを生成
- ベストプラクティス:各タイプの推奨事項を提示
- 注意事項:よくある問題を事前に案内
🚀 クイックスタート
1. 環境設定
# 저장소 클론
git clone <repository-url>
cd ai-review-mcp-server
# 의존성 설치
npm install
# 환경 변수 설정
cp .env.example .env
2. 環境変数の設定
# Claude API 설정
CLAUDE_API_KEY=sk-ant-api-03-xxx
# GitHub 설정
GITHUB_TOKEN=ghp_xxx
GITHUB_WEBHOOK_SECRET=your-webhook-secret
# 서버 설정
PORT=3001
NODE_ENV=development
3. サーバーの起動
# 개발 모드 (자동 재시작)
npm run dev
# 프로덕션 모드
npm run build
npm start
4. ウェブ UI にアクセス
ブラウザーで http://localhost:3001 にアクセスすると、ウェブ UI を使用できます。
🖥️ ウェブ UI の使い方
PR 分析
- リポジトリを入力:
owner/repo形式で入力 - PR 番号を入力:分析する PR の番号を入力
- コミットタイプを選択:適切なコミットタイプを選択
- 分析を実行:「PR 分析」ボタンをクリック
統合レビューのチェック
- PR 分析の完了後、「統合レビューのチェック」ボタンをクリック
- モーダルでコミットタイプ別の分析結果を確認
- 統合レビューガイドを確認
- チェックリストを使ってレビューを実施
🔧 API エンドポイント
HTTP API
# PR 분석
POST /analyze
{
"repo": "owner/repo",
"pr_number": 123,
"commit_type": "feat",
"enable_split": true,
"deep_analysis": false
}
# 리뷰 가이드 생성
POST /review-guide
{
"commit_type": "feat",
"file_changes": ["src/component.tsx"]
}
# 품질 점수 계산
POST /quality-score
{
"changes": [...],
"metrics": {}
}
# 헬스 체크
GET /health
MCP ツール
// MCP 클라이언트에서 사용
{
"method": "tools/call",
"params": {
"name": "analyze_pr",
"arguments": {
"repo": "owner/repo",
"pr_number": 123,
"commit_type": "feat"
}
}
}
🐳 Docker の使用
Docker のビルドと実行
# Docker 이미지 빌드
npm run docker:build
# Docker 컨테이너 실행
npm run docker:run
Docker Compose
# 전체 스택 실행
docker-compose up -d
# 로그 확인
docker-compose logs -f ai-review
⚙️ GitHub Webhook の設定
- GitHub リポジトリ → Settings → Webhooks
- Payload URL:
https://your-domain.com/webhook - Content type:
application/json - Events:
Pull requests - Secret:
.envのGITHUB_WEBHOOK_SECRETの値
📊 応答形式
PR 分析の応答
{
"success": true,
"pr_number": 123,
"repo": "owner/repo",
"analyzed_at": "2024-06-04T10:30:00Z",
"by_commit_type": {
"feat": {
"analysis": {
"summary": "새로운 기능 분석 요약",
"quality_score": 87,
"review_points": ["...", "..."],
"suggestions": ["...", "..."],
"security_concerns": ["..."],
"performance_impact": ["..."]
},
"guide": {
"title": "새로운 기능 개발 리뷰 가이드",
"checklist": ["...", "..."],
"focus_areas": ["...", "..."],
"common_issues": ["...", "..."],
"best_practices": ["...", "..."]
}
}
},
"summary_review": {
"markdown": "# 📋 PR 종합 리뷰\n\n..."
}
}
🛠️ カスタマイズ
レビューテンプレートの変更
src/handlers/claude-client.ts でプロンプトテンプレートを変更できます。
private getCommitTypeGuidelines(commitType: string): string {
// 커밋 타입별 가이드라인 커스터마이징
}
品質スコアの基準調整
src/handlers/pr-analyzer.ts で品質スコアの計算ロジックを変更できます。
async calculateQualityScore(changes: any[], metrics: any = {}) {
// 품질 점수 계산 로직 커스터마이징
}
🚨 トラブルシューティング
よくある問題
-
CLAUDE_API_KEY エラー
- Claude API キーが正しいことを確認
- キーの権限と残高を確認
-
GITHUB_TOKEN エラー
- GitHub Personal Access Token を確認
- repo 権限があることを確認
-
PR 分析の失敗
- PR が存在することを確認
- リポジトリへのアクセス権限を確認
ログの確認
# 개발 모드에서 상세 로그 확인
DEBUG=* npm run dev
# 프로덕션 로그 확인
docker-compose logs ai-review
📝 コントリビュート
- リポジトリをフォークします
- フィーチャーブランチを作成します(
git checkout -b feature/amazing-feature) - 変更をコミットします(
git commit -m 'Add some amazing feature') - ブランチにプッシュします(
git push origin feature/amazing-feature) - プルリクエストを作成します
📄 ライセンス
MIT License — 詳細については LICENSE ファイルを参照してください。
🙏 謝辞
- Anthropic — Claude API の提供
- Model Context Protocol — MCP フレームワーク
- GitHub — GitHub API の提供
김정규 が ❤️ を込めて作成
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。