GitLab MCP for Code Review
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
Related MCP server: AI-PR-Review-MCP
Instalación
Prerrequisitos
Python 3.10+
Token de acceso personal de GitLab con alcance de API (read_api, api)
Cursor IDE o aplicación de escritorio Claude para la integración de MCP
Inicio rápido
Clonar este repositorio:
git clone https://github.com/mehmetakinn/gitlab-mcp-code-review.git
cd gitlab-mcp-code-reviewCrear y activar un entorno virtual:
python -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activateInstalar dependencias:
pip install -r requirements.txtCrea un archivo
.envcon tu configuración de GitLab (consulta.env.examplepara ver todas las opciones):
# Required
GITLAB_TOKEN=your_personal_access_token_here
# Optional settings
GITLAB_HOST=gitlab.com
GITLAB_API_VERSION=v4
LOG_LEVEL=INFOOpciones 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 :
{
"mcpServers": {
"gitlab-mcp-code-review": {
"command": "/path/to/your/gitlab-mcp-code-review/.venv/bin/python",
"args": [
"/path/to/your/gitlab-mcp-code-review/server.py",
"--transport",
"stdio"
],
"cwd": "/path/to/your/gitlab-mcp-code-review",
"env": {
"PYTHONPATH": "/path/to/your/gitlab-mcp-code-review",
"VIRTUAL_ENV": "/path/to/your/gitlab-mcp-code-review/.venv",
"PATH": "/path/to/your/gitlab-mcp-code-review/.venv/bin:/usr/local/bin:/usr/bin:/bin"
},
"stdio": true
}
}
}Reemplace /path/to/your/gitlab-mcp-code-review con la ruta real a su repositorio clonado.
Integración de la aplicación de escritorio Claude
Para utilizar este MCP con la aplicación de escritorio Claude:
Abra la aplicación de escritorio Claude
Vaya a Configuración → Avanzado → Configuración de MCP
Agregue la siguiente configuración:
{
"mcpServers": {
"gitlab-mcp-code-review": {
"command": "/path/to/your/gitlab-mcp-code-review/.venv/bin/python",
"args": [
"/path/to/your/gitlab-mcp-code-review/server.py",
"--transport",
"stdio"
],
"cwd": "/path/to/your/gitlab-mcp-code-review",
"env": {
"PYTHONPATH": "/path/to/your/gitlab-mcp-code-review",
"VIRTUAL_ENV": "/path/to/your/gitlab-mcp-code-review/.venv",
"PATH": "/path/to/your/gitlab-mcp-code-review/.venv/bin:/usr/local/bin:/usr/bin:/bin"
},
"stdio": true
}
}
}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 |
| Obtenga información completa sobre una solicitud de fusión |
| Obtener diferencias para una solicitud de fusión específica |
| Obtener información de diferencias para una confirmación específica |
| Comparar diferentes ramas, etiquetas o confirmaciones |
| Agregar un comentario a una solicitud de fusión |
| Aprobar una solicitud de fusión |
| Desaprobar una solicitud de fusión |
| Obtener una lista de solicitudes de fusión para un proyecto |
Ejemplos de uso
Obtener una solicitud de fusión
# Get details of merge request #5 in project with ID 123
mr = fetch_merge_request("123", "5")Ver cambios específicos en archivos
# Get diff for a specific file in a merge request
file_diff = fetch_merge_request_diff("123", "5", "path/to/file.js")Comparar sucursales
# Compare develop branch with master branch
diff = compare_versions("123", "develop", "master")Agregar un comentario a una solicitud de fusión
# Add a comment to a merge request
comment = add_merge_request_comment("123", "5", "This code looks good!")Aprobar una solicitud de fusión
# Approve a merge request and set required approvals to 2
approval = approve_merge_request("123", "5", approvals_required=2)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
.envAsegú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/projectsEstablezca 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
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseCqualityAmaintenanceA production-ready MCP server for GitLab enabling AI assistants to read and manage GitLab projects, merge requests, issues, pipelines, wikis, releases, and more through a unified interface.1005149MIT
- Flicense-qualityDmaintenanceAn MCP server that automates pull request reviews using multiple LLM providers (OpenAI, Claude, Gemini, Groq, Perplexity) and supports GitHub and Bitbucket with real-time webhook integration and interactive AI assistant commands.1
- Alicense-qualityBmaintenanceAn MCP server that enables AI agents to perform automated code reviews on GitLab merge requests, including fetching details, reading diffs, posting inline comments, managing labels, and approving or unapproving MRs.514MIT
- AlicenseAqualityAmaintenanceMCP server for GitLab REST API enabling AI agents to manage pipelines, merge requests, diffs, and local reviews.1512MIT
Related MCP Connectors
Hosted MCP server connecting claude.ai, ChatGPT and other AI apps to your own computer
An MCP server that integrates with Discord to provide AI-powered features.
A MCP server built for developers enabling Git based project management with project and personal…
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/mehmetakinn/gitlab-mcp-code-review'
If you have feedback or need assistance with the MCP directory API, please join our Discord server