Skip to main content
Glama

@grec0/mcp-jenkins

MCP server para integración con Jenkins CI/CD. Este servidor permite interactuar con Jenkins desde cualquier cliente MCP compatible (como Claude Desktop) para gestionar jobs, builds, reportes de cobertura y más.

Características

  • Gestión de Jobs: Obtener estado, iniciar y detener jobs

  • 📋 Monitoreo de Builds: Ver steps, nodos y estados de ejecución

  • 🔄 Acciones de Input: Manejar aprobaciones y acciones pendientes

  • 📊 Reportes de Cobertura: Analizar cobertura de código detallada

  • 🌿 Integración Git: Listar ramas disponibles para builds

  • 🔒 Autenticación Segura: Soporte para HTTPS con certificados auto-firmados

Related MCP server: Jenkins Server MCP

Instalación

Opción 1: Usar con npx (Recomendado)

# No requiere instalación global npx @grec0/mcp-jenkins

Opción 2: Instalación global

npm install -g @grec0/mcp-jenkins

Requisitos Previos

Plugins de Jenkins Requeridos

⚠️ IMPORTANTE: Para funcionalidad completa, necesitas estos plugins instalados en Jenkins:

Obligatorios:

  • pipeline-rest-api - Para API de pipelines

  • git-parameter - Para listado de ramas Git

Opcionales (para cobertura):

  • jacoco - Para reportes de cobertura Java

  • Plugin de cobertura frontend (Istanbul, etc.)

📖 Ver

Configuración

Variables de Entorno

export JENKINS_URL="https://tu-jenkins.com" export JENKINS_USERNAME="tu-usuario" export JENKINS_PASSWORD="tu-token-o-password"

Configuración en Claude Desktop

Agregar al archivo de configuración de Claude Desktop:

Opción 1: Con npx (Recomendado)

{ "mcpServers": { "jenkins": { "command": "npx", "args": ["@grec0/mcp-jenkins"], "env": { "JENKINS_URL": "https://tu-jenkins.com", "JENKINS_USERNAME": "tu-usuario", "JENKINS_PASSWORD": "tu-token" } } } }

Opción 2: Con instalación global

{ "mcpServers": { "jenkins": { "command": "mcp-jenkins", "env": { "JENKINS_URL": "https://tu-jenkins.com", "JENKINS_USERNAME": "tu-usuario", "JENKINS_PASSWORD": "tu-token" } } } }

Herramientas Disponibles

Gestión de Jobs

  • jenkins_get_job_status - Obtener estado de un job

  • jenkins_start_job - Iniciar un job con rama específica

  • jenkins_stop_job - Detener un job en ejecución

  • jenkins_get_git_branches - Listar ramas de Git disponibles

Monitoreo de Builds

  • jenkins_get_build_steps - Ver steps de un build

  • jenkins_get_node_status - Estado de un nodo específico

  • jenkins_get_pending_actions - Acciones pendientes de input

Acciones de Input

  • jenkins_submit_input_action - Enviar aprobación/rechazo

Reportes de Cobertura

  • jenkins_get_coverage_report - Reporte de cobertura general

  • jenkins_get_coverage_lines - Cobertura de archivo específico

  • jenkins_get_coverage_paths - Listar archivos con cobertura

Uso

Obtener estado de un job

¿Cuál es el estado del job "mi-app"?

Iniciar un build

Inicia el job "mi-app" con la rama "feature/nueva-funcionalidad"

Ver cobertura de código

Muéstrame el reporte de cobertura del build #123 de "mi-app"

Aprobar un deployment

Obtén las acciones pendientes del build #456 de "mi-app" y luego aprueba el deployment

Simplificaciones respecto al código Java original

  • Eliminación del parámetro : Solo se usa app para simplificar

  • Estructura de jobs simplificada: /job/app-{app}-pipeline en lugar de /job/{area}/job/app{area}-{app}-pipeline

  • Configuración por variables de entorno: Más simple que la configuración de Spring Boot

Ejecución Manual

Con npx:

# Configurar variables de entorno export JENKINS_URL="https://tu-jenkins.com" export JENKINS_USERNAME="tu-usuario" export JENKINS_PASSWORD="tu-token" # Ejecutar npx @grec0/mcp-jenkins

Con instalación global:

# Instalar globalmente npm install -g @grec0/mcp-jenkins # Configurar variables de entorno export JENKINS_URL="https://tu-jenkins.com" export JENKINS_USERNAME="tu-usuario" export JENKINS_PASSWORD="tu-token" # Ejecutar mcp-jenkins

Desarrollo

# Clonar el repositorio git clone https://github.com/gcorroto/mcp-jenkins.git cd mcp-jenkins # Instalar dependencias npm install # Compilar npm run build # Ejecutar en modo desarrollo npm run dev # Ejecutar tests npm test

Licencia

MIT

Contribuciones

Las contribuciones son bienvenidas. Por favor:

  1. Fork el proyecto

  2. Crea una rama para tu feature (git checkout -b feature/nueva-feature)

  3. Commit tus cambios (git commit -am 'Agregar nueva feature')

  4. Push a la rama (git push origin feature/nueva-feature)

  5. Abre un Pull Request

Soporte

Si encuentras algún problema, por favor abre un issue en GitHub.

Latest Blog Posts

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/gcorroto/mcp-jenkins'

If you have feedback or need assistance with the MCP directory API, please join our Discord server