1. Conduid
  2. AI
  3. Jenkins
MCP server · AI

Jenkins

The Model Context Protocol (MCP) is an open-source implementation that bridges Jenkins with AI language models following Anthropic's MCP specification. This project enables secure, contextual AI interactions with Jenkins tools while maintaining data privacy and security.

77Good

Scored yesterday · breakdown

About Jenkins

Jenkins is an MCP server published by lanbaoshen in the AI category: the Model Context Protocol (MCP) is an open-source implementation that bridges Jenkins with AI language models following Anthropic's MCP specification. This project enables secure, contextual AI interactions with Jenkins tools while maintaining data privacy and security.

The repository has 154 stars and 70 forks, with the last commit 5 days ago. Recent commit activity is the strongest signal that reported issues will get attention.

Install

Claude Code
claude mcp add jenkins -- npx -y jenkins-mcp
npx
npx -y jenkins-mcp

This server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.

Tools (33)

build_itemBuild a item.

Parameters not published.

cancel_queue_itemCancel a specific queue item by ID.

Parameters not published.

get_all_build_artifactsList the artifacts of a specific build.

Parameters not published.

get_all_itemsGet all items in Jenkins.

Parameters not published.

get_all_nodesGet all nodes in Jenkins.

Parameters not published.

get_all_pluginsGet all installed plugins.

Parameters not published.

get_all_queue_itemsGet all queue items in Jenkins.

Parameters not published.

get_all_viewsGet the configuration of a specific view.

Parameters not published.

get_buildGet a specific build by job name and build number.

Parameters not published.

get_build_artifactDownload an artifact from a specific build.

Parameters not published.

Show all 33 tools
get_build_artifact_urlGet the direct URL of an artifact from a specific build.

Parameters not published.

get_build_console_outputGet the console output of a specific build.

Parameters not published.

get_build_parametersGet the parameters of a specific build.

Parameters not published.

get_build_scriptsGet scripts associated with a specific build.

Parameters not published.

get_build_test_reportGet the test report of a specific build.

Parameters not published.

get_itemGet a specific item by name.

Parameters not published.

get_item_configGet the configuration of a specific item.

Parameters not published.

get_item_parametersGet the parameters of a specific item.

Parameters not published.

get_nodeGet a specific node by name.

Parameters not published.

get_node_configGet the configuration of a specific node.

Parameters not published.

get_pending_inputsGet the pending input steps of a build paused for input.

Parameters not published.

get_pluginGet a specific plugin by short name.

Parameters not published.

get_plugin_dependency_graphGet dependency graph for a plugin in Graphviz format.

Parameters not published.

get_plugins_with_backupGet plugins that can be downgraded.

Parameters not published.

get_plugins_with_problemsGet plugins with problems (missing dependencies, version mismatch, etc.).

Parameters not published.

get_plugins_with_updatesGet plugins that have available updates.

Parameters not published.

get_queue_itemGet a specific queue item by ID.

Parameters not published.

get_running_buildsGet all currently running builds in Jenkins.

Parameters not published.

get_viewGet a specific view by name.

Parameters not published.

query_itemsQuery items based on pattern.

Parameters not published.

run_groovy_scriptExecute an arbitrary Groovy script on Jenkins.

Parameters not published.

stop_buildStop a specific build by job name and build number.

Parameters not published.

submit_inputProceed with or abort a pipeline input step of a build.

Parameters not published.

Ask AI

✦

Ask AI about Jenkins

Powered by Claude · Grounded in docs

I know everything about Jenkins. Ask me about installation, configuration, usage, or troubleshooting.

Security checks

Static checks derived from the repository 7 hours ago. Heuristics on the source, not an audit.

  • ✓README presentThe repository ships documentation.
  • ✓License declaredUsable under a stated license.
  • ✓Tests presentA test suite exists in the repository.
  • ✓Dependencies pinnedA lockfile pins dependency versions.
  • ✓No dynamic code executionSource scan found no eval, dynamic Function, or shell execution.
  • !Scoped permissionsDoesn't declare a permission scope. Assume it can do anything its process can.

Releases

