Mejor servidor MCP de GitLab
@zereight/mcp-gitlab
Servidor MCP (Protocolo de Contexto de Modelo) de GitLab. Incluye correcciones de errores y mejoras respecto al servidor MCP de GitLab original.
Uso
Uso con la aplicación Claude, Cline, Roo Code y Cursor
Al utilizar la aplicación Claude, debe configurar su clave API y las URL directamente.
{
"mcpServers": {
"GitLab communication server": {
"command": "npx",
"args": ["-y", "@zereight/mcp-gitlab"],
"env": {
"GITLAB_PERSONAL_ACCESS_TOKEN": "your_gitlab_token",
"GITLAB_API_URL": "your_gitlab_api_url",
"GITLAB_READ_ONLY_MODE": "false",
"USE_GITLAB_WIKI":"true"
}
}
}
}
Variables de entorno
GITLAB_PERSONAL_ACCESS_TOKEN
: Su token de acceso personal de GitLab.GITLAB_API_URL
: La URL de tu API de GitLab. (Predeterminado: https://gitlab.com/api/v4
)GITLAB_READ_ONLY_MODE
: Cuando se establece en 'true', restringe el servidor a solo operaciones de lectura. Útil para mayor seguridad o cuando no se requiere acceso de escritura. También es útil para usar con Cursor y su límite de 40 herramientas.USE_GITLAB_WIKI
: Cuando se establece como 'true', habilita las herramientas relacionadas con la wiki (list_wiki_pages, get_wiki_page, create_wiki_page, update_wiki_page, delete_wiki_page). Por defecto, las funciones de la wiki están deshabilitadas.
Herramientas 🛠️
create_or_update_file
: crea o actualiza un solo archivo en un proyecto de GitLabsearch_repositories
- Buscar proyectos de GitLabcreate_repository
- Crea un nuevo proyecto de GitLabget_file_contents
: obtiene el contenido de un archivo o directorio de un proyecto de GitLabpush_files
: envía varios archivos a un proyecto de GitLab en una sola confirmacióncreate_issue
- Crea un nuevo problema en un proyecto de GitLabcreate_merge_request
: crea una nueva solicitud de fusión en un proyecto de GitLabfork_repository
- Bifurca un proyecto de GitLab en tu cuenta o en el espacio de nombres especificadocreate_branch
- Crea una nueva rama en un proyecto de GitLabget_merge_request
- Obtener detalles de una solicitud de fusión (se debe proporcionar mergeRequestIid o branchName)get_merge_request_diffs
: obtiene los cambios/diferencias de una solicitud de fusión (se debe proporcionar mergeRequestIid o branchName)update_merge_request
- Actualizar una solicitud de fusión (se debe proporcionar mergeRequestIid o branchName)create_note
- Crea una nueva nota (comentario) para un problema o solicitud de fusióncreate_merge_request_thread
- Crea un nuevo hilo en una solicitud de fusiónmr_discussions
- Lista de elementos de discusión para una solicitud de fusiónupdate_merge_request_note
- Modificar una nota del hilo de solicitud de fusión existentecreate_merge_request_note
- Agregar una nueva nota a un hilo de solicitud de fusión existentelist_issues
: enumera los problemas en un proyecto de GitLab con opciones de filtradoget_issue
: obtener detalles de un problema específico en un proyecto de GitLabupdate_issue
- Actualizar un problema en un proyecto de GitLabdelete_issue
- Eliminar un problema de un proyecto de GitLablist_issue_links
- Lista todos los enlaces de problemas para un problema específicoget_issue_link
- Obtener un enlace a un problema específicocreate_issue_link
- Crea un enlace de problema entre dos problemasdelete_issue_link
- Eliminar un enlace de problemalist_namespaces
: enumera todos los espacios de nombres disponibles para el usuario actualget_namespace
- Obtener detalles de un espacio de nombres por ID o rutaverify_namespace
- Verificar si existe una ruta de espacio de nombresget_project
- Obtener detalles de un proyecto específicolist_projects
- Lista de proyectos accesibles para el usuario actuallist_labels
- Etiquetas de lista para un proyectoget_label
- Obtener una sola etiqueta de un proyectocreate_label
- Crea una nueva etiqueta en un proyectoupdate_label
- Actualizar una etiqueta existente en un proyectodelete_label
- Eliminar una etiqueta de un proyectolist_group_projects
: enumera los proyectos en un grupo de GitLab con opciones de filtradolist_wiki_pages
- Lista de páginas wiki en un proyecto de GitLabget_wiki_page
- Obtener detalles de una página wiki específicacreate_wiki_page
- Crea una nueva página wiki en un proyecto de GitLabupdate_wiki_page
- Actualizar una página wiki existente en un proyecto de GitLabdelete_wiki_page
- Eliminar una página wiki de un proyecto de GitLabget_repository_tree
: obtiene el árbol del repositorio para un proyecto de GitLab (lista de archivos y directorios)