review-dojo-mcp
Automatically collects and stores review comments from GitHub PRs, enabling teams to share knowledge and prevent recurring issues.
Provides CI/CD integration to automatically comment on PRs with relevant knowledge from previous reviews.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@review-dojo-mcpsearch for security best practices in Java"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
PR Review Knowledge System
GitHub PRのレビューコメントから有益な指摘を自動収集・蓄積し、実装時に活用できる仕組み。
ドキュメント
ドキュメント | 内容 | 対象者 |
本番導入・CI/CD連携・MCPサーバー設定 | 導入担当者 | |
MCPサーバーの詳細仕様・API | 開発者 | |
よくある問題と解決方法 | 全ユーザー |
Related MCP server: Expert Among Us
概要
目的: PRレビューで得られた知見をチームで共有し、同じミスの再発を防止
対象: GitHub Organization内のpublicリポジトリ
実装状況
Phase | 機能 | ステータス |
Phase 1 | PRマージ時の自動収集・Markdown蓄積 | 完了 |
Phase 2 | MCPサーバー(Claude Code連携) | 完了 |
Phase 3 | CI/CD連携(PR自動コメント) | 完了 |
クイックスタート
ローカルで試す(2分)
git clone https://github.com/yourorg/review-dojo-mcp.git
cd review-dojo-mcp
npm install
npm run build
npm testMCPサーバーを試す(3分)
# Claude Code の設定に追加
claude mcp add review-dojo node $(pwd)/dist/interfaces/mcp/McpServer.jsClaude Code で「Javaのセキュリティに関する知見を検索して」と質問して動作確認。
本番導入
自組織への完全な導入手順は 統合ガイド を参照してください:
Phase 1: 知見収集システム(30-45分)
Phase 2: MCPサーバー導入(10-15分)
Phase 3: CI/CD連携(15-20分)
GitHub Enterprise対応
GitHub Enterprise (GHE) 環境で使用する場合は、以下の環境変数を設定してください。
環境変数
環境変数 | 説明 | デフォルト値 | 例 |
| GitHubホスト名 |
|
|
| GitHub API URL |
|
|
| 組織名 |
|
|
設定例
MCP設定(claude_desktop_config.json)
{
"mcpServers": {
"review-dojo": {
"command": "node",
"args": ["/path/to/review-dojo-mcp/dist/interfaces/mcp/McpServer.js"],
"env": {
"GITHUB_HOST": "github.example.com",
"GITHUB_API_URL": "https://github.example.com/api/v3",
"GITHUB_ORG_NAME": "my-org",
"GITHUB_TOKEN": "ghp_xxx",
"REVIEW_DOJO_GITHUB_REPO": "my-org/review-dojo-knowledge"
}
}
}
}GitHub Actions
GitHub Actionsでは、Repository Variables を使用してカスタマイズできます:
Variable | 用途 | 例 |
| 知見リポジトリ |
|
| review-dojo-action の参照 |
|
| action のバージョン |
|
詳細は 統合ガイド を参照してください。
Phase機能一覧
Phase 1: 知見収集(MVP)
PRマージ時に自動的にレビューコメントを収集・分析し、カテゴリ別にMarkdownファイルへ蓄積。
Claude Codeによる AI分析・抽出
類似知見のマージ・発生回数カウント
機密情報の自動マスク
100件/ファイル上限でアーカイブ
Phase 2: MCPサーバー
Claude Code から蓄積された知見を検索・参照。
search_knowledge: 知見検索(カテゴリ・言語・重要度でフィルタ)get_knowledge_detail: 知見詳細取得generate_pr_checklist: 変更ファイルから関連知見をチェックリスト化list_categories/list_languages: メタデータ取得
詳細: MCP技術仕様
Phase 3: CI/CD連携
PR作成時に関連知見を自動コメント。GitHub Actions / Screwdriver CI対応。
詳細: 統合ガイド
システム構成
┌─────────────────────────────────────────┐
│ 各リポジトリ │
│ ┌────────────────────────────────┐ │
│ │ PR マージ │ │
│ └────────┬───────────────────────┘ │
│ │ repository_dispatch │
└───────────┼─────────────────────────────┘
▼
┌─────────────────────────────────────────┐
│ review-dojo (knowledge-repo) │
│ 1. PRコメント取得 │
│ 2. Claude Code で分析 │
│ 3. 知見抽出・Markdown更新 │
└─────────────────────────────────────────┘アーキテクチャ
オニオンアーキテクチャ(4層)を採用:
層 | 責務 | 主要コンポーネント |
Interfaces | エントリーポイント | McpServer, CheckKnowledgeCli |
Application | ユースケース | SearchKnowledgeUseCase, GeneratePRChecklistUseCase |
Domain | ビジネスロジック | KnowledgeFile, KnowledgeItem, SensitiveInfoMasker |
Infrastructure | 外部連携 | FileSystemKnowledgeRepository, MarkdownSerializer |
依存関係ルールは ts-arch で自動検証: npm test tests/architecture
ディレクトリ構造
review-dojo/
├── src/ # TypeScript ソースコード(オニオンアーキテクチャ)
│ ├── domain/ # ドメイン層(ビジネスロジック)
│ ├── application/ # アプリケーション層(ユースケース)
│ ├── infrastructure/ # インフラ層(ファイルI/O、シリアライズ)
│ └── interfaces/ # インターフェース層(CLI、MCP Server)
├── dist/ # ビルド出力(src/のコンパイル結果)
├── tests/ # テストコード
│ ├── domain/ # ドメイン層のテスト
│ ├── infrastructure/ # インフラ層のテスト
│ └── architecture/ # アーキテクチャテスト(ts-arch)
├── security/ # セキュリティ関連知見
├── performance/ # パフォーマンス関連知見
├── readability/ # 可読性・命名関連知見
├── design/ # 設計・アーキテクチャ関連知見
├── testing/ # テスト関連知見
├── error-handling/ # エラーハンドリング関連知見
├── other/ # その他
└── archive/ # アーカイブ(100件超過時)知見のフォーマット
## SQLインジェクション対策
- **重要度**: critical
- **発生回数**: 3
- **概要**: PreparedStatementを使用せず文字列結合でSQLを組み立てている
- **推奨対応**: 必ずPreparedStatementまたはORMのパラメータバインディングを使用する
- **コード例**:
```java
// NG
String sql = "SELECT * FROM users WHERE id = " + userId;// OK
PreparedStatement ps = conn.prepareStatement("SELECT * FROM users WHERE id = ?");対象ファイル例:
src/main/java/UserDao.java参照PR:
## 開発
### ビルド
```bash
# TypeScriptをビルド
npm run build
# 開発時の自動ビルド(ウォッチモード)
npm run build -- --watchテスト
# 単体テスト実行
npm test
# カバレッジ確認
npm run test:coverage
# UI モード
npm run test:ui
# アーキテクチャテスト(ts-arch)
# オニオンアーキテクチャの依存関係ルールを検証
npm test tests/architectureライセンス
MIT
参考資料
This server cannot be deployed
Maintenance
Related MCP Connectors
Code intelligence for LLMs. Analyze, search, and retrieve code from any public git repository.
Ask any GitHub repository a question. Get source-backed answers.
Screens public GitHub repos and PRs to generate risk maps, findings, and merge-readiness signals.
Code intelligence for coding agents: semantic, AST, graph, and full-text search. 279+ languages.
Related MCP Servers
- AlicenseNot gradedqualityAmaintenanceEnables AI agents to search and retrieve context from GitHub issues, pull requests, releases, and documentation using hybrid semantic search and time-ordered activity scans.108 npmApache 2.0
- AlicenseNot gradedqualityDmaintenanceIndexes commit history to create a queryable expert, providing insights into code evolution, developer intent, and hidden patterns beyond static code analysis.MIT
- AlicenseNot gradedqualityAmaintenanceRetrieves historical pull request context from GitHub repositories and provides it to IDE agents for reasoning, review, and code generation without modifying files.7MIT
- FlicenseNot gradedqualityCmaintenanceEnables tracing any line in a local git repository back to the commit that actually introduced it and the PR/review discussion behind it, overcoming git blame's misleading last-touch attribution.-