v3.6.0v3.6.0 · 13 Oct 2026What's Changed deps: update fastmcp requirement from <4,>=3.0.2 to >=3.0.2,<5 by @dependabot[bot] in https://github.com/lanbaoshen/mcp-jenkins/pull/102 feat: allow anonymous Jenkins access when no credentials are set by @starod00m in…
v3.5.0v3.5.0 · 28 Aug 2026What's Changed feat: Add pipeline input step tools by @aivus in https://github.com/lanbaoshen/mcp-jenkins/pull/100 feat: support Jenkins credentials via environment variables and .env files by @DanielZiese in…
v3.4.0v3.4.0 · 26 May 2026What's Changed feat: implement /healthz endpoint for HTTP healthcheck by @dmitry-g in https://github.com/lanbaoshen/mcp-jenkins/pull/94 feat(script): add groovy script support by @Amor122 in…
v3.3.0v3.3.0 · 6 May 2026What's Changed Fix 414 when send large build param via `build_item` by @lanbaoshen in https://github.com/lanbaoshen/mcp-jenkins/pull/91 Add artifacts support by @lanbaoshen in https://github.com/lanbaoshen/mcp-jenkins/pull/92 Full…
v3.2.0v3.2.0 · 21 Apr 2026What's Changed feat(plugin): add plugin support with get_all_plugins, get_plugins_with_problems, get_plugin_dependency_graph by @Amor122 in https://github.com/lanbaoshen/mcp-jenkins/pull/85 New Contributors @Amor122 made their first…

README

MCP Jenkins

PyPI Version PyPI Downloads test codecov License

The Model Context Protocol (MCP) is an open-source implementation that bridges Jenkins with AI language models following Anthropic's MCP specification. This project enables secure, contextual AI interactions with Jenkins tools while maintaining data privacy and security.

Installation

Choose one of these installation methods:

# Using uv (recommended)
pip install uv
uvx mcp-jenkins

# Using pip
pip install mcp-jenkins
mcp-jenkins

# Docker
docker pull ghcr.io/lanbaoshen/mcp-jenkins:latest
docker run -p 9887:9887 --rm ghcr.io/lanbaoshen/mcp-jenkins:latest --transport streamable-http

Line Arguments

When using command line arguments, you can specify the Jenkins server details as follows:

# Simple streamable-http example
uvx mcp-jenkins --transport streamable-http
Argument Description Required
--env-file Path to a .env file to load configuration from. See Environment Variables / .env file below. No
--jenkins-url The URL of the Jenkins server. (Http app can set it via headers x-jenkins-url) No
--jenkins-username The username for Jenkins authentication. (Http app can set it via headers x-jenkins-username) Set it together with the password, or leave both unset to access Jenkins anonymously. No
--jenkins-password The password or API token for Jenkins authentication. (Http app can set it via headers x-jenkins-password) Set it together with the username, or leave both unset to access Jenkins anonymously: what the server can then do is decided by the anonymous user's permissions in Jenkins. No
--jenkins-timeout Timeout for Jenkins API requests in seconds. Default is 5 seconds. No
--jenkins-verify-ssl/--no-jenkins-verify-ssl Whether to verify SSL certificates when connecting to Jenkins. Default is to verify. No
--jenkins-session-singleton/--no-jenkins-session-singleton Whether to use a singleton Jenkins client for all requests in the same session. Default is True. No
--read-only Whether to enable read-only mode. Default is False No
--transport Transport method to use for communication. Options are stdio, sse or streamable-http. Default is stdio. No
--host Host address for streamable-http transport. Default is 0.0.0.0 No
--port Port number for streamable-http transport. Default is 9887. No

Environment Variables / .env file

Instead of passing credentials on the command line, you can set them as environment variables, or put them in a .env file:

JENKINS_URL=https://jenkins.example.com
JENKINS_USERNAME=alice
JENKINS_PASSWORD=xxxx
JENKINS_TIMEOUT=5
JENKINS_VERIFY_SSL=true

If a .env file is present in the current directory (or a parent directory), it is loaded automatically — no flag needed:

uvx mcp-jenkins --transport streamable-http

To load a .env file from a specific location, use --env-file:

uvx mcp-jenkins --env-file /path/to/.env --transport streamable-http

Values already set in the real environment take precedence over the .env file, and any --jenkins-* CLI flag takes precedence over both.

Configuration and Usage

Jetbrains Github Copilot

  1. Open Jetbrains Settings
  2. Navigate to Github Copilot > MCP > Configure
  3. Add the following configuration:
{
  "servers": {
    "my-mcp-server": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "mcp-jenkins",
        "--jenkins-url=xxx",
        "--jenkins-username=xxx",
        "--jenkins-password=xxx"
      ]
    }
  }
}

