Gemini PR Reviews MCP Server
MCP (Model Context Protocol) server for fetching Gemini Code Assist reviews from GitHub pull requests. This tool allows Claude Desktop to retrieve and analyze code reviews from Gemini Code Assist bot on GitHub PRs.
Features
- Fetch all Gemini Code Assist reviews from a GitHub PR
- Get reviews after your last
/gemini reviewcomment (default behavior) - Smart defaults: auto-detect repository owner and last PR
- GitHub token authentication support
- Full pagination support for large PRs
- Retrieves all comment types (reviews, line comments, issue comments)
- Raw JSON output for maximum flexibility
- Easy installation with provided script
Installation
- Clone or download this repository
- Run the installation script:
cd /path/to/gh_tool
./install.sh
This will:
- Create a Python virtual environment
- Install all required dependencies
- Create a
.envfile (if it doesn't exist) - Make scripts executable
- Edit the
.envfile with your GitHub token:
GITHUB_TOKEN=your_actual_github_token_here
To get a GitHub token:
- Go to https://github.com/settings/tokens
- Click "Generate new token (classic)"
- Give it a name and select the
reposcope - Copy the generated token
Configuration for Claude Desktop
Add this server to your Claude Desktop configuration (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"gemini-pr-reviews": {
"command": "/path/to/gh_tool/run.sh"
}
}
}
Replace /path/to/gh_tool with the actual path to this directory.
Note: The run.sh script automatically activates the virtual environment and runs the server. Your GitHub token should be in the .env file.
Available Tool
get_gemini_reviews
Get Gemini Code Assist reviews from a GitHub PR. Can fetch all reviews or only those after your last '/gemini review' comment.
Parameters:
repo(string, required): Repository name or owner/repo format- If just repo name:
"YtbMp3Indir"- uses authenticated user as owner - Full format:
"owner/RepoName" pr(integer, optional): PR number (uses last PR if not specified)after_last_review(boolean, optional): If true, only fetch reviews after your last '/gemini review' comment (default: true)username(string, optional): GitHub username (only used when after_last_review is true, defaults to authenticated user)
Note: The tool returns raw JSON data for maximum flexibility. By default, it fetches reviews after your last '/gemini review' comment.
Usage Examples
- Simplest usage (most common) - Get reviews after your last comment:
Use get_gemini_reviews for repo YtbMp3Indir
This automatically:
- Uses your GitHub username as owner
- Finds the last PR
- Gets reviews after your last '/gemini review' comment
- Specify a PR number:
Use get_gemini_reviews for repo YtbMp3Indir pr 2
- Get ALL reviews (not just after your last comment):
Use get_gemini_reviews for repo YtbMp3Indir with after_last_review false
- Use full repo path (if needed):
Use get_gemini_reviews for repo someoneelse/TheirRepo
How It Works
The server fetches Gemini Code Assist comments from GitHub PRs using the GitHub API v3. It supports three types of comments:
- Reviews: General PR reviews with overall feedback
- Line Comments: Code-specific comments on particular lines
- Issue Comments: General discussion comments on the PR
When after_last_review is true (default), the tool:
- Finds your last
/gemini reviewcomment in the PR - Fetches all Gemini bot responses after that timestamp
- Returns them sorted by type and date
Notes
- The server requires Python 3.7+
- GitHub API rate limits apply (5000 requests/hour with token, 60 without)
- Authentication via GitHub token is highly recommended
- The server returns raw JSON data for maximum flexibility
- All API calls use pagination to handle large PRs
- Supports typo variants like "/genimi review"
Testing
Run the test script to verify the server is working: ``bash python3 test_raw_output.py ``
Standalone Script
You can also use the original CLI script directly: ``bash python3 gemini_pr_reviews.py --repo owner/repo --pr 123 ``
License
MIT











