Skip to main content
Glama
mdtahmidhossain

jenkins-http-mcp-server

Jenkins MCP 服务器

用于 Jenkins 2.563 的外部 Python MCP 服务器。它通过常规 Jenkins HTTP API 进行连接,使用 JENKINS_USERJENKINS_API_TOKEN 可用的权限。

它不需要 Jenkins 管理员访问权限,不需要安装 Jenkins 插件,也不依赖官方的 Jenkins MCP 服务器插件。

Python 设置

本项目使用本地可用的最新稳定版 Python 3.14.x 通过 pyenv 初始化:

  • Python: 3.14.4

  • pyenv virtualenv: venv3144

复现步骤:

pyenv local venv3144
python --version
which python
pyenv version

安装

python -m pip install -e '.[dev]'

环境

必需:

export JENKINS_URL="https://jenkins.example.com/"
export JENKINS_USER="your-user"
export JENKINS_API_TOKEN="your-api-token"

可选:

export JENKINS_VERIFY_SSL=1
export JENKINS_TIMEOUT_SECONDS=30
export JENKINS_MCP_MAX_RESPONSE_BYTES=2000000
export JENKINS_MCP_MAX_LOG_BYTES=200000

写入权限:

export JENKINS_MCP_ENABLE_WRITES=1
export JENKINS_MCP_ENABLE_JOB_CONFIG_WRITE=1
export JENKINS_MCP_ENABLE_DELETE=1

请勿在 MCP 客户端配置文件中存储真实的 Jenkins 密钥。

运行 STDIO 服务器

python -m jenkins_mcp_server

控制台脚本:

jenkins-mcp-server

客户端设置

  • Codex CLI: docs/codex-setup.md

  • Gemini CLI: docs/gemini-setup.md

工具

只读:

  • jenkins_whoami

  • jenkins_version

  • jenkins_health

  • jenkins_get_json

  • jenkins_list_jobs

  • jenkins_get_job

  • jenkins_get_job_config

  • jenkins_list_builds

  • jenkins_get_build

  • jenkins_get_build_log

  • jenkins_get_build_artifacts

  • jenkins_get_test_report

  • jenkins_list_queue

  • jenkins_get_queue_item

  • jenkins_list_views

  • jenkins_get_view

  • jenkins_list_nodes

  • jenkins_get_node

  • jenkins_list_plugins

写入工具,受 JENKINS_MCP_ENABLE_WRITES=1 控制:

  • jenkins_trigger_build

  • jenkins_trigger_build_with_parameters

  • jenkins_stop_build

  • jenkins_cancel_queue_item

  • jenkins_enable_job

  • jenkins_disable_job

可选的任务配置工具,受 JENKINS_MCP_ENABLE_WRITES=1JENKINS_MCP_ENABLE_JOB_CONFIG_WRITE=1 控制:

  • jenkins_create_job

  • jenkins_copy_job

  • jenkins_update_job_config

删除操作额外需要 JENKINS_MCP_ENABLE_DELETE=1

  • jenkins_delete_job

安全性

  • 默认只读。

  • 写入工具需要明确的本地环境变量标志和 Jenkins 端的权限。

  • Jenkins 日志和任务输出被视为不可信文本。

  • 服务器辅助程序不会打印 API 令牌和授权标头。

  • 401、403、404、crumb 失败和权限失败会返回结构化错误。

限制

  • 无脚本控制台。

  • 无重启、安全重启或静默功能。

  • 无插件安装/更新。

  • 无凭据读取/写入。

  • 无节点创建/删除。

  • 无全局配置更改。

  • 无用户管理。

  • jenkins_get_test_report 依赖于诸如 JUnit 之类的测试报告插件来公开 testReport;如果不存在,它会明确报错。

  • 嵌套文件夹路径被 URL 编码为重复的 job/<segment> 路径组件。没有所需文件夹/任务类型的控制器会返回 Jenkins 404 错误。

测试

常规测试已模拟,不需要实时 Jenkins 控制器:

python -m pytest
python -m compileall src
ruff check

可选的集成测试仅在全部设置完成后运行:

export JENKINS_INTEGRATION_TESTS=1
export JENKINS_URL="https://jenkins.example.com/"
export JENKINS_USER="your-user"
export JENKINS_API_TOKEN="your-api-token"
python -m pytest tests/test_integration.py

证据文档

  • docs/source-truth.md

  • docs/source-skills-check.md

  • docs/existing-research.md

  • docs/architecture-decision.md

  • docs/tool-evidence.md

  • docs/security.md

Install Server
A
license - permissive license
B
quality
C
maintenance

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/mdtahmidhossain/jenkins-http-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server