GitLab MCP Server

GitLab MCP Server

Connects AI assistants to GitLab to interact with merge requests, reviews, discussions, pipelines, and test results through natural language queries. Supports viewing MR details, responding to comments, checking test summaries, and analyzing job logs.

Category
Visit Server

README

GitLab MCP Server

Подключите ваш 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

Установка

  1. Установите сервер:

    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
    
  2. Получите токен GitLab:

    • Перейдите в GitLab → Settings → Access Tokens
    • Создайте токен с правами read_api
    • Скопируйте токен
  3. Настройте проект:

    Создайте файл gitlab-mcp.env в директории вашего проекта:

    GITLAB_PROJECT_ID=12345
    GITLAB_ACCESS_TOKEN=glpat-xxxxxxxxxxxxxxxxxxxx
    GITLAB_URL=https://gitlab.com
    
  4. Подключите к Cursor:

    Создайте .cursor/mcp.json в вашем проекте:

    {
      "mcpServers": {
        "gitlab-mcp": {
          "command": "/путь/к/gitlab-mcp-server/run-mcp.sh",
          "cwd": "/путь/к/вашему-проекту"
        }
      }
    }
    
  5. Перезапустите 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: 'Спасибо за фидбек!'"

📋 Основные возможности

Merge Request'ы

  • Просмотр списка MR с фильтрацией по статусу и ветке
  • Детальная информация о конкретном MR
  • Поиск MR по имени ветки

Ревью и обсуждения

  • Просмотр всех ревью и обсуждений в MR
  • Ответы на существующие обсуждения
  • Создание новых комментариев
  • Разрешение обсуждений

Тесты и Pipeline

  • Сводка тестов — быстрый обзор результатов (количество пройденных/упавших тестов)
  • Детальный отчет — полная информация о тестах с ошибками и стектрейсами
  • 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

Как найти Project ID

  • Перейдите в 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

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
E2B

E2B

Using MCP to run code via e2b.

Official
Featured