Jenkins AI交互服务器
一种模型上下文协议服务器,使AI助手能够与Jenkins CI/CD服务器交互,提供检查构建状态、触发构建和检索构建日志的工具。
服务介绍
Jenkins Server MCP
这是一个提供与Jenkins CI/CD服务器交互工具的模型上下文协议(MCP)服务器。该服务器通过标准化接口使AI助手能够检查构建状态、触发构建和检索构建日志。
安装
- 克隆此仓库:
git clone https://github.com/yourusername/jenkins-server-mcp.git
cd jenkins-server-mcp
- 安装依赖项:
npm install
- 构建项目:
npm run build
配置
服务器需要以下环境变量:
JENKINS_URL:您的Jenkins服务器的URL(默认为'http://sohoci.rd.tp-link.net/jenkins')JENKINS_USER:用于认证的Jenkins用户名JENKINS_TOKEN:用于认证的Jenkins API令牌
在您的MCP设置文件中配置这些变量:
对于Claude Desktop
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"
}
}
}
}
工具及使用
1. 获取构建状态
获取Jenkins构建的状态:
// Example usage
const result = await mcpClient.useTool("jenkins-server", "get_build_status", {
jobPath: "view/xxx_debug",
buildNumber: "lastBuild" // Optional, defaults to lastBuild
});
输入模式:
{
"jobPath": "string", // Path to Jenkins job
"buildNumber": "string" // Optional, build number or "lastBuild"
}
2. 触发构建
带参数触发新的Jenkins构建:
// Example usage
const result = await mcpClient.useTool("jenkins-server", "trigger_build", {
jobPath: "view/xxx_debug",
parameters: {
BRANCH: "main",
BUILD_TYPE: "debug"
}
});
输入模式:
{
"jobPath": "string", // Path to Jenkins job
"parameters": {
// Build parameters as key-value pairs
}
}
3. 获取构建日志
检索Jenkins构建的控制台输出:
// Example usage
const result = await mcpClient.useTool("jenkins-server", "get_build_log", {
jobPath: "view/xxx_debug",
buildNumber: "lastBuild"
});
输入模式:
{
"jobPath": "string", // Path to Jenkins job
"buildNumber": "string" // Build number or "lastBuild"
}
开发
对于带有自动重建功能的开发:
npm run watch
调试
由于MCP服务器通过标准输入输出进行通信,您可以使用MCP Inspector进行调试:
npm run inspector
这将提供一个URL以便在浏览器中访问调试工具。
许可证
本项目根据MIT许可证发布 - 详情请参阅LICENSE文件。