jenkins-http-mcp-server
Jenkins MCP 服务器
用于 Jenkins 2.563 的外部 Python MCP 服务器。它通过常规 Jenkins HTTP API 进行连接,使用 JENKINS_USER 和 JENKINS_API_TOKEN 可用的权限。
它不需要 Jenkins 管理员访问权限,不需要安装 Jenkins 插件,也不依赖官方的 Jenkins MCP 服务器插件。
Python 设置
本项目使用本地可用的最新稳定版 Python 3.14.x 通过 pyenv 初始化:
Python:
3.14.4pyenv 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.mdGemini CLI:
docs/gemini-setup.md
工具
只读:
jenkins_whoamijenkins_versionjenkins_healthjenkins_get_jsonjenkins_list_jobsjenkins_get_jobjenkins_get_job_configjenkins_list_buildsjenkins_get_buildjenkins_get_build_logjenkins_get_build_artifactsjenkins_get_test_reportjenkins_list_queuejenkins_get_queue_itemjenkins_list_viewsjenkins_get_viewjenkins_list_nodesjenkins_get_nodejenkins_list_plugins
写入工具,受 JENKINS_MCP_ENABLE_WRITES=1 控制:
jenkins_trigger_buildjenkins_trigger_build_with_parametersjenkins_stop_buildjenkins_cancel_queue_itemjenkins_enable_jobjenkins_disable_job
可选的任务配置工具,受 JENKINS_MCP_ENABLE_WRITES=1 和 JENKINS_MCP_ENABLE_JOB_CONFIG_WRITE=1 控制:
jenkins_create_jobjenkins_copy_jobjenkins_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.mddocs/source-skills-check.mddocs/existing-research.mddocs/architecture-decision.mddocs/tool-evidence.mddocs/security.md
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