npm y npx
GitLab MCP Server está publicado en npm como
@jmrp.io/gitlab-mcp-server.
Es el mismo binario nativo en Go que distribuyen todos los demás canales,
empaquetado para que npx pueda lanzarlo sin paso de instalación y
npm install -g pueda ponerlo en tu PATH. No se compila nada y nada se
ejecuta durante la instalación.
Qué obtienes
Sección titulada «Qué obtienes»El conjunto publicado es un lanzador más seis paquetes por plataforma, siguiendo el modelo que usan esbuild y Biome:
@jmrp.io/gitlab-mcp-serveres un pequeño shim de Node.js (cli.js) registrado como el comandogitlab-mcp-server. Resuelve el binario de la plataforma actual, lo arranca con tu stdio y tus argumentos intactos, y replica el código de salida y la señal de terminación del binario, de modo que el cliente ve el resultado real. Desde la primera release posterior a 3.1.0 también detiene el servidor cuando se le pide: en Linux y macOS le reenvía SIGTERM, SIGINT y SIGHUP, y bajonpxlo detiene en menos de un segundo cuando termina la shell de npm, que es donde acaba un SIGTERM enviado al procesonpx. Antes, un servidor HTTP arrancado connpxconservaba su puerto después de que su supervisor lo hubiera detenido. En Windows el Ctrl+C de la consola llega al propio servidor.@jmrp.io/gitlab-mcp-server-<plataforma>son los paquetes que llevan el binario en sí, uno por plataforma:linux-x64,linux-arm64,darwin-x64,darwin-arm64,win32-x64ywin32-arm64. Se declaran como dependencias opcionales del lanzador, fijadas a su versión exacta, y cada uno está limitado porosycpu, así que npm instala exactamente uno: el que coincide con tu máquina.
Como el binario llega dentro de un paquete corriente, no hay script de
postinstalación, no se descarga nada después de instalar y no se compila
nada. Por eso la instalación funciona con --ignore-scripts, tras un proxy
y en un job de CI gobernado por un lockfile.
Requisitos: Node.js 18 o superior y, en Linux, glibc: los binarios son
ejecutables independientes de la posición (PIE) que necesitan el cargador
dinámico de glibc. Desde la primera release posterior a 2.7.5 los paquetes de
Linux declaran libc: ["glibc"], así que npm los omite en distribuciones musl
como Alpine y el lanzador te remite a la
imagen Docker, que está basada en
musl. En 2.7.5 el paquete se instala en Alpine y el binario falla después al
arrancar con “no such file or directory”; usa ahí la imagen Docker.
Instalación
Sección titulada «Instalación»Sin instalar nada: el cliente lanza el comando directamente, y npx conserva una copia en su caché tras la primera ejecución.
npx -y @jmrp.io/gitlab-mcp-serverLa opción -y suprime la pregunta de npx de si quieres instalar el paquete,
que un cliente MCP no tiene forma de responder.
npm install -g @jmrp.io/gitlab-mcp-serverpnpm add -g @jmrp.io/gitlab-mcp-server# Yarn 2 y posteriores: se ejecuta en un entorno temporal, sin instalar nadayarn dlx @jmrp.io/gitlab-mcp-server# Yarn 1 (Classic): instalación globalyarn global add @jmrp.io/gitlab-mcp-serverTras una instalación global, el comando en tu PATH es gitlab-mcp-server:
gitlab-mcp-server --version# gitlab-mcp-server 2.7.5 (commit: ...)Si lo arrancas en una terminal sin GITLAB_URL y GITLAB_TOKEN definidos, el binario
imprime qué es y los dos valores que necesita, y después espera a que pulses
Enter. Es la pantalla de primer arranque, no un error: un cliente MCP
conecta tuberías en lugar de una terminal y nunca la ve. No hay asistente de
configuración; la configuración va en el JSON de tu cliente, más abajo.
Si el lanzador no encuentra su binario
Sección titulada «Si el lanzador no encuentra su binario»gitlab-mcp-server: the @jmrp.io/gitlab-mcp-server-<plataforma> package is not installed
significa que la plataforma está soportada pero su paquete se omitió. Las
causas habituales son una instalación con --no-optional, un lockfile
generado en otro sistema operativo o un sistema musl. Reinstala sin
--no-optional, o borra node_modules y el lockfile e instala de nuevo.
En una plataforma sin binario precompilado el lanzador termina con un
mensaje que apunta a los
binarios de la release
y a compilar desde el código fuente.
Configura tu cliente
Sección titulada «Configura tu cliente»La forma portable no necesita instalar nada. Apunta el cliente a npx:
{ "mcpServers": { "gitlab": { "command": "npx", "args": ["-y", "@jmrp.io/gitlab-mcp-server"], "env": { "GITLAB_TOKEN": "glpat-xxxxxxxxxxxxxxxxxxxx" } } }}Tras una instalación global, usa el comando en su lugar:
{ "mcpServers": { "gitlab": { "command": "gitlab-mcp-server", "env": { "GITLAB_TOKEN": "glpat-xxxxxxxxxxxxxxxxxxxx" } } }}GITLAB_TOKEN es el único valor obligatorio: un token de acceso personal con
el scope api (read_api también sirve; el servidor lo detecta al arrancar y
sirve una superficie de solo lectura). GITLAB_URL usa por defecto https://gitlab.com; añádela
a env solo para una instancia autogestionada. Un cliente que no herede el
PATH de tu shell puede necesitar la ruta completa al comando;
which gitlab-mcp-server (o where gitlab-mcp-server en Windows) la
imprime. Para fijar una release en lugar de seguir la más reciente, nómbrala
en el argumento: "@jmrp.io/gitlab-mcp-server@2.7.5".
Las rutas de archivo y las formas de cada cliente (VS Code usa servers con
"type": "stdio", Zed usa context_servers) están en las
pestañas por cliente del Inicio rápido.
Actualizar y desinstalar
Sección titulada «Actualizar y desinstalar»El servidor nunca comprueba si hay actualizaciones ni reemplaza su propio binario; aquí es npm quien lo gestiona, igual que cada canal gestiona lo que instaló. Cada release mueve a la vez el lanzador y sus seis paquetes de plataforma con versiones fijadas de forma exacta, así que actualizar el lanzador actualiza el binario, y un lanzador antiguo nunca resuelve un binario más nuevo ni al revés.
npx resuelve la versión publicada más reciente en una ejecución en frío y reutiliza su caché después. Para forzar la última release, nómbrala explícitamente:
npx -y @jmrp.io/gitlab-mcp-server@latestNo se instaló nada, así que no hay nada que desinstalar más allá de la entrada en la configuración de tu cliente.
npm update -g @jmrp.io/gitlab-mcp-servernpm uninstall -g @jmrp.io/gitlab-mcp-serverpnpm update -g @jmrp.io/gitlab-mcp-serverpnpm remove -g @jmrp.io/gitlab-mcp-server# Yarn 1 (Classic)yarn global upgrade @jmrp.io/gitlab-mcp-serveryarn global remove @jmrp.io/gitlab-mcp-serveryarn dlx no instala nada, así que no hay nada que quitar.
El resto de canales se comparan en la vista general de instalación.