Skip to main content
Glama

Jenkins MCP

Jenkins REST API를 기반으로 하는 MCP Server로, Jenkins 2.332.2, 2.356 및 이후 버전과의 호환을 목표로 합니다.

Jenkins 플러그인을 설치하지 않으므로 공식 mcp-server 플러그인의 최소 Jenkins 코어 버전 제한을 받지 않습니다. 하나의 MCP Server는 설정에서 여러 Jenkins 인스턴스를 동시에 관리할 수 있으며 jenkins_name으로 대상 인스턴스를 선택합니다.

구현된 기능

  • Jenkins 버전 및 호환 기능 조회

  • 현재 인증된 사용자 조회

  • 루트 또는 Folder 아래의 Job 조회

  • Job 및 Build 조회

  • 빌드 로그를 가져오고 반환되는 줄 수 제한

  • Queue, Queue Item 및 노드 조회

  • 빌드 트리거, 빌드 중지, 대기 중인 빌드 취소

  • 사용자 이름 + API Token 인증

  • Jenkins CSRF Crumb 자동 획득 및 재시도

  • 기본값은 읽기 전용이며, 쓰기 작업은 명시적으로 read_only: false 설정 필요

Related MCP server: Jenkins MCP Server

설치

Python 3.10 이상을 권장합니다:

python3 -m venv .venv
source .venv/bin/activate
python -m pip install -e '.[dev]'

다중 Jenkins 구성

jenkins-mcp.json을 생성합니다:

{
  "instances": [
    {
      "name": "jenkins-233",
      "base_url": "https://jenkins-233.example.com",
      "username": "mcp-user",
      "api_token": "replace-me",
      "read_only": true,
      "verify_ssl": true,
      "timeout_seconds": 30,
      "max_log_lines": 2000
    },
    {
      "name": "jenkins-356",
      "base_url": "https://jenkins-356.example.com/jenkins",
      "username": "mcp-user",
      "api_token": "replace-me",
      "read_only": false
    }
  ],
  "server": {
    "transport": "stdio",
    "log_level": "INFO"
  }
}

시작:

jenkins-mcp --config jenkins-mcp.json

프로덕션 환경에서는 환경 변수나 시크릿 관리 시스템을 통해 설정을 주입하고, API Token을 Git에 커밋하지 않는 것을 권장합니다.

단일 Jenkins 환경 변수 구성

다음 변수를 사용할 수도 있습니다:

export JENKINS_URL='https://jenkins.example.com'
export JENKINS_USERNAME='mcp-user'
export JENKINS_API_TOKEN='replace-me'
export JENKINS_READ_ONLY='true'
jenkins-mcp

여러 인스턴스는 JSON 배열을 JENKINS_INSTANCES_JSON에 넣거나 JENKINS_CONFIG_FILE을 사용하여 JSON 설정 파일을 지정할 수 있습니다.

MCP 클라이언트 구성

stdio 예시:

{
  "mcpServers": {
    "jenkins": {
      "command": "/absolute/path/to/.venv/bin/jenkins-mcp",
      "args": ["--config", "/absolute/path/to/jenkins-mcp.json"]
    }
  }
}

도구 호출 시 jenkins_name을 사용합니다. 예:

list_jobs(jenkins_name="jenkins-233")
get_build_log(jenkins_name="jenkins-356", job_name="team/app", build_number=123)

버전 호환 정책

서비스는 Jenkins의 X-Jenkins 응답 헤더로 버전을 감지합니다. 2.332.2는 현재 최소 호환 기준이며, 2.356은 동일한 기본 REST API 기능을 사용합니다. 버전 관련 차이는 versioning.py의 기능 모델에서 처리하며, MCP 도구 계층에서는 직접 버전 판정을 하지 않습니다.

기본 REST API는 Jenkins 플러그인 API보다 버전 간 사용에 더 적합하지만, 플러그인 고유 기능, 카트리지 고급 정보 및 자격 증명 관리(credential management)는 현재 버전 간 보증 범위에 포함되지 않습니다.

개발

pytest
ruff check .
A
license - permissive license
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    B
    quality
    D
    maintenance
    Enables managing Jenkins operations like listing jobs, triggering builds, and checking build statuses through a configurable MCP server.
    3
    10
    Apache 2.0

View all related MCP servers

Related MCP Connectors

View all MCP Connectors

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/programsummer/jenkins-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server