Jenkins Server MCP
A tool for interacting with Jenkins CI/CD servers, requiring environment variables for configuration.
Jenkins Server MCP
A Model Context Protocol (MCP) server that provides tools for interacting with Jenkins CI/CD servers. This server enables AI assistants to check build statuses, trigger builds, and retrieve build logs through a standardized interface.
Installation
- Clone this repository:
git clone https://github.com/hekmon8/jenkins-server-mcp.git cd jenkins-server-mcp
- Install dependencies:
npm install
- Build the project:
npm run build
Configuration
The server requires the following environment variables:
JENKINS_URL: The URL of your Jenkins serverJENKINS_USER: Jenkins username for authenticationJENKINS_TOKEN: Jenkins API token for authentication
Configure these in your MCP settings file:
For Claude Desktop
MacOS: ~/Library/Application Support/Claude/claude_desktop_config.jsonWindows: %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" } } } }
Tools and Usage
1. Get Build Status
Get the status of a Jenkins build:
// Example usage const result = await mcpClient.useTool("jenkins-server", "get_build_status", { jobPath: "view/xxx_debug", buildNumber: "lastBuild" // Optional, defaults to lastBuild });
Input Schema:
{ "jobPath": "string", // Path to Jenkins job "buildNumber": "string" // Optional, build number or "lastBuild" }
2. Trigger Build
Trigger a new Jenkins build with parameters:
// Example usage const result = await mcpClient.useTool("jenkins-server", "trigger_build", { jobPath: "view/xxx_debug", parameters: { BRANCH: "main", BUILD_TYPE: "debug" } });
Input Schema:
{ "jobPath": "string", // Path to Jenkins job "parameters": { // Build parameters as key-value pairs } }
3. Get Build Log
Retrieve the console output of a Jenkins build:
// Example usage const result = await mcpClient.useTool("jenkins-server", "get_build_log", { jobPath: "view/xxx_debug", buildNumber: "lastBuild" });
Input Schema:
{ "jobPath": "string", // Path to Jenkins job "buildNumber": "string" // Build number or "lastBuild" }
Development
For development with auto-rebuild:
npm run watch
Debugging
Since MCP servers communicate over stdio, you can use the MCP Inspector for debugging:
npm run inspector
This will provide a URL to access debugging tools in your browser.
Thanks
Thanks AIMCP(https://www.aimcp.info).
License
This project is licensed under the MIT License - see the LICENSE file for details.
Related Servers
Serena
A coding agent toolkit that provides an LLM with IDE-like capabilities for semantic code retrieval and editing directly in your codebase.
Logfire
Provides access to OpenTelemetry traces and metrics through Logfire.
Cloudflare MCP Server Example
A template for deploying a remote MCP server on Cloudflare Workers without authentication.
mcp-graphql
A GraphQL server that supports the Model Context Protocol (MCP), enabling Large Language Models (LLMs) to interact with GraphQL APIs through schema introspection and query execution.
Testomat.io
Integrate Testomat.io API with AI assistants for test management.
Swagger/Postman MCP Server
Ingests and serves Swagger/OpenAPI specifications and Postman collections as MCP tools. Requires a config.json for API and authentication setup.
Remote MCP Server (Authless)
An example of a remote MCP server deployable on Cloudflare Workers, without authentication.
WRG MCP Server
A server providing tools for weapon recoil generation and visualization via HTTP endpoints.
Remote MCP Server (Authless)
An example of a remote MCP server deployable on Cloudflare Workers, without authentication.
Yourware MCP
Upload project files or directories to the Yourware platform.