LabscoMCP early access ↗
ProgrammerAguaMCP SERVER

Jenkins API MCP Server

Jenkins job control from an assistant: trigger builds with or without parameters, stop them, read console output, and manage job configuration XML.

by ProgrammerAgua ↗Build Systems & CI/CDCommunity

LABSCO SUMMARY

Console output is where the value lands.

Triggering a build is easy anywhere; reading the console log back into the conversation is what turns a failed build into something the assistant can actually diagnose. Configuration access rounds it out — the config XML can be read and written, so a broken job can be inspected and fixed rather than only restarted. The credential is a Jenkins API token, which is the right thing to scope narrowly before handing it to an agent.

What it is

A Spring AI MCP server over the Jenkins REST API, covering the job operations people actually perform — creating and renaming jobs, running builds, and reading back what happened.

What you get

  • Job management: create, delete, rename, and enable or disable a job — createJob, deleteJob, renameJob, enableJob, disableJob
  • Builds: trigger one, trigger one with parameters, and stop a running build — buildJob, buildJobWithParams, killJob
  • Build inspection: job detail, information about a specific build, the console output, and the last build number and timestamp — getJobInfo, getBuildInfo, getBuildLog, getLastBuildNumber, getLastBuildTimestamp
  • Configuration handling: read a job's configuration XML and update it — getJobConfig, updateJobConfig

Requirements

A Jenkins server with the Remote Access API enabled, and three environment variables: JENKINS_API_SERVER_URI, JENKINS_API_USERNAME and JENKINS_API_TOKEN. JDK 17 or newer and Maven 3.6 or newer; mvn package produces the jar under /target, and the client entry runs java with -jar and the full path.

Setup effort

Build from source — git clone https://github.com/ProgrammerAgua/jenkins-mcp-server.git