Code Review Agent MCP
Code Review Agent MCP
お世辞を言わないAIコードレビューエージェント。コードが悪ければ、そのまま言う。遠慮なく。
AIを搭載したMCP(Model Context Protocol)サーバーで、経験豊富なメンテナーが本番プロジェクトのパッチをレビューするのと同じ方法でコードをレビューします。技術的に、直接的で、外交的ではありません。
できること
AIコードレビュー — コードスニペット、ファイル、git diff、コミットをレビュー
重大度ラベル付きの指摘を返す:
CRITICAL、MAJOR、MINOR、NIT、CLEANすべての指摘に具体的な行番号を記載
なぜ悪いのかを説明し、その修正方法を示す
明確な判定で締めくくる: 「Ship it.」または「Do not merge until...」
偽りの称賛なし。曖昧な言い回しなし。謝罪なし。無駄な言葉なし。
Related MCP server: greybeard
なぜ?
ほとんどのAIコードレビュアーは丁寧になるように訓練されています。彼らは「素晴らしいですが...」と前置きし、「考慮したほうがいいかもしれません」と曖昧にし、「これは潜在的に問題になる可能性があります」と指摘を和らげます。
それが本格的なコードレビューのやり方ではありません。実際のプロジェクト(Linuxカーネル、PostgreSQL、Redis、SQLite)では、メンテナーはパッチを直接レビューします。問題を見つけて明確に指摘します。彼らは作者の気分を良くするために存在するのではなく、コードを良くするために存在します。
このMCPはその伝統を具現化しています。その性格こそが製品なのです。
アンチRLHFエンジニアリング
LLMは丁寧になるようにRLHFで訓練されています。このAIエージェントは3つの層でそれに対抗します。
システムプロンプト — 12の基本原則(コードではなくコード、判定優先、重大度ラベル、行番号の引用、偽りの称賛なし、曖昧な言い回しなし、謝罪なし、無駄な言葉なし、二人称、人口統計への言及なし、拒否なし、幻覚のバグなし)
ポストプロセッサ — LLM出力から40以上の禁止フレーズ(曖昧な言い回し、和らげる言葉、謝罪、無駄な言葉)を除去
バリデータ — 出力に重大度ラベル、行番号の引用、判定があるかをチェックし、曖昧な問題記述を幻覚シグナルとしてフラグ付け
ツール
ツール | 説明 |
| コードスニペットをレビュー |
| ディスクからファイルをレビュー(サンドボックス化) |
| git diffをレビュー |
| gitコミットをレビュー( |
| 定義付きの重大度ラベルを一覧表示 |
厳しさレベル
レベル | 動作 |
| 表現を少し和らげます。それでもすべての指摘は報告します。 |
| デフォルトの率直なレビュー。直接的で、技術的で、外交的ではありません。 |
| 和らげません。「これは変更すべきです」ではなく「これは間違っています」。 |
| 最大限の率直さ。短い文。命令形。 |
インストール
pip install code-review-agent-mcpまたはuvを使用:
uv pip install code-review-agent-mcp設定
Claude Desktop
claude_desktop_config.jsonに追加:
{
"mcpServers": {
"code-review-agent": {
"command": "python",
"args": ["-m", "code_review_agent.server"]
}
}
}またはpipでインストールした場合:
{
"mcpServers": {
"code-review-agent": {
"command": "code-review-agent-mcp"
}
}
}Cursor
.cursor/mcp.jsonに追加:
{
"mcpServers": {
"code-review-agent": {
"command": "python",
"args": ["-m", "code_review_agent.server"]
}
}
}使用例
コードスニペットをレビュー
User: Review this code for me
def get_user(username):
import sqlite3
conn = sqlite3.connect("users.db")
cursor = conn.cursor()
query = f"SELECT * FROM users WHERE username = '{username}'"
cursor.execute(query)
return cursor.fetchone()MCPの応答:
## Code Review: snippet
### Findings
**CRITICAL** `snippet:7` — SQL injection
The query uses an f-string with user input, allowing SQL injection. Use parameterized queries: `cursor.execute("SELECT * FROM users WHERE username = ?", (username,))`.
### Verdict
Do not merge until CRITICAL is fixed.ファイルをレビュー
User: Review src/auth.py
MCP calls review_file with file_path="src/auth.py"
Returns blunt review with line citations.コミットをレビュー
User: Review the last commit
MCP calls review_commit with commit_ref="HEAD"
Returns blunt review of the diff.重大度ラベル
ラベル | 使用するタイミング |
CRITICAL | セキュリティ脆弱性、データ損失、デッドロック、RCE、壊れた状態で出荷されるもの |
MAJOR | ロジックエラー、競合状態、リソースリーク、壊れたエッジケース、誤った抽象化 |
MINOR | スタイル、命名、テスト不足、冗長なコード、脆い仮定 |
NIT | 見た目、フォーマット、コメントの言い回し |
CLEAN | セクションが問題ない場合は明示的に述べる。捏造バグバイアスを防ぐ。 |
セキュリティ
このMCPサーバーはセキュリティサンドボックスを実装しています:
ファイルアクセスはデフォルトで現在の作業ディレクトリにサンドボックス化されています
機密パス(
.ssh、.aws、.env、/etc/passwdなど)は拒否されますGit refsはオプションインジェクションを防ぐために厳格な文字ホワイトリストで検証されます
サブプロセス呼び出しは
shell=Falseを使用し、グローバルgit設定を無効にします
完全な脅威モデルについてはSECURITY.mdを参照してください。
開発
# Install in development mode
pip install -e ".[dev]"
# Run tests
pytest
# Run tests with coverage
pytest --cov=code_review_agentベンチマークスニペット
benchmarks/ディレクトリには、レビュアーを検証する5つの回帰スニペットが含まれています:
SQLインジェクション — CRITICAL、行番号の引用、「Do not merge」を期待
可変デフォルト引数 — MAJORを期待
クリーンなコード(二分探索) — CLEAN、「Ship it」を期待(アンチ幻覚テスト)
握りつぶされた例外 — MAJORを期待
オフバイワン — MAJORを期待
クリーンなコードのベンチマークが最も重要です — 幻覚を検出します。レビュアーが正しいコードにバグを捏造した場合、アンチRLHFシステムは壊れています。
ライセンス
MIT
謝辞
このプロジェクトは、カーネルメンテナーのコードレビューの伝統を具現化しています。これは多くのプロジェクト(Linuxカーネル、PostgreSQL、Redis、SQLiteなど)の多くのシニアエンジニアが実践している方法論です。私たちはその伝統を引用しており、特定の個人を引用しているわけではありません。
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
No tool schema history has been recorded yet.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
An MCP server that automatically collects feedback on your MCP server.
An MCP server that integrates with Discord to provide AI-powered features.
Vet any MCP server before you depend on it. Stamp: PASS, REVIEW, or BLOCK.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceAn MCP server that reviews code with the sarcastic and cynical tone of a grumpy senior developer, helping identify issues in PRs and providing feedback on code quality.1921MIT
- AlicenseNot gradedqualityDmaintenanceAn MCP server that provides AI-powered code review and architecture analysis, simulating the perspective of an experienced staff engineer. It integrates with IDEs to review diffs, design decisions, and tradeoffs through natural language.1MIT
- AlicenseNot gradedqualityFmaintenanceAn MCP server that provides senior-level code review, quality checks, security analysis, and refactoring suggestions directly in your editor.1MIT
- AlicenseAqualityBmaintenanceAn MCP server that lets AI agents review code using language models, supporting git diffs, files, and snippets with severity levels. Works with Ollama (local) and hosted providers like OpenAI, Anthropic, and OpenRouter.3MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/frangelbarrera/code-review-agent-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server