这是一个基于模型上下文协议(MCP)的服务器,提供了与Jenkins持续集成/持续交付(CI/CD)服务器交互的工具。该服务器使AI助手能够通过标准化接口检查构建状态、触发构建并检索构建日志。
git clone https://github.com/hekmon8/jenkins-server-mcp.git
cd jenkins-server-mcp
npm install
npm run build
服务器需要以下环境变量:
JENKINS_URL:您的Jenkins服务器的URLJENKINS_USER:用于身份验证的Jenkins用户名JENKINS_TOKEN:用于身份验证的Jenkins API令牌在您的MCP设置文件中配置这些变量:
MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"jenkins-server": {
"command": "node",
"args": ["/path/to/jenkins-server-mcp/build/index.js"],
"env": {
"JENKINS_URL": "https://your-jenkins-server.com",
"JENKINS_USER": "your-username",
"JENKINS_TOKEN": "your-api-token"
}
}
}
}
获取Jenkins构建的状态:
// 示例用法
const result = await mcpClient.useTool("jenkins-server", "get_build_status", {
jobPath: "view/xxx_debug",
buildNumber: "lastBuild" // 可选,默认为lastBuild
});
输入模式:
{
"jobPath": "string", // Jenkins作业路径
"buildNumber": "string" // 可选,构建编号或"lastBuild"
}
使用参数触发新的Jenkins构建:
// 示例用法
const result = await mcpClient.useTool("jenkins-server", "trigger_build", {
jobPath: "view/xxx_debug",
parameters: {
BRANCH: "main",
BUILD_TYPE: "debug"
}
});
输入模式:
{
"jobPath": "string", // Jenkins作业路径
"parameters": {
// 构建参数作为键值对
}
}
检索Jenkins构建的控制台输出:
// 示例用法
const result = await mcpClient.useTool("jenkins-server", "get_build_log", {
jobPath: "view/x_x_debug",
buildNumber: "lastBuild"
});
输入模式:
{
"jobPath": "string", // Jenkins作业路径
"buildNumber": "string" // 构建编号或"lastBuild"
}
为了开发时自动重建:
npm run watch
由于MCP服务器通过标准I/O进行通信,您可以使用MCP Inspector进行调试:
npm run inspector
这将提供一个URL,您可以在浏览器中访问调试工具。
感谢AIMCP(https://www.aimcp.info)。
本项目采用MIT许可证——详情见LICENSE文件。