Mcp JenkinsSAFE
🛠️ Drive Jenkins from Claude — trigger builds, watch pipelines, and manage CI/CD jobs & nodes
Overview
From the repository's own README, as read at the audited commit. Badges and raw HTML are left out.
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_token8e807bb3a512OBSERVED · 2026-10-12Connect
Built from this server's own package name, version and transport as found in its source — not copied from anyone's documentation, so it cannot drift against a page we do not control.
claude mcp add mcp-jenkins -- npx -y @kud/[email protected]
{
"mcpServers": {
"mcp-jenkins": {
"command": "npx",
"args": [
"-y",
"@kud/[email protected]"
]
}
}
}Exposed tools (38)
27 read · 9 write · 2 destructive. Blast radius: 2 tools can delete or overwrite — an agent that can be talked into calling a tool can be talked into calling this one.
| Tool | Risk | Description |
|---|---|---|
jenkins_cancel_queue | read | Cancel a queued build by queue ID |
jenkins_cancel_quiet_down | read | Cancel Jenkins quiet mode and resume accepting new builds |
jenkins_copy_job | read | Copy/duplicate a Jenkins job under a new name |
jenkins_create_job | write | Create a new Jenkins job from an XML configuration |
jenkins_delete_build | destructive | Delete a specific build |
jenkins_delete_job | destructive | Permanently delete a job (WARNING: cannot be undone) |
jenkins_disable_job | write | Disable a job to prevent it from running |
jenkins_enable_job | write | Enable a disabled job |
jenkins_get_artifact | read | Download a specific artifact from a build (returns base64-encoded content) |
jenkins_get_build_changes | read | Get Git commits/changes for a build |
jenkins_get_build_status | read | Get detailed status of a specific build number for a job |
jenkins_get_console_log | read | Get console log output from a build. Returns both a snippet and full log. |
jenkins_get_job_config | read | Get job configuration XML |
jenkins_get_job_parameters | read | Get the parameter definitions for a parameterised Jenkins job — names, types, defaults, and choices |
jenkins_get_job_status | read | Get the status of the last build for a specific job |
jenkins_get_node | read | Get detailed information about a specific Jenkins node/agent |
jenkins_get_pipeline_stages | read | Get pipeline stages and their status for a build |
jenkins_get_plugins | read | List all installed Jenkins plugins |
jenkins_get_queue | read | Get the current build queue showing pending builds |
jenkins_get_recent_builds | read | Get recent builds for a job with their status and metadata |
jenkins_get_system_info | read | Get Jenkins system information |
jenkins_get_test_results | read | Get test results for a build (pass/fail counts, test suites) |
jenkins_get_version | read | Get Jenkins version |
jenkins_get_view | read | Get details and job list for a specific Jenkins view |
jenkins_list_artifacts | read | List all artifacts produced by a specific build |
jenkins_list_instances | read | List all configured Jenkins instances with their names and URLs |
jenkins_list_jobs | read | List Jenkins jobs and folders with full paths; pass recursive to traverse nested folders |
jenkins_list_nodes | read | List all Jenkins nodes/agents and their status |
jenkins_list_views | read | List all Jenkins views with their jobs |
jenkins_quiet_down | write | Put Jenkins into quiet mode — no new builds will start until cancelled (requires confirm: true) |
jenkins_rename_job | write | Rename a Jenkins job |
jenkins_replay_build | read | Replay/rerun a pipeline build, optionally with a modified pipeline script |
jenkins_safe_restart | write | Safely restart Jenkins — waits for running builds to finish before restarting (requires confirm: true) |
jenkins_search_jobs | read | Search for Jenkins jobs by name (case-insensitive substring match) |
jenkins_stop_build | write | Stop/abort a running build |
jenkins_toggle_node_offline | read | Toggle a Jenkins node/agent between online and offline |
jenkins_trigger_build | write | Trigger a new build for a job, optionally with parameters |
jenkins_update_job_config | write | Update an existing job |
Trust audit
SAFEgrade B · trust 89/100 Nothing in the source contradicts what it says it does. Grade A is reserved for packages that have also passed the behavioural sandbox.
| Layer | What it checks | Result |
|---|---|---|
| L0 | Provenance & inventory | PASS |
| L1 | Static analysis of the code | PASS |
| L2 | Instruction surface (what it tells the agent) | PASS |
| L3 | Class-specific surface | WARN |
| L4 | Behavioural (sandbox) | SKIPPED |
What the source does
- Filesystem
- declared (1 observation(s))
- Network
- declared (5 observation(s))
- Shell
- none-observed
- Dependencies
- not all pinned
- Secrets in source
- none-found
Findings (7)
jenkins_delete_build, jenkins_delete_job
} from "../../src/common/env.js"
import { DEFAULT_TIMEOUT_MS } from "../../src/common/http.js"import { logger } from "../../src/common/logger.js"import { JenkinsClient } from "../../src/lib/jenkins-client.js"import * as common from "../../src/common/index.js"
@modelcontextprotocol/sdk, @types/node, tsx, typescript
Gates applied: no_behavioural_pass.
8e807bb3a512full audit observations/trust-audit/mcp-server/kud__mcp-jenkins.json · Report an issue / request a re-scanAudit history
Every audit this server has had. A grade with a past is a grade somebody is still checking.
| Date | Source | Verdict | Grade | Score | Change |
|---|---|---|---|---|---|
| 2026-10-12 | 8e807bb3a512 | SAFE | B | 89 | first audit |
Questions
What is the @kud/mcp-jenkins MCP server?
🛠️ Drive Jenkins from Claude — trigger builds, watch pipelines, and manage CI/CD jobs & nodes
What tools does @kud/mcp-jenkins expose?
38 in total: 27 read-only, 9 that write, and 2 that can delete or overwrite (jenkins_delete_build, jenkins_delete_job). Every one is listed on this page with its risk.
Is @kud/mcp-jenkins safe to connect to an agent?
The audit found nothing in the source that contradicts what it says it does, and graded it B (89/100). Grade A is held back for packages that have also passed a sandboxed behavioural run, which is why a clean server reads B. Separately from the audit: 2 of its tools can destroy data, so scope the token you give it to what you actually need.
What credentials does @kud/mcp-jenkins need?
No credential environment variables were found in its source, so it appears to need none.
How does @kud/mcp-jenkins run?
It speaks stdio, so it runs as a local process your client starts. It is published on npm as @kud/mcp-jenkins at 2.3.0.
How current is this page?
The grade is for one exact copy of the source (8e807bb3a512), read on 2026-10-12. The repository is watched and re-audited when it changes.