Clone this repo:

Branches

  1. 1818176 Merge "feat: Add support for setting review labels" by Danny Rosen · 2 days ago master
  2. 95abd6f feat: Add support for setting review labels by dannyzen · 2 days ago
  3. 3e8e9fe Merge "Docs(agent): Add contributing guide to AGENT.md" by Danny Rosen · 2 days ago
  4. 8b75cc3 Fix(build): Include dev dependencies in build script by dannyzen · 2 days ago
  5. 5e787d5 Docs(agent): Add contributing guide to AGENT.md by dannyzen · 2 days ago

🐍 Gerrit MCP Server

An MCP (Model Context Protocol) server for interacting with the Gerrit code review system. This server allows a language model like Gemini to query changes, retrieve details, and manage reviews by executing curl commands against the Gerrit REST API.

This server can be run as a persistent HTTP server or on-demand via STDIO.

📚 Documentation

For detailed information, please see the documents in the docs/ directory:

🚀 Getting Started

1. Prerequisites

Before you begin, ensure you have the following tools installed and available in your system's PATH.

  • Python 3.11+: The build script requires a modern version of Python.

  • curl: The standard command-line tool for transferring data with URLs.

  • Project Changes: View on Gerrit

  • Source Hosting: View on Gerrit Code

2. Build the Environment

Run the build script from the root of the gerrit-mcp-server project directory. This will create a Python virtual environment, install all dependencies, and make the server ready to run.

./build-gerrit.sh

3. Configure the Server

You will need to create a gerrit_config.json file inside the gerrit_mcp_server directory. Copy the provided sample file gerrit_mcp_server/gerrit_config.sample.json and customize it for your environment. See the Configuration Guide for details on all available options.

cp gerrit_mcp_server/gerrit_config.sample.json gerrit_mcp_server/gerrit_config.json

4. Run the Server (HTTP Mode)

To run the server as a persistent background process, use the server.sh script:

  • Start the server:
    ./server.sh start
    
  • Check the status:
    ./server.sh status
    
  • Stop the server:
    ./server.sh stop
    

For on-demand STDIO mode, please see the Gemini CLI Setup Guide.

Security

This is not an officially supported Google product. This project is not eligible for the Google Open Source Software Vulnerability Rewards Program.