Jenkins MCP Server
mcp_jenkins
Un servidor MCP de Jenkins. El Protocolo de Contexto de Modelo (MCP) permite que las herramientas de IA (como los chatbots) se comuniquen con tu configuración de Jenkins y la controlen, es decir, que recuperen información y modifiquen la configuración.
Nota: Esta es una versión experimental mínima del servidor Jenkins MCP y actualmente se encuentra en desarrollo inicial.
Descripción
Este proyecto proporciona un servidor de Protocolo de Contexto de Modelo (MCP) para interactuar con Jenkins. Permite a los usuarios activar trabajos de Jenkins, obtener estados de compilación y realizar otras operaciones relacionadas con Jenkins a través de la interfaz MCP.
Related MCP server: mcp-jenkins
Componentes
server.py: la aplicación principal del servidor Jenkins de MCP.functions_schema.md: define el esquema para las funciones expuestas por el servidor Jenkins de MCP.client.py: un cliente de ejemplo que demuestra cómo interactuar con el servidor Jenkins de MCP (se proporciona solo como referencia).functional tests: contiene pruebas funcionales para el servidor Jenkins de MCP.
Instalación
Para instalar el paquete, ejecute:
pip install .Uso
Flujos de trabajo comunes
Ejecución del servidor
Para ejecutar el servidor MCP:
./docker/run.serverEjecución del cliente de ejemplo
Para ejecutar el cliente de ejemplo:
./docker/run.clientPor ejemplo, para enumerar las compilaciones para un trabajo llamado "copias de seguridad" que utilizan un modelo específico, puede ejecutar:
./docker/run.client --model gemini-2.0-flash-001 "list builds backups"Nota: Si el paquete se instala mediante pip install . , el script de consola mcp_jenkins_client también está disponible.
Esto podría producir un resultado similar a:
Query: list builds backups
Result:
Recent builds for backups:
- Build #1086: FAILURE (http://myjenkins:8080/job/backups/1086/)Construyendo y probando con Docker
Un flujo de trabajo común para el desarrollo y las pruebas es primero construir la imagen de Docker y luego ejecutar las pruebas:
Construir la imagen de Docker: este paso prepara el entorno necesario para las pruebas.
./docker/buildEjecutar pruebas: una vez completada la compilación, ejecute las pruebas.
./docker/run.tests
Esta secuencia garantiza que las pruebas se realicen contra la última compilación en un entorno Dockerizado consistente.
Implementación de un entorno de prueba
Para implementar una instancia de prueba local de Jenkins (sin autenticación, solo para pruebas funcionales):
./docker/deploy.test.environmentConexión a una instancia de Jenkins existente
Para utilizar el servidor Jenkins MCP con una instancia de Jenkins existente, debe configurar las siguientes variables de entorno:
JENKINS_URL: La URL completa de su instancia de Jenkins (p. ej.,http://your-jenkins-host:8080). Este campo es obligatorio .JENKINS_USER: (opcional) Su nombre de usuario de Jenkins si se requiere autenticación.JENKINS_API_TOKEN: (Opcional) Su token de API de Jenkins. Debe proporcionarse junto conJENKINS_USERsi se utiliza autenticación. Puede generar un token de API en la página de configuración de su usuario de Jenkins (<Jenkins URL>/me/configure).MCP_API_KEY: Una clave API secreta para proteger este servidor MCP. Las solicitudes al servidor MCP deberán incluir esta clave en el encabezadoX-API-Key. Esto es obligatorio a menos queDEBUG_MODEse configure comotrue.DEBUG_MODE: Configúrelo comotruepara ejecutar el servidor MCP en modo de depuración, lo que omite el requisitoMCP_API_KEYy proporciona un registro más detallado. No lo use en producción.
Ejemplo de configuración (Bash):
export JENKINS_URL="http://your-jenkins-host:8080"
export JENKINS_USER="your_jenkins_username"
export JENKINS_API_TOKEN="your_jenkins_api_token"
export MCP_API_KEY="your_mcp_secret_key"
# export DEBUG_MODE="true" # Uncomment for development/testing without MCP_API_KEYUna vez configuradas estas variables de entorno, puedes ejecutar el servidor MCP mediante el script Docker:
./docker/run.serverLuego, el servidor MCP intentará conectarse a la instancia de Jenkins especificada.
Integración con OpenWebUI
El archivo open-webui/open_webui_interface.py proporciona un ejemplo de cómo integrar este servidor Jenkins MCP con una instancia de OpenWebUI.
Para usarlo:
En su interfaz OpenWebUI, navegue a la sección para agregar o configurar herramientas.
Crear una nueva herramienta.
Copie todo el contenido del archivo
open-webui/open_webui_interface.pyy péguelo en la configuración de la herramienta en OpenWebUI.Importante : Deberás ajustar los parámetros de conexión dentro del código pegado, específicamente:
MCP_JENKINS_SERVER_URL: Establezca esta variable de entorno en su entorno OpenWebUI con la URL del servidor MCP Jenkins en ejecución (p. ej.,http://localhost:5000). El script tomahttp://localhost:5000de forma predeterminada si no se establece la variable.MCP_API_KEY: Si su servidor Jenkins de MCP está configurado para requerir una clave API, asegúrese de que esta variable de entorno esté definida en su entorno OpenWebUI. El script mostrará una advertencia si no la encuentra, pero intentará realizar solicitudes.
Una vez configuradas, las herramientas definidas en open_webui_interface.py (por ejemplo, list_jobs , trigger_build , get_build_status ) deberían estar disponibles para su uso dentro de su interfaz de chat OpenWebUI.
Licencia
Este proyecto está licenciado bajo la licencia MIT.
This server cannot be deployed
Related MCP Connectors
The Buildkite MCP server exposes Buildkite product data (pipelines, builds, jobs, and test data) to AI tools, editors, and agents through the Model Context Protocol. It provides capabilities including pipeline creation and management, build monitoring with specialized tools like 'wait_for_build', efficient log querying using Apache Parquet conversion and caching, and OAuth-based authentication for both read-write and read-only access to Buildkite's REST API.
MCP server for your apps' tools and custom tools, plus hosted AI agents and approval-gated workflows
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
MCP server unifying ERPs, CRMs, APIs and knowledge base for Claude, ChatGPT and Gemini.
Related MCP Servers
- AlicenseBqualityCmaintenanceA 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.315MIT
- AlicenseBqualityAmaintenanceThe Model Context Protocol (MCP) Jenkins integration is an open-source implementation that bridges Jenkins with AI language models following Anthropic's MCP specification. This project enables secure, contextual AI interactions with Jenkins tools while maintaining data privacy and security.36154MIT
- FlicenseNot gradedqualityDmaintenanceAn all-in-one Model Context Protocol (MCP) server that connects your coding AI to numerous databases, data warehouses, data pipelines, and cloud services, streamlining development workflow through seamless integrations.4-
- AlicenseCqualityDmaintenanceA Model Context Protocol (MCP) server that provides AI-powered security analysis and safety instruction tools. This server helps protect AI agents by providing security guidelines, content analysis, and cautionary instructions when interacting with various MCPs and external services.623 npm22ISC