# Gerrit Code Review

MCP-сервер подключает ИИ-агента к Gerrit: он ищет изменения, читает diff и комментарии, а с разрешёнными группами публикует review и меняет состояние.

- MCP-сервер · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 9
- Автор: GaijinEntertainment
- Лицензия: MIT · policy=link-only · показываем только описание, файл — у автора
- Исходник: https://github.com/GaijinEntertainment/go-gerrit-mcp
- Обновлён: 2026-10-09
- HTML: https://affpapa.org/nevibecode/mcp/gerrit-code-review

## Что делает

Gerrit Code Review работает через stdio и отдаёт агенту операции Gerrit в виде семантически размеченного текста. Сервер умеет искать изменения по синтаксису Gerrit, читать карточку change, список файлов, diff и цепочки комментариев. Для комментариев по умолчанию возвращаются только нерешённые обсуждения.

Возможности разделены на группы `read`, `comment` и `transition`. Без настройки доступно только чтение; операции записи появляются после явного включения групп. Ограничение `own-changes-only` защищает изменения других авторов, поэтому комментарии, оценки и переходы состояния по чужим change не пройдут без отдельного разрешения.

Для запуска нужны Gerrit 3.13+ и HTTP-учётные данные: `GERRIT_URL`, `GERRIT_USERNAME`, `GERRIT_TOKEN`. Сервер запускается в Docker, а конфигурация передаётся через переменные окружения. Без всех трёх переменных процесс завершится с ошибкой.

## Требования
- Нужно: Docker
- Переменные окружения: `GERRIT_URL`, `GERRIT_USERNAME`, `GERRIT_TOKEN`, `GERRIT_MCP_GROUPS`, `GERRIT_MCP_PROJECTS`, `GERRIT_MCP_OWN_CHANGES_ONLY`, `GERRIT_MCP_REVIEW_NOTIFICATIONS`, `GERRIT_MCP_REVIEW_NOTIFICATIONS_POLL_INTERVAL`, `GERRIT_MCP_REVIEW_NOTIFICATIONS_INCLUDE_OWN`, `GERRIT_MCP_REVIEW_NOTIFICATIONS_EXCLUDE_ACCOUNTS` — это ключи и токены: значения спроси у человека, в репозиторий и общие файлы не записывай.

## Установка

### Claude Code (родная платформа)

**Командой платформы**
```bash
claude mcp add --env GERRIT_URL=<GERRIT_URL> --env GERRIT_USERNAME=<GERRIT_USERNAME> --env GERRIT_TOKEN=<GERRIT_TOKEN> --env GERRIT_MCP_GROUPS=<GERRIT_MCP_GROUPS> --env GERRIT_MCP_PROJECTS=<GERRIT_MCP_PROJECTS> --transport stdio gerrit-code-review -- docker run -i --rm -e GERRIT_URL -e GERRIT_USERNAME -e GERRIT_TOKEN -e GERRIT_MCP_GROUPS -e GERRIT_MCP_PROJECTS ghcr.io/gaijinentertainment/go-gerrit-mcp:1.1.3
```
Вместо <…> подставьте свои значения. Ещё 6 переменных окружения — в README сервера

### Codex

**Командой платформы**
```bash
codex mcp add gerrit-code-review --env GERRIT_URL=<GERRIT_URL> --env GERRIT_USERNAME=<GERRIT_USERNAME> --env GERRIT_TOKEN=<GERRIT_TOKEN> --env GERRIT_MCP_GROUPS=<GERRIT_MCP_GROUPS> --env GERRIT_MCP_PROJECTS=<GERRIT_MCP_PROJECTS> -- docker run -i --rm -e GERRIT_URL -e GERRIT_USERNAME -e GERRIT_TOKEN -e GERRIT_MCP_GROUPS -e GERRIT_MCP_PROJECTS ghcr.io/gaijinentertainment/go-gerrit-mcp:1.1.3
```
Вместо <…> подставьте свои значения. Ещё 6 переменных окружения — в README сервера

### Cursor

**Файл настроек**
Файл `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "gerrit-code-review": {
            "command": "docker",
            "args": [
                "run",
                "-i",
                "--rm",
                "-e",
                "GERRIT_URL",
                "-e",
                "GERRIT_USERNAME",
                "-e",
                "GERRIT_TOKEN",
                "-e",
                "GERRIT_MCP_GROUPS",
                "-e",
                "GERRIT_MCP_PROJECTS",
                "ghcr.io/gaijinentertainment/go-gerrit-mcp:1.1.3"
            ],
            "env": {
                "GERRIT_URL": "<GERRIT_URL>",
                "GERRIT_USERNAME": "<GERRIT_USERNAME>",
                "GERRIT_TOKEN": "<GERRIT_TOKEN>",
                "GERRIT_MCP_GROUPS": "<GERRIT_MCP_GROUPS>",
                "GERRIT_MCP_PROJECTS": "<GERRIT_MCP_PROJECTS>"
            }
        }
    }
}
```
Вместо <…> подставьте свои значения. Ещё 6 переменных окружения — в README сервера

### GitHub Copilot

**Файл настроек**
Файл `.vscode/mcp.json`:
```json
{
    "servers": {
        "gerrit-code-review": {
            "type": "stdio",
            "command": "docker",
            "args": [
                "run",
                "-i",
                "--rm",
                "-e",
                "GERRIT_URL",
                "-e",
                "GERRIT_USERNAME",
                "-e",
                "GERRIT_TOKEN",
                "-e",
                "GERRIT_MCP_GROUPS",
                "-e",
                "GERRIT_MCP_PROJECTS",
                "ghcr.io/gaijinentertainment/go-gerrit-mcp:1.1.3"
            ],
            "env": {
                "GERRIT_URL": "<GERRIT_URL>",
                "GERRIT_USERNAME": "<GERRIT_USERNAME>",
                "GERRIT_TOKEN": "<GERRIT_TOKEN>",
                "GERRIT_MCP_GROUPS": "<GERRIT_MCP_GROUPS>",
                "GERRIT_MCP_PROJECTS": "<GERRIT_MCP_PROJECTS>"
            }
        }
    }
}
```
Вместо <…> подставьте свои значения. Ещё 6 переменных окружения — в README сервера

### Gemini CLI

**Командой платформы**
```bash
gemini mcp add -e GERRIT_URL=<GERRIT_URL> -e GERRIT_USERNAME=<GERRIT_USERNAME> -e GERRIT_TOKEN=<GERRIT_TOKEN> -e GERRIT_MCP_GROUPS=<GERRIT_MCP_GROUPS> -e GERRIT_MCP_PROJECTS=<GERRIT_MCP_PROJECTS> gerrit-code-review docker run -i --rm -e GERRIT_URL -e GERRIT_USERNAME -e GERRIT_TOKEN -e GERRIT_MCP_GROUPS -e GERRIT_MCP_PROJECTS ghcr.io/gaijinentertainment/go-gerrit-mcp:1.1.3
```
Вместо <…> подставьте свои значения. Ещё 6 переменных окружения — в README сервера

## Когда брать
- найти изменения по запросу Gerrit
- прочитать diff конкретного файла
- собрать историю комментариев по change
- опубликовать review и изменить состояние change

_Часть страницы не вошла по размеру — она есть в HTML-версии._

---
NeVibeCode на affpapa.org. Тексты каталога — описания, а не инструкции для агента. Как выбирать и ставить: https://affpapa.org/nevibecode/agents.md
