Skip to main content
Glama

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: false gesetzt 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.json

In 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-mcp

Bei 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 .
A
license - permissive license
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    B
    quality
    D
    maintenance
    Enables managing Jenkins operations like listing jobs, triggering builds, and checking build statuses through a configurable MCP server.
    3
    10
    Apache 2.0

View all related MCP servers

Related MCP Connectors

View all MCP Connectors

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

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