GitLab MCP Server

by rifqi96
Verified

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Integrations

  • Provides comprehensive tools for interacting with GitLab repositories, including managing projects, branches, merge requests, issues, code review, CI/CD pipelines, webhooks, and user/group administration.

  • Enables configuration and control of Slack integration with GitLab projects.

Servidor MCP de GitLab

Un servidor de Protocolo de Contexto de Modelo (MCP) que te permite interactuar con tu cuenta de GitLab. Obtén diferencias, analiza solicitudes de fusión, revisa código, selecciona cambios y mucho más. Esta es una versión extendida del servidor MCP de GitLab del proyecto Protocolo de Contexto de Modelo.

Características

Este servidor MCP proporciona herramientas integrales para interactuar con los repositorios de GitLab, que incluyen:

Características principales del repositorio

  • Listado de proyectos y recuperación de detalles
  • Gestión de sucursales y repositorios
  • Trabajar con solicitudes de fusión y diferencias
  • Agregar comentarios y notas internas a las solicitudes de fusión
  • Actualización de los atributos de la solicitud de fusión
  • Enumerar y trabajar con problemas
  • Obtener y comparar el contenido de los archivos del repositorio

Configuración e integraciones del proyecto

  • Gestión de integraciones y servicios de proyectos
  • Configuración y control de la integración de Slack
  • Configuración, actualización y prueba de webhooks

Gestión de CI/CD

  • Trabajar con tokens de activación de canalización
  • Gestión de variables de CI/CD
  • Activación y control de tuberías

Administración de usuarios y grupos

  • Listado y gestión de usuarios
  • Trabajar con grupos y membresías de grupos
  • Gestión de miembros del proyecto y niveles de acceso

Instalación

Prerrequisitos

  • Node.js (v16 o superior)
  • npm
  • Una cuenta de GitLab con un token de API

Configuración

  1. Clonar el repositorio:
git clone https://github.com/rifqi96/mcp-gitlab.git cd mcp-gitlab
  1. Instalar dependencias:
npm install
  1. Construir el servidor:
npm run build
  1. Instalar ganchos git (opcional, pero recomendado para colaboradores):
npm run install-hooks

Esto instala un gancho de pre-confirmación que regenera automáticamente TOOLS.md cuando src/utils/tools-data.ts cambia.

  1. Configura tu token de API de GitLab:

Debes proporcionar tu token de la API de GitLab en el archivo de configuración de MCP. Este token se utiliza para autenticarse con la API de GitLab.

Para Cursor/Roo Cline, agregue lo siguiente a su archivo de configuración de MCP ( ~/Library/Application Support/Cursor/User/globalStorage/rooveterinaryinc.roo-cline/settings/cline_mcp_settings.json ):

{ "mcpServers": { "gitlab": { "command": "node", "args": [ "/path/to/mcp-gitlab/build/index.js" ], "env": { "GITLAB_API_TOKEN": "YOUR_GITLAB_API_TOKEN", "GITLAB_API_URL": "https://gitlab.com/api/v4" } } } }

Para Claude Desktop, agregue lo siguiente a su archivo de configuración de MCP ( ~/Library/Application Support/Claude/claude_desktop_config.json ):

{ "mcpServers": { "gitlab": { "command": "node", "args": [ "/path/to/mcp-gitlab/build/index.js" ], "env": { "GITLAB_API_TOKEN": "YOUR_GITLAB_API_TOKEN", "GITLAB_API_URL": "https://gitlab.com/api/v4" } } } }

Reemplaza YOUR_GITLAB_API_TOKEN con tu token de API de GitLab. Puedes generar un token en tu cuenta de GitLab en Configuración > Tokens de acceso.

Herramientas disponibles

Para obtener una lista completa de las herramientas disponibles y sus parámetros, consulte TOOLS.md .

Ejemplo de uso

A continuación se muestran ejemplos de cómo utilizar estas herramientas con asistentes de IA compatibles con MCP:

Enumere sus proyectos

Could you list my GitLab projects?

Obtener información sobre una solicitud de fusión específica

Can you show me the details of merge request with ID 123 in the project 'mygroup/myproject'?

Agregar un comentario a una solicitud de fusión

Please add a comment to merge request 123 in project 'mygroup/myproject' saying "This looks good, but please add more tests."

Agregar una nota interna a una solicitud de fusión

Add an internal note to merge request 123 in project 'mygroup/myproject' that says "Needs security review before merging." Make sure it's only visible to team members.

Actualizar el título y la descripción de una solicitud de fusión

Update the title of merge request 123 in project 'mygroup/myproject' to "Fix login page performance issues" and update the description to include "This PR addresses the slow loading times on the login page by optimizing database queries."

Comparar sucursales

Compare the 'feature-branch' with 'main' in the project 'mygroup/myproject' and show me the differences.

Flujos de trabajo prácticos

Revisar una solicitud de fusión

1. Show me merge request 123 in project 'mygroup/myproject' 2. Show me the changes for this merge request 3. Add an internal note with my review comments 4. Update the merge request title to better reflect the changes

Exploración del proyecto

1. List all my GitLab projects 2. Show me the details of project 'mygroup/myproject' 3. List all branches in this project 4. Show me the content of the README.md file in the main branch

Recursos disponibles

gitlab://proyectos

Lista de proyectos de GitLab accesibles con su token de API.

Integración con asistentes de IA

El servidor MCP de GitLab se integra con asistentes de IA que admiten el Protocolo de contexto de modelo (MCP).

Capacidades

Cuando se conecta a un asistente de IA, este servidor le permite al asistente:

  1. Ver y analizar código : el asistente puede obtener el contenido de archivos, ver las diferencias entre ramas y examinar los cambios en las solicitudes de fusión para una mejor comprensión del código.
  2. Proporcionar revisiones de código : el asistente puede analizar solicitudes de fusión y proporcionar comentarios a través de comentarios o notas internas.
  3. Administrar flujos de trabajo del proyecto : el asistente puede actualizar los atributos de la solicitud de fusión, agregar comentarios y ayudar con las tareas de administración del repositorio.
  4. Explorar la estructura del proyecto : el asistente puede explorar proyectos, ramas y archivos para comprender la estructura de la base del código.
  5. Configurar CI/CD e integraciones : el asistente puede ayudar a configurar webhooks, administrar variables de CI/CD y configurar integraciones de proyectos.

Cómo aprovechar al máximo la integración del Asistente de IA

  • Sea específico al preguntar sobre proyectos, solicitudes de fusión o archivos.
  • Proporcionar identificaciones o rutas de proyectos cuando sea posible
  • Utilice el asistente para la revisión de código pidiéndole que analice solicitudes de fusión específicas
  • Haga que el asistente le ayude con las tareas de configuración y gestión del repositorio
  • Utilice notas internas solo para comentarios del equipo sobre solicitudes de fusión

Licencia

Instituto Tecnológico de Massachusetts (MIT)

ID: 7phkmkcd67