VSCode Copilot Chat

  1. Create .vscode folder with mcp.json file in you workspace for local setup or edit settings.json trough settings menu.
  2. Insert the following configuration:
  • SSE mode
{
    "servers": {
        "jenkins": {
            "url": "http://localhost:9887/sse",
            "type": "sse"
        }
    }
}
  • Streamable-Http mode
{
    "servers": {
        "mcp-jenkins-mcp": {
            "autoApprove": [],
            "disabled": false,
            "timeout": 60,
            "type": "streamableHttp",
            "url": "http://localhost:9887/mcp"
        }
    }
}

Run the Jenkins MCP server with the following command:

uvx mcp-jenkins \
  --jenkins-url xxx \
  --jenkins-username xxx  \
  --jenkins-password xxx \
  --transport sse

Health Check Endpoint

When running with --transport streamable-http or --transport sse, the server exposes a plain HTTP liveness endpoint:

GET /healthz  ->  200 OK

It always returns 200 and bypasses the x-jenkins-* auth headers, so it is safe to use directly as a Kubernetes liveness/readiness probe without any Jenkins credentials. Example probe:

livenessProbe:
  httpGet:
    path: /healthz
    port: 9887
  initialDelaySeconds: 5
  periodSeconds: 10

Note: this is a liveness check only — it does not verify connectivity to the upstream Jenkins server.

Available Tools

Tool Description
get_item Get a specific item by name.
get_item_config Get the configuration of a specific item.
get_item_parameters Get the parameters of a specific item.
get_all_items Get all items in Jenkins.
query_items Query items based on pattern.
build_item Build a item.
get_all_nodes Get all nodes in Jenkins.
get_node Get a specific node by name.
get_node_config Get the configuration of a specific node.
get_all_queue_items Get all queue items in Jenkins.
get_queue_item Get a specific queue item by ID.
cancel_queue_item Cancel a specific queue item by ID.
get_build Get a specific build by job name and build number.
get_build_scripts Get scripts associated with a specific build.
get_build_console_output Get the console output of a specific build.
get_build_parameters Get the parameters of a specific build.
get_build_test_report Get the test report of a specific build.
get_build_test_failures Get the failing tests of a specific build.
get_running_builds Get all currently running builds in Jenkins.
stop_build Stop a specific build by job name and build number.
get_pending_inputs Get the pending input steps of a build paused for input.
submit_input Proceed with or abort a pipeline input step of a build.
get_all_build_artifacts List the artifacts of a specific build.
get_build_artifact Download an artifact from a specific build.
get_build_artifact_url Get the direct URL of an artifact from a specific build.
get_view Get a specific view by name.
get_all_views Get the configuration of a specific view.
get_all_plugins Get all installed plugins.
get_plugin Get a specific plugin by short name.
get_plugins_with_problems Get plugins with problems (missing dependencies, version mismatch, etc.).
get_plugins_with_backup Get plugins that can be downgraded.
get_plugins_with_updates Get plugins that have available updates.
get_plugin_dependency_graph Get dependency graph for a plugin in Graphviz format.
run_groovy_script Execute an arbitrary Groovy script on Jenkins.

Note: get_pending_inputs reads the wfapi endpoint served by the pipeline-rest-api plugin (bundled with pipeline-stage-view). submit_input only needs that plugin when input_id is omitted — pass input_id explicitly and it works on any Jenkins with the pipeline-input-step plugin.

Contributing

CONTRIBUTING.md

License

Licensed under MIT - see LICENSE file. This is not an official Jenkins product.

Star History

Star History Chart

README fetched from the repository 7 hours ago. The original is authoritative.

Questions

About Jenkins

How do I install Jenkins?

Run claude mcp add jenkins -- npx -y jenkins-mcp, then add the server to your MCP client's configuration.

Is Jenkins safe to use with an AI agent?

Its trust score is 77 out of 100 (good). It passes 5 of the 6 static security checks run so far; the failures are listed above. It has no ConduID identity yet, so agent calls to it are not receipted.

Is Jenkins still maintained?

Yes — the latest release is v3.6.0 (13 Oct 2026), and the last commit was 5 days ago. The repository has 154 stars and 6 open issues.