Подключите ваш AI-ассистент к GitLab. Задавайте вопросы прямо в чате: "Покажи открытые merge request'ы", "Покажи ревью для MR #123", "Найди merge request'ы для ветки feature/auth".
Проект использует uv для управления Python-пакетами.
Установка uv:
# macOS и Linux
curl -LsSf https://astral.sh/uv/install.sh | sh
# Windows
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"
# Или через pip
pip install uv-
Установите сервер:
git clone https://github.com/FitoDomik/gitlab-mcp-server.git cd gitlab-mcp-server uv venv source .venv/bin/activate # На Windows: .venv\Scripts\activate uv pip install -e . chmod +x run-mcp.sh
-
Получите токен GitLab:
- Перейдите в GitLab → Settings → Access Tokens
- Создайте токен с правами
read_api - Скопируйте токен
-
Настройте проект:
Создайте файл
gitlab-mcp.envв директории вашего проекта:GITLAB_PROJECT_ID=12345 GITLAB_ACCESS_TOKEN=glpat-xxxxxxxxxxxxxxxxxxxx GITLAB_URL=https://gitlab.com
-
Подключите к Cursor:
Создайте
.cursor/mcp.jsonв вашем проекте:{ "mcpServers": { "gitlab-mcp": { "command": "/путь/к/gitlab-mcp-server/run-mcp.sh", "cwd": "/путь/к/вашему-проекту" } } } -
Перезапустите Cursor и начните задавать вопросы о GitLab!
После подключения попробуйте эти команды в чате:
- "Покажи открытые merge request'ы"
- "Покажи детали merge request #456"
- "Покажи ревью и обсуждения для MR #123"
- "Покажи сводку тестов для MR #456"
- "Какие тесты упали в merge request #789?"
- "Покажи pipeline для MR #456"
- "Покажи логи упавшего job для merge request #789"
- "Покажи обсуждения коммитов для MR #456"
- "Найди merge request'ы для ветки feature/auth-improvements"
- "Ответь на обсуждение abc123 в MR #456: 'Спасибо за фидбек!'"
- Просмотр списка MR с фильтрацией по статусу и ветке
- Детальная информация о конкретном MR
- Поиск MR по имени ветки
- Просмотр всех ревью и обсуждений в MR
- Ответы на существующие обсуждения
- Создание новых комментариев
- Разрешение обсуждений
- Сводка тестов — быстрый обзор результатов (количество пройденных/упавших тестов)
- Детальный отчет — полная информация о тестах с ошибками и стектрейсами
- Pipeline — обзор всех job'ов и их статусов
- Логи job'ов — просмотр вывода конкретного job'а
- Просмотр всех обсуждений на коммитах в MR
- История комментариев по каждому коммиту
Каждый проект имеет свой файл gitlab-mcp.env с настройками GitLab. Не добавляйте токены в систему контроля версий.
Можно задать переменные окружения глобально:
export GITLAB_PROJECT_ID=12345
export GITLAB_ACCESS_TOKEN=glpat-xxxxxxxxxxxxxxxxxxxx
export GITLAB_URL=https://gitlab.com- Перейдите в GitLab проект → Settings → General → Project ID
- Или посмотрите в URL:
https://gitlab.com/username/project(используйте числовой ID)
Ошибка аутентификации: Проверьте, что токен имеет права read_api и не истёк.
Проект не найден: Убедитесь, что Project ID указан правильно (это число, а не название проекта).
Проблемы с подключением: Проверьте, что URL GitLab доступен и указан верно.
Скрипт не найден: Убедитесь, что путь в конфигурации MCP указывает на правильное расположение сервера и скрипт исполняемый.
| Инструмент | Описание | Параметры |
|---|---|---|
list_merge_requests |
Список merge request'ов | state, target_branch, limit |
get_merge_request_details |
Детали MR | merge_request_iid |
get_pipeline_test_summary |
Сводка тестов (быстрый обзор) | merge_request_iid |
get_merge_request_test_report |
Детальный отчет о тестах | merge_request_iid |
get_merge_request_pipeline |
Pipeline со всеми job'ами | merge_request_iid |
get_job_log |
Логи конкретного job'а | job_id |
get_merge_request_reviews |
Ревью и обсуждения | merge_request_iid |
get_commit_discussions |
Обсуждения на коммитах | merge_request_iid |
get_branch_merge_requests |
Поиск MR по ветке | branch_name |
reply_to_review_comment |
Ответ на обсуждение | merge_request_iid, discussion_id, body |