Connect your AI Agents to Jenkins in minutes

Merge lets you securely connect your agents to Jenkins and thousands of tools instantly

Available tools

trigger_build

Trigger a new Jenkins build for a job. Optionally pass build parameters. Returns the queue item URL. Use list_jobs to find valid job names.

get_build

Get details of a specific Jenkins build including result, duration, and timestamps. Use list_builds to find valid build numbers.

list_builds

List builds for a Jenkins job with pagination. Returns build numbers, results, and timestamps. Use offset and limit for next page.

get_build_log

Get the console output of a Jenkins build as plain text. Use list_builds to find valid build numbers.

stop_build

Stop a running Jenkins build. Use list_builds to find builds where building=true.

list_jobs

List Jenkins jobs with pagination. Returns job names, URLs, and status colors. Use offset and limit for next page.

get_job

Get Jenkins job details by name including build history, health, and configuration. For jobs in folders, use 'folder/job-name'.

get_job_config

Get the XML configuration of a Jenkins job. Returns the raw config.xml. Use list_jobs to find valid job names.

enable_job

Enable a disabled Jenkins job so it can be built. Use list_jobs to find valid job names.

disable_job

Disable a Jenkins job to prevent new builds. The job remains visible but cannot be triggered. Use list_jobs to find valid job names.

delete_job

Permanently delete a Jenkins job and all its build history. This cannot be undone. Use list_jobs to find valid job names.

list_nodes

List all Jenkins nodes (agents and built-in). Returns node names, executor counts, and online/offline status.

get_node

Get details of a Jenkins node including executors, offline status, and configuration. Use list_nodes to find valid names.

list_queue_items

List items in the Jenkins build queue. Shows jobs waiting to be built, why they are queued, and whether they are blocked or stuck.

cancel_queue_item

Cancel a queued Jenkins build. Use list_queue_items to find valid queue IDs.

list_plugins

List all installed Jenkins plugins. Returns plugin names, versions, and whether updates are available.

get_system_info

Get Jenkins system information including mode, executor count, security status, and whether Jenkins is preparing for shutdown.

validate_credential

Validate Jenkins credentials by fetching the current user. Returns success status and message.

View all tools by creating a free accountSee more tools

How to set up Merge Agent Handler

In an mcp.json file, add the configuration below, and restart Cursor.

Learn more in the official documentation ↗

1{
2  "mcpServers": {
3    "agent-handler": {
4      "url": "https://ah-api-develop.merge.dev/api/v1/tool-packs/{TOOL_PACK_ID}/registered-users/{REGISTERED_USER_ID}/mcp",
5      "headers": {
6        "Authorization": "Bearer yMt*****"
7      }
8    }
9  }
10}
11
Copy Code

Open your Claude Desktop configuration file and add the server configuration below. You'll also need to restart the application for the changes to take effect.

Make sure Claude is using the Node v20+.

Learn more in the official documentation ↗

1{
2  "mcpServers": {
3    "agent-handler": {
4      "command": "npx",
5      "args": [
6        "-y",
7        "mcp-remote@latest",
8        "https://ah-api-develop.merge.dev/api/v1/tool-packs/{TOOL_PACK_ID}/registered-users/{REGISTERED_USER_ID}/mcp",
9        "--header",
10        "Authorization: Bearer ${AUTH_TOKEN}"
11      ],
12      "env": {
13        "AUTH_TOKEN": "yMt*****"
14      }
15    }
16  }
17}
Copy Code
Copied!

Open your Windsurf MCP configuration file and add the server configuration below.
Click on the refresh button in the top right of the Manage MCP server page or in the top right of the chat box in the box icon.

Learn more in the official documentation ↗

1{
2    "mcpServers": {
3      "agent-handler": {
4        "command": "npx",
5        "args": [
6          "-y",
7          "mcp-remote@latest",
8          "https://ah-api.merge.dev/api/v1/tool-packs/<tool-pack-id>/registered-users/<registered-user-id>/mcp",
9          "--header",
10          "Authorization: Bearer ${AUTH_TOKEN}"
11        ],
12        "env": {
13          "AUTH_TOKEN": "<ah-production-access-key>"
14        }
15      }
16    }
17  }
Copy Code

In Command Palette (Cmd+Shift+P on macOS, Ctrl+Shift+P on Windows), run "MCP: Open User Configuration".

You can then add the configuration below and press "start" right under servers. Enter the auth token when prompted.

Learn more in the official documentation ↗

1{
2  "inputs": [
3    {
4      "type": "promptString",
5      "id": "agent-handler-auth",
6      "description": "Agent Handler AUTH_TOKEN", // "yMt*****" when prompt
7      "password": true
8    }
9  ],
10  "servers": {
11    "agent-handler": {
12      "type": "stdio",
13      "command": "npx",
14      "args": [
15        "-y",
16        "mcp-remote@latest",
17        "https://ah-api-develop.merge.dev/api/v1/tool-packs/{TOOL_PACK_ID}/registered-users/{REGISTERED_USER_ID}/mcp",
18        "--header",
19        "Authorization: Bearer ${input:agent-handler-auth}"
20      ]
21    }
22  }
23}
Copy Code

FAQs on using Merge's Jenkins  MCP server

FAQs on using Merge's Jenkins  MCP server

