GitLab MCP Server

GitLab MCP Server

jmrplensMIT
8 звёзд1 форков
GitLab MCP Server — это мост между AI-ассистентом и вашим GitLab. Пишите текстовые команды, а сервер сам выполняет их через API GitLab: от просмотра кода до запуска пайплайнов. Это избавляет от рутинных переключений между вкладками браузера и терминалом. Сервер написан на Go и упакован в один исполняемый файл без внешних зависимостей. Он подходит для публичных GitLab.com и частных self-hosted инстансов. Встроенные механизмы безопасности — режим сухого прогона (dry-run) и режим «только чтение» (read-only) — защищают данные от случайных изменений.

Характеристики

Общее

  • СтатусСообщество
  • Разработчикjmrplens
  • ЛицензияMIT

Технологии

  • Языки
    Go
  • Транспорт
    streamable-httpstdio

Описание

Возможности

  • Управляйте задачами (issues): создавайте, редактируйте, закрывайте, назначайте исполнителей и добавляйте метки.
  • Работайте с merge request: создавайте, просматривайте изменения, оставляйте ревью и выполняйте слияние.
  • Запускайте и отслеживайте пайплайны CI/CD, просматривайте логи и статусы джоб.
  • Просматривайте репозитории: читайте файлы, историю коммитов, управляйте ветками и тегами.
  • Администрируйте GitLab: управляйте пользователями, группами и глобальными настройками.
  • Управляйте переменными CI/CD, окружениями и ключами развертывания.
  • Работайте с вложениями, комментариями и обсуждениями в задачах и merge request.
  • Используйте безопасный режим (safe mode) для имитации команд без их фактического выполнения.
  • Настраивайте поверхность инструментов через переменные TOOL_SURFACE и CAPABILITY_SURFACE для совместимости с разными MCP-клиентами.
  • Создавайте и удаляйте проекты, управляйте их настройками и участниками.

Как подключить

1. Установите сервер. Самый простой способ — скачать готовый бинарник из раздела GitHub Releases. Если у вас окружение Go, можете скомпилировать сами: go install github.com/jmrplens/gitlab-mcp-server@latest

2. Настройте переменные окружения. Обязательно укажите персональный токен доступа GitLab и, при необходимости, адрес вашего сервера.

3. Пропишите конфигурацию в клиенте. Пример для Claude Desktop (файл claude_desktop_config.json):

{ "mcpServers": { "gitlab": { "command": "gitlab-mcp-server", "args": [], "env": { "GITLAB_PERSONAL_TOKEN": "glpat-...", "GITLAB_URL": "https://gitlab.example.com" } } } }

4. Перезапустите клиент. Если всё настроено верно, AI-ассистент сможет обращаться к вашему GitLab.

Примеры запросов

  • «Покажи список незакрытых задач в проекте frontend/app, отсортированных по приоритету».
  • «Создай merge request из ветки feature/new-api в main, укажи меня ревьюером».
  • «Запусти пайплайн в проекте backend/deploy для ветки staging и сообщи мне результат».
  • «Найди коммиты пользователя Ivanov за последнюю неделю в репозитории docs и выведи их в виде таблицы».

Технические детали

  • Язык разработки: Go
  • Транспорт: streamable-http, stdio
  • Лицензия: MIT
  • Платформы: Windows, Linux, macOS (amd64, arm64)
  • Совместимые клиенты: Claude Desktop, Cursor, VS Code (через MCP-расширение), Zed и другие

Поделиться