Add /a/ prefix to Gerrit API URLs for authenticated access Per Gerrit REST API docs, all endpoints assume anonymous access by default. Users must prefix the URL path with /a/ to authenticate with HTTP basic credentials or cookies. Without /a/, Gerrit ignores any auth headers and returns only publicly visible data (which may be nothing at all). Change-Id: Icbd710e2bdfb1705c92e7e5a11c5fb5adae2e6d8
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.
For detailed information, please see the documents in the docs/ directory:
gerrit_config.json file and all authentication methods.Before you begin, ensure you have the following tools installed and available in your system's PATH.
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
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
To run the server as a persistent background process, use the server.sh script:
./server.sh start
./server.sh status
./server.sh stop
For on-demand STDIO mode, please see the Gemini CLI Setup Guide.
This is not an officially supported Google product. This project is not eligible for the Google Open Source Software Vulnerability Rewards Program.