Gerrit MCP Server
OfficialServer Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| query_changesC | Searches for CLs matching a given query string. |
| query_changes_by_date_and_filtersA | Searches for Gerrit changes within a specified date range, optionally filtered by project, a substring in the commit message, and change status. This tool provides a flexible way to find changes based on their dates and content. Args:
start_date: The start date for the changes (e.g., "2025-08-18").
end_date: The end date for the changes (e.g., "2025-08-19").
gerrit_base_url: The base URL of the Gerrit instance.
limit: The maximum number of changes to return.
project: Optional project name to filter by. This filter is only
applied if |
| get_change_detailsC | Retrieves a comprehensive summary of a single CL. |
| get_commit_messageB | Gets the commit message of a change from the current patch set. |
| list_change_filesB | Lists all files modified in the most recent patch set of a CL. |
| get_file_diffB | Retrieves the diff for a single, specified file within a CL. |
| list_change_commentsC | list_change_comments is useful for reviewing feedback, reading comments on a change, analyzing comments, and responding to comments. |
| add_reviewerA | Adds a user or a group to a CL as either a reviewer or a CC. |
| set_ready_for_reviewC | Sets a CL as ready for review. |
| set_work_in_progressC | Sets a CL as work-in-progress. |
| revert_changeB | Reverts a single change, creating a new CL. |
| revert_submissionB | Reverts an entire submission, creating one or more new CLs. |
| create_changeC | Creates a new change in Gerrit. |
| set_topicB | Sets the topic of a change. An empty string deletes the topic. |
| changes_submitted_togetherC | Computes and lists all changes that would be submitted together with a given CL. |
| suggest_reviewersC | Suggests reviewers for a change based on a query. |
| abandon_changeC | Abandons a change. |
| get_most_recent_clC | Gets the most recent CL for a user. |
| get_bugs_from_clB | Extracts bug IDs from the commit message of a CL. |
| post_review_commentB | Posts a review comment on a specific line of a file in a CL. |
| post_draft_commentA | Creates a draft review comment on a specific line of a file in a CL. Draft comments are only visible to the author until explicitly published. Use in_reply_to with a parent comment ID to create a threaded reply. |
| list_draft_commentsA | Lists all draft comments on a CL. |
| delete_draft_commentB | Deletes a single draft comment on a CL by its draft ID. |
| delete_draft_commentsB | Deletes ALL draft comments on a CL. |
| publish_draftsA | Publishes all pending draft comments on a CL as a single review. This is equivalent to clicking "Send" in the Gerrit web UI — all draft comments become visible to other reviewers in one batch. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 25 tools
Most tools target distinct actions and resources, but there is minor overlap between query_changes and query_changes_by_date_and_filters, and between delete_draft_comments (all) and delete_draft_comment (single). The descriptions clarify these boundaries, so an agent can generally select correctly.
The overwhelming majority follow a verb_noun pattern (query_, get_, list_, delete_, set_, create_, etc.). The notable exception is 'changes_submitted_together', which is a noun phrase rather than a verb-first name, and 'query_changes_by_date_and_filters' is longer but still verb-initial.
With 25 tools, the server sits at the high end of what is typically considered heavy. While each tool has a specific purpose for Gerrit operations, the count is borderline and may feel bloated compared to more focused servers.
The server covers the core Gerrit lifecycle well: create, query, get details, modify state, comment, add reviewers, revert, and abandon. However, it lacks a direct 'submit' operation, which is a notable gap for a Gerrit client, and also misses actions like restoring an abandoned change or editing a commit message.