Jenkins
A server for integrating with Jenkins CI/CD to manage and trigger builds.
@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 pipelinesgit-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 jobjenkins_start_job- Iniciar un job con rama específicajenkins_stop_job- Detener un job en ejecuciónjenkins_get_git_branches- Listar ramas de Git disponibles
Monitoreo de Builds
jenkins_get_build_steps- Ver steps de un buildjenkins_get_node_status- Estado de un nodo específicojenkins_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 generaljenkins_get_coverage_lines- Cobertura de archivo específicojenkins_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 usaapppara simplificar - Estructura de jobs simplificada:
/job/app-{app}-pipelineen 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:
- Fork el proyecto
- Crea una rama para tu feature (
git checkout -b feature/nueva-feature) - Commit tus cambios (
git commit -am 'Agregar nueva feature') - Push a la rama (
git push origin feature/nueva-feature) - Abre un Pull Request
Soporte
Si encuentras algún problema, por favor abre un issue en GitHub.
Verwandte Server
Alpha Vantage MCP Server
SponsorAccess financial market data: realtime & historical stock, ETF, options, forex, crypto, commodities, fundamentals, technical indicators, & more
Docfork
Provides up-to-date documentation for over 9000 libraries directly within AI code editors.
Starknet MCP
An MCP server providing access to various Starknet RPC methods.
PropelAuth Integration MCP Server
The PropelAuth Integration MCP Server helps you and your favorite AI agent integrate PropelAuth as quickly and easily as possible into your project.
s&box MCP Server
Enables AI assistants to interact with s&box game objects and components via WebSocket communication.
MCPStore
An enterprise-grade MCP tool management solution for simplifying AI Agent tool integration, service management, and system monitoring.
MCP-Portainer Bridge
Manage Docker containers through the Portainer API.
Qwen-Agent
A framework for developing LLM applications with capabilities like tool usage, planning, and memory, based on the Qwen model.
Obsidian Claude Code
An Obsidian plugin that integrates Claude Code into your vaults via an MCP server.
MCP Python REPL Server
An interactive Python REPL server with built-in support for the uv package manager and virtual environments.
i18next MCP Server
An MCP server for managing translations in i18next projects, allowing AI assistants to interact directly with translation files.