Jenkins MCP
Jenkins MCP
Ein MCP Server, der auf der Jenkins REST API basiert und auf Kompatibilität mit Jenkins 2.332.2, 2.356 und späteren Versionen abzielt.
Er installiert keine Jenkins-Plugins und unterliegt daher nicht der Mindest-Jenkins-Kernversion, die das offizielle mcp-server-Plugin voraussetzt. Ein MCP Server kann in der Konfiguration mehrere Jenkins-Instanzen gleichzeitig verwalten und die Zielinstanz über jenkins_name auswählen.
Implementierte Funktionen
Jenkins-Version und Kompatibilitätsfähigkeiten abfragen
Aktuell authentifizierten Benutzer abfragen
Jobs im Stammverzeichnis oder in einem Folder abfragen
Job und Build abfragen
Build-Logs abrufen und die Anzahl der zurückgegebenen Zeilen begrenzen
Queue, Queue Item und Knoten abfragen
Builds auslösen, Builds stoppen, Builds in der Warteschlange abbrechen
Authentifizierung mit Benutzername + API Token
Jenkins CSRF Crumb automatisch abrufen und erneut versuchen
Standardmäßig schreibgeschützt; für Schreiboperationen muss explizit
read_only: falsegesetzt werden
Related MCP server: Jenkins MCP Server
Installation
Es wird empfohlen, Python 3.10 oder höher zu verwenden:
python3 -m venv .venv
source .venv/bin/activate
python -m pip install -e '.[dev]'Konfiguration mehrerer Jenkins-Instanzen
Erstellen Sie jenkins-mcp.json:
{
"instances": [
{
"name": "jenkins-233",
"base_url": "https://jenkins-233.example.com",
"username": "mcp-user",
"api_token": "replace-me",
"read_only": true,
"verify_ssl": true,
"timeout_seconds": 30,
"max_log_lines": 2000
},
{
"name": "jenkins-356",
"base_url": "https://jenkins-356.example.com/jenkins",
"username": "mcp-user",
"api_token": "replace-me",
"read_only": false
}
],
"server": {
"transport": "stdio",
"log_level": "INFO"
}
}Starten:
jenkins-mcp --config jenkins-mcp.jsonIn Produktionsumgebungen wird empfohlen, die Konfiguration über Umgebungsvariablen oder ein Schlüsselverwaltungssystem zu injizieren und API Tokens nicht in Git zu committen.
Konfiguration einer einzelnen Jenkins-Instanz über Umgebungsvariablen
Alternativ können folgende Variablen verwendet werden:
export JENKINS_URL='https://jenkins.example.com'
export JENKINS_USERNAME='mcp-user'
export JENKINS_API_TOKEN='replace-me'
export JENKINS_READ_ONLY='true'
jenkins-mcpBei mehreren Instanzen kann das JSON-Array in JENKINS_INSTANCES_JSON abgelegt werden, oder JENKINS_CONFIG_FILE kann auf eine JSON-Konfigurationsdatei verweisen.
MCP-Client-Konfiguration
stdio-Beispiel:
{
"mcpServers": {
"jenkins": {
"command": "/absolute/path/to/.venv/bin/jenkins-mcp",
"args": ["--config", "/absolute/path/to/jenkins-mcp.json"]
}
}
}Bei Tool-Aufrufen wird jenkins_name verwendet, zum Beispiel:
list_jobs(jenkins_name="jenkins-233")
get_build_log(jenkins_name="jenkins-356", job_name="team/app", build_number=123)Versionskompatibilitätsstrategie
Der Dienst erkennt die Version über den X-Jenkins-Antwortheader von Jenkins. 2.332.2 ist die aktuelle Mindestkompatibilitätsbasis, 2.356 verwendet dieselben grundlegenden REST-API-Fähigkeiten. Versionsbezogene Unterschiede sind im Fähigkeitsmodell von versioning.py hinterlegt; die MCP-Toolschicht enthält keine direkten Versionsprüfungen.
Die grundlegende REST API eignet sich besser für die versionsübergreifende Verwendung als die Jenkins-Plugin-API, aber pluginspezifische Funktionen, erweiterte Pipeline-Informationen und die Credential-Verwaltung sind nicht Teil der aktuellen versionsübergreifenden Garantie.
Entwicklung
pytest
ruff check .This server cannot be deployed
Maintenance
Related MCP Connectors
MCP server for Appcircle mobile CI/CD platform.
MCP Server for JFrog, providing tools for development and artifact management.
Public MCP server for discovering open jobs. Search, filter, and get application links.
A MCP server built for developers enabling Git based project management with project and personal…
Related MCP Servers
- AlicenseBqualityDmaintenanceEnables managing Jenkins operations like listing jobs, triggering builds, and checking build statuses through a configurable MCP server.310Apache 2.0
- AlicenseNot gradedqualityDmaintenanceAn MCP server for interacting with a Jenkins CI/CD server. Allows you to trigger jobs, check build statuses, and manage your Jenkins instance through MCP.30 npm14Apache 2.0
- AlicenseAqualityCmaintenanceA local MCP server for Jenkins that provides 17 tools to interact with Jenkins jobs, builds, logs, SCM, and test results via REST API, no plugin required.17128 npm1MIT
- AlicenseNot gradedqualityAmaintenanceMCP server for Jenkins to inspect builds, control jobs, and manage pipeline configuration.935 npmMIT