Skip to main content
Glama

MCP-Jenkins

by gcorroto

@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

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 JENKINS_REQUIREMENTS.md para instrucciones detalladas de instalación

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 area: 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.

Related MCP Servers

  • A
    security
    A
    license
    A
    quality
    Enables managing Jenkins operations like listing jobs, triggering builds, and checking build statuses through a configurable MCP server.
    Last updated -
    3
    8
    Python
    Apache 2.0
  • A
    security
    A
    license
    A
    quality
    A Model Context Protocol server that enables AI assistants to interact with Jenkins CI/CD servers, providing tools to check build statuses, trigger builds, and retrieve build logs.
    Last updated -
    3
    10
    JavaScript
    MIT License
    • Apple
  • A
    security
    A
    license
    A
    quality
    Simple MCP Server to enable a human-in-the-loop workflow in tools like Cline and Cursor. This is especially useful for developing desktop applications that require complex user interactions to test.
    Last updated -
    1
    41
    Python
    MIT License
    • Linux
    • Apple
  • A
    security
    F
    license
    A
    quality
    This MCP server lets you use Cursor IDE, or any MCP Client enabled agent, to use natural language to accomplish things with CircleCI, e.g: Find the latest failed pipeline on my branch and get logs
    Last updated -
    2
    2,289
    58
    TypeScript
    • Linux
    • Apple

View all related MCP servers

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