使用说明
Jenkins MCP服务器
一个模型上下文协议(MCP)服务器,它公开了Jenkins控制器的REST
API到兼容MCP的客户端,如Claude Desktop。建立在
MCP Python SDK (1.27+,
协议2025-11-25)使用 FastMCP 随着 httpx 对于异步HTTP和
pydantic-settings 用于配置。
特性
- 使用Jenkins用户名+API令牌的HTTP基本身份验证
- POST请求的自动CSRF面包屑获取和缓存
- 适用于嵌套文件夹作业路径(
team/app/main) - 用于作业、构建、控制台日志、队列、节点和插件的工具
安装
python3 -m venv .venv
source .venv/bin/activate
pip install -e ".[dev]"
配置
所有配置都是从前缀为的环境变量中读取的 JENKINS_.
| 变量 | 默认值 | 描述 |
|---|---|---|
JENKINS_BASE_URL |
http://localhost:8080 |
Jenkins控制器的基本URL |
JENKINS_USERNAME |
(空) | 用于HTTP基本身份验证的Jenkins用户 |
JENKINS_API_TOKEN |
(空) | Jenkins API令牌(在用户设置中创建) |
JENKINS_VERIFY_SSL |
true |
验证TLS证书 |
JENKINS_TIMEOUT |
30 |
HTTP超时(秒) |
A. .env 工作目录中的文件也会自动拾取。
跑步
jenkins-mcp
Claude桌面配置
向添加条目 claude_desktop_config.json:
{
"mcpServers": {
"jenkins": {
"command": "jenkins-mcp",
"env": {
"JENKINS_BASE_URL": "https://jenkins.example.com",
"JENKINS_USERNAME": "your-username",
"JENKINS_API_TOKEN": "your-api-token"
}
}
}
}
工具
| 工具 | 说明 |
|---|---|
list_jobs |
列出作业(可选范围为文件夹) |
get_job |
返回完整的作业元数据 |
trigger_build |
触发构建,可选地使用参数 |
get_build |
返回特定版本的元数据 |
get_build_log |
获取构建的控制台文本 |
stop_build |
停止正在运行的构建 |
list_builds |
列出最新版本(limit 默认为20) |
list_queue |
列出排队的构建项 |
cancel_queue_item |
按id取消队列项目 |
list_nodes |
列出Jenkins节点/代理 |
get_plugin_list |
列出已安装的Jenkins插件 |
发展
使用以下工具运行测试:
pytest -x --tb=short
棉绒:
ruff check src tests