What is a Jenkins MCP?

A Jenkins MCP server is a protocol layer that gives your agents access to Jenkins build and job data through tools. Your agents can invoke these tools to trigger builds, retrieve logs, inspect job configurations, monitor queue state, and manage pipeline execution, and more.

Jenkins offers an MCP server plugin, but you can also use a Jenkins MCP server from a third-party platform, like Merge Agent Handler.

How can I use the Jenkins MCP server?

The use cases naturally depend on the agent you've built, but here are a few common ones:

  • Incident triage from build failures: When a Jenkins build fails, an agent retrieves the build log, identifies the failing test or error message, and posts a summary to the relevant Slack channel with the job name and build number, so engineers have the failure context before they open Jenkins
  • Automated deployment gating: After a pull request is merged in GitHub, an agent triggers the corresponding Jenkins deployment job, polls for build status, and updates the pull request with a comment once the build completes or fails
  • Pipeline health reporting: Each morning, an agent lists all jobs that failed or are currently queued across a Jenkins instance and posts a consolidated status digest to a DevOps Slack channel, replacing manual dashboard checks before standups
  • Blocked build escalation: When a build has been sitting in the Jenkins queue longer than a defined threshold, an agent cancels the queue item, posts an alert in the on-call channel with the job name and wait time, and pages the responsible team for intervention

What are popular tools for Jenkins's MCP server?

Here are some of the most commonly used tools:

  • trigger_build: kicks off a specific Jenkins job by name, with optional parameters passed at build time. Use this when an agent needs to initiate a deployment or test run in response to an event in another system
  • get_build_log: retrieves the console output for a specific build run. Useful for agents that need to parse failure messages, extract test results, or summarize what happened during a build before surfacing context to a developer
  • list_jobs: returns all jobs within a Jenkins instance or folder. Call this when an agent needs to enumerate available pipelines before filtering, searching, or triggering a specific one
  • get_build: fetches the status, result, duration, and metadata for a specific build. Good for workflows that poll build state after triggering a job and need to determine whether to proceed, wait, or escalate
  • list_builds: returns recent build history for a given job. Helpful when an agent needs to identify patterns, like repeated failures on the same branch, before generating a report or recommendation
  • list_queue_items: shows all builds currently waiting to run in the Jenkins executor queue. Call this when an agent needs to detect backlog, cancel stuck jobs, or report queue depth to an ops channel

What makes Merge Agent Handler's Jenkins MCP server better than alternative Jenkins MCP servers?

Here is what sets Merge Agent Handler's Jenkins MCP server apart from the official plugin or other alternatives:

  • Enterprise-grade security and DLP: Merge Agent Handler includes built-in data loss prevention controls that let you block or redact sensitive fields before they reach an agent. For Jenkins, this means you can prevent build logs containing environment variables, secret values, or internal hostnames from being surfaced to agents that have no reason to see that data
  • Managed authentication and credentials: Merge stores and refreshes your Jenkins credentials on your behalf. You never hand API tokens or Jenkins user credentials directly to an agent, and you don't have to manage token rotation when credentials change
  • Real-time observability and audit trail: Every tool call against Jenkins is logged with the timestamp, tool name, input parameters, and response. You can see exactly which builds an agent triggered, which logs it read, and which jobs it disabled, without adding any custom instrumentation to your pipelines
  • Tool Packs and controlled access: Tool Packs let you define exactly which Jenkins tools each agent can reach. A read-only build monitoring agent gets list_jobs, get_build, and get_build_log. It never gets access to trigger_build, delete_job, or other write operations

How can I start using Merge Agent Handler's Jenkins MCP server?

You can take the following steps:

1. Create or log into your Merge Agent Handler account.

2. Install the Merge CLI by running pipx install merge-api, then run merge configure to link the CLI to your Merge account and merge login to authenticate your session.

3. Register the Agent Handler MCP server with Claude Code by running claude mcp add --transport http agent-handler https://ah-api.merge.dev/mcp, then open Claude Code and run /mcp to confirm agent-handler appears with a connected status.

4. Select agent-handler from the MCP list. This opens a browser window where you select which integrations to authenticate. Choose Jenkins and complete the credential setup. Merge stores and manages the credentials going forward.

5. Open a Claude Code session and start querying Jenkins data directly. The first time you use a Jenkins tool, a Magic Link may appear to complete connector authentication.

If you want to connect Merge Agent Handler's Jenkins MCP with internal or customer-facing agentic products, you can follow the steps in our docs.

Explore other MCP servers built and managed by Merge

activecampaign
ActiveCampaign
ahrefs
Ahrefs
airtable
Airtable
amadeus
Amadeus
amazon_s3
Amazon S3
amplitude
Amplitude
anaplan
Anaplan
apollo
Apollo
arize
Arize
articulate
Articulate Reach 360
asana
Asana
attio
Attio
aviationstack
Aviationstack
bamboohr
BambooHR
basecamp
Basecamp
biorxiv
bioRxiv
bitbucket
Bitbucket
bitly
Bitly
box
Box
calendly
Calendly
canva
Canva
clickup
ClickUp
clinicaltrials
ClinicalTrials.gov
cloudflare
Cloudflare

Ready to try it out?

Whether you're an engineer experimenting with agents or a product manager looking to add tools, you can get started for free now