createJobLABSCO 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
USE CASES
Diagnosing a failed build
Read the last build number, pull its information, and read the console output to find where it broke.
Running a parameterised job
Trigger the build with its parameters from the conversation, and stop it if it was started with the wrong ones.
Fixing a misconfigured job
Read the configuration XML, work out what is wrong, and write the corrected version back.
Taking a job out of rotation
Disable it rather than deleting it, then re-enable when the underlying problem is fixed.
15 tools
Listed in project docs. Your client may show a different list.
deleteJobenableJobdisableJobrenameJobbuildJobbuildJobWithParamskillJobgetJobInfogetBuildInfogetBuildLoggetLastBuildNumbergetLastBuildTimestampgetJobConfigupdateJobConfigBEFORE YOU INSTALL
What to know first
Tools you get
15 tools named in the project's documentation.
Requires
- JDK 17+
- Maven 3.6+
- A Jenkins server with the Remote Access API enabled — JENKINS_API_SERVER_URI, JENKINS_API_USERNAME and JENKINS_API_TOKEN set in the client configuration's env
Where it runs
The documented client runs the server on your machine.
INSTALLATION
Connect your client
You clone and build this one yourself.
Server setup
git clone https://github.com/ProgrammerAgua/jenkins-mcp-server.git
cd jenkins-mcp-server
mvn packageMCP Clients
Any MCP client
{
"mcpServers": {
"jenkins-mcp": {
"command": "java",
"args": [
"-jar",
"<YOUR_PATH>\\mcp-jenkins-server-0.0.1-SNAPSHOT.jar"
],
"env": {
"JENKINS_API_SERVER_URI": "<YOUR_JENKINS_API_SERVER_URI>",
"JENKINS_API_USERNAME": "<YOUR_JENKINS_API_USERNAME>",
"JENKINS_API_TOKEN": "password/token"
}
}
}
}<YOUR_PATH> is the full path of the target folder in your clone, where mvn package writes mcp-jenkins-server-0.0.1-SNAPSHOT.jar (on macOS or Linux, the separator is / rather than \\).