Integrations
Enables interaction with GitLab's API to analyze and manage merge requests, including fetching diffs, comparing versions, adding comments, and approving/unapproving merge requests.
GitLab MCP para revisión de código
Este proyecto es una bifurcación de cayirtepeomer/gerrit-code-review-mcp y está adaptado para la integración de GitLab.
Un servidor MCP (Protocolo de Contexto de Modelo) para integrar asistentes de IA como Claude con las solicitudes de fusión de GitLab. Esto permite a los asistentes de IA revisar los cambios de código directamente a través de la API de GitLab.
Características
- Análisis completo de solicitudes de fusión : obtenga detalles completos sobre las solicitudes de fusión, incluidas diferencias, confirmaciones y comentarios
- Diferencias específicas de archivos : analiza cambios en archivos específicos dentro de solicitudes de fusión
- Comparación de versiones : compare diferentes ramas, etiquetas o confirmaciones
- Gestión de revisiones : agregar comentarios, aprobar o desaprobar solicitudes de fusión
- Descripción general del proyecto : obtener listas de todas las solicitudes de fusión en un proyecto
Instalación
Prerrequisitos
- Python 3.10+
- Token de acceso personal de GitLab con alcance de API (read_api, api)
- Cursor IDE para integración completa con MCP
Inicio rápido
- Clonar este repositorio:
- Crear y activar un entorno virtual:
- Instalar dependencias:
- Crea un archivo
.env
con tu configuración de GitLab (consulta.env.example
para ver todas las opciones):
Opciones de configuración
Las siguientes variables de entorno se pueden configurar en su archivo .env
:
Variable | Requerido | Por defecto | Descripción |
---|---|---|---|
Token de Gitlab | Sí | - | Tu token de acceso personal de GitLab |
Host de Gitlab | No | gitlab.com | Nombre de host de la instancia de GitLab |
VERSIÓN DE API DE GITLAB | No | versión 4 | Versión de la API de GitLab que se utilizará |
NIVEL DE REGISTRO | No | INFORMACIÓN | Nivel de registro (DEBUG, INFO, WARNING, ERROR, CRÍTICO) |
DEPURAR | No | FALSO | Habilitar el modo de depuración |
TIEMPO DE ESPERA DE LA SOLICITUD | No | 30 | Tiempo de espera de la solicitud de API en segundos |
MÁXIMO_RETRIES | No | 3 | Máximo de intentos de reintento para solicitudes fallidas |
Integración de Cursor IDE
Para usar este MCP con Cursor IDE, agregue esta configuración a su archivo ~/.cursor/mcp.json
:
Reemplace /path/to/your/gitlab-mcp-code-review
con la ruta real a su repositorio clonado.
Herramientas disponibles
El servidor MCP proporciona las siguientes herramientas para interactuar con GitLab:
Herramienta | Descripción |
---|---|
fetch_merge_request | Obtenga información completa sobre una solicitud de fusión |
fetch_merge_request_diff | Obtener diferencias para una solicitud de fusión específica |
fetch_commit_diff | Obtener información de diferencias para una confirmación específica |
compare_versions | Comparar diferentes ramas, etiquetas o confirmaciones |
add_merge_request_comment | Agregar un comentario a una solicitud de fusión |
approve_merge_request | Aprobar una solicitud de fusión |
unapprove_merge_request | Desaprobar una solicitud de fusión |
get_project_merge_requests | Obtener una lista de solicitudes de fusión para un proyecto |
Ejemplos de uso
Obtener una solicitud de fusión
Ver cambios específicos en archivos
Comparar sucursales
Agregar un comentario a una solicitud de fusión
Aprobar una solicitud de fusión
Solución de problemas
Si encuentra problemas:
- Verifique que su token de GitLab tenga los permisos adecuados (api, read_api)
- Comprueba la configuración de tu archivo
.env
- Asegúrese de que las rutas de configuración de MCP sean correctas
- Pruebe la conexión con:
curl -H "Private-Token: your-token" https://gitlab.com/api/v4/projects
- Establezca LOG_LEVEL=DEBUG en su archivo .env para obtener un registro más detallado
Contribuyendo
¡Agradecemos sus contribuciones! No dude en enviar una solicitud de incorporación de cambios.
- Bifurcar el repositorio
- Crea tu rama de funciones (
git checkout -b feature/amazing-feature
) - Confirme sus cambios (
git commit -m 'Add some amazing feature'
) - Empujar a la rama (
git push origin feature/amazing-feature
) - Abrir una solicitud de extracción
Consulte el archivo CONTRIBUTING.md para obtener más detalles sobre el proceso de desarrollo.
Licencia
Este proyecto está licenciado bajo la licencia MIT: consulte el archivo de LICENCIA para obtener más detalles.
This server cannot be installed
Un servidor MCP que integra asistentes de IA como Claude con las solicitudes de fusión de GitLab, lo que les permite revisar cambios de código, agregar comentarios y aprobar/desaprobar solicitudes de fusión directamente a través de la API de GitLab.
Related MCP Servers
- AsecurityAlicenseAqualityMCP Server for the GitLab API, enabling project management, file operations, and more.Last updated -91,63044,247JavaScriptMIT License
- -securityFlicense-qualityA custom server implementation that allows AI assistants to interact with GitLab repositories, providing capabilities for searching, fetching files, creating/updating content, and managing issues and merge requests.Last updated -JavaScript
- -securityFlicense-qualityAn MCP server that enables communication with GitLab repositories, allowing interaction with GitLab's API to manage projects, issues, and repositories through natural language.Last updated -20JavaScript
- AsecurityFlicenseAqualityAn MCP server that enables AI assistants to manage GitHub Actions workflows by providing tools for listing, viewing, triggering, canceling, and rerunning workflows through the GitHub API.Last updated -924TypeScript