Jenkins MCP server with bearer token authentication support
Website · Documentation
Features
- 38 tools — covers ~95% of the Jenkins API: jobs, builds, nodes, views, queue, plugins, and system operations
- Bearer token auth — supports both classic API token and modern bearer token authentication
- Multiple instances — connect to several Jenkins servers simultaneously using comma-separated env vars
- Pipeline awareness — retrieve stage-by-stage pipeline status, console logs, test results, and build artefacts
- Node management — list agents, toggle nodes online/offline, and inspect system info without leaving your AI client
- Zero-install usage — run directly via
npx --yes @kud/mcp-jenkins@latestwith no local setup required
Install
npm install -g @kud/mcp-jenkins
Or use without installing via npx (see Usage below).
Usage
Add the server to your MCP client config. The recommended approach uses environment variables:
{
"mcpServers": {
"jenkins": {
"command": "npx",
"args": ["--yes", "@kud/mcp-jenkins@latest"],
"env": {
"MCP_JENKINS_URL": "https://pipeline.yourcompany.com",
"MCP_JENKINS_USER": "your_username",
"MCP_JENKINS_API_TOKEN": "your_api_token"
}
}
}
}
For bearer token authentication, replace the env block with:
"env": {
"MCP_JENKINS_URL": "https://pipeline.yourcompany.com",
"MCP_JENKINS_BEARER_TOKEN": "your_bearer_token"
}
Slow instances
Every request this server makes is bounded by one deadline, 30 seconds by default. A large or busy Jenkins can spend even longer answering a single call. When that happens, the error you see (Jenkins request timed out) comes from this server giving up, not from Jenkins refusing anything.
Raise it with MCP_JENKINS_TIMEOUT_MS:
"env": {
"MCP_JENKINS_URL": "https://pipeline.yourcompany.com",
"MCP_JENKINS_BEARER_TOKEN": "your_bearer_token",
"MCP_JENKINS_TIMEOUT_MS": "60000"
}
Or on the command line:
mcp-jenkins --url https://pipeline.yourcompany.com --bearer-token abc123 --timeout-ms 60000
One value applies to every configured instance. To find out what your instance actually needs, time the call the server makes:
time curl -u user:token 'https://pipeline.yourcompany.com/job/my-job/api/json'
Environment variables
Tools
Development
git clone https://github.com/kud/mcp-jenkins.git
cd mcp-jenkins
npm install
npm run dev
To test interactively with the MCP Inspector:
npm run inspect:dev
📚 Full documentation → mcp-jenkins/docs