critique-mcp
Provides tools for reviewing GitHub pull requests, including listing changed files with diffs, flagging missing test updates, running Ruff linting on changed Python files, and posting a review (comment, approve, or request changes) back to the PR.
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., "@critique-mcpReview PR #23 in acme/project: lint changed Python files, check tests, and post a review."
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.
critique-mcp
An MCP server that gives an agent the tools to actually review a pull request — not just summarize the diff, but pull it apart, lint the changed code, flag when tests weren't updated, and post a real review back to GitHub.
Python · Model Context Protocol · GitHub REST API
Tools
Tool | What it does |
| Files changed in a PR, with diff stats and patch text |
| Flags PRs that change source files without touching any test file |
| Runs |
| Submits a real review (comment / approve / request changes) on the PR |
Each tool is a thin, independently testable function — run_linter doesn't
know how check_test_coverage works, and neither talks to GitHub except
through GitHubClient. The agent decides how to combine them; this server
just gives it hands.
check_test_coverage is a PR-level heuristic, not per-file coverage
instrumentation: it flags "source files changed, zero test files touched
anywhere in this PR," the same coarse signal tools like Danger.js use. A PR
that changes five source files and touches one unrelated test won't be
flagged — a precise version would need real coverage data, not filenames.
Related MCP server: GitHub PR Reviewer
Why this exists
I've found and fixed exactly the kind of bug these tools catch, by hand, in other people's PRs — a vacuous-pass test assertion in chroma-core/chroma, a validator that only checked one element of a list in weaviate-python-client, a float-precision bug in qdrant-client. This turns that review process into tools an agent can call directly, instead of a human doing the same checks by hand every time.
Setup
Requires Python 3.11+, ruff on PATH, and a
GitHub personal access token with
repo scope (read-only is enough unless you want post_review to work).
cp .env.example .env # then add your token to .env
python -m venv .venv && source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install -r requirements.txtUsage
Add it to Claude Desktop / Claude Code's MCP config:
{
"mcpServers": {
"critique": {
"command": "python",
"args": ["-m", "critique_mcp.server"],
"env": { "GITHUB_TOKEN": "ghp_..." }
}
}
}Then ask the agent to use it: "Use critique to review PR #42 on owner/repo — check for lint issues and missing tests, then post a summary review."
Tests
pytestEvery GitHub API call is mocked in tests — nothing here makes a live network call unless you run the server itself.
This server cannot be deployed
Maintenance
Related MCP Connectors
Operate GitHub from your AI assistant: repos, PRs, issues, Actions. Previews and read-only mode.
Lets coding agents check their own code for leaked secrets, risky dependencies and AI-code mistakes
Screens public GitHub repos and PRs to generate risk maps, findings, and merge-readiness signals.
Pull change requests from your Amendor board into your coding agent to build and open PRs.
Related MCP Servers
- AlicenseAqualityCmaintenanceProvides GitHub PR review capabilities to LLMs, enabling automated PR analysis, review submission, and inline commenting via MCP.1414 npm1MIT
- AlicenseNot gradedqualityDmaintenanceEnables reviewing GitHub pull requests via ChatGPT, including listing PRs, viewing diffs, posting comments, approving, and requesting changes.MIT
- FlicenseAqualityDmaintenanceEnables LLM clients to list, read, review, and comment on GitHub pull requests, turning an AI assistant into a fully capable code reviewer.61-
- AlicenseNot gradedqualityCmaintenanceEnables AI assistants to autonomously review GitHub Pull Requests by listing PRs, retrieving diffs, and submitting structured reviews.ISC