Skip to main content
Glama
mdtahmidhossain

jenkins-http-mcp-server

Jenkins MCP 서버

Jenkins 2.563을 위한 외부 Python MCP 서버입니다. JENKINS_USERJENKINS_API_TOKEN에 부여된 권한을 사용하여 일반 Jenkins HTTP API를 통해 연결합니다.

Jenkins 관리자 권한이 필요하지 않으며, Jenkins 플러그인을 설치하지 않고, 공식 Jenkins MCP 서버 플러그인에 의존하지 않습니다.

Python 설정

이 프로젝트는 로컬에서 사용 가능한 최신 안정 버전인 Python 3.14.x를 사용하여 pyenv로 초기화되었습니다:

  • Python: 3.14.4

  • pyenv virtualenv: venv3144

재현 방법:

pyenv local venv3144
python --version
which python
pyenv version

설치

python -m pip install -e '.[dev]'

환경

필수:

export JENKINS_URL="https://jenkins.example.com/"
export JENKINS_USER="your-user"
export JENKINS_API_TOKEN="your-api-token"

선택 사항:

export JENKINS_VERIFY_SSL=1
export JENKINS_TIMEOUT_SECONDS=30
export JENKINS_MCP_MAX_RESPONSE_BYTES=2000000
export JENKINS_MCP_MAX_LOG_BYTES=200000

쓰기 게이트:

export JENKINS_MCP_ENABLE_WRITES=1
export JENKINS_MCP_ENABLE_JOB_CONFIG_WRITE=1
export JENKINS_MCP_ENABLE_DELETE=1

MCP 클라이언트 구성 파일에 실제 Jenkins 비밀 정보를 저장하지 마십시오.

STDIO 서버 실행

python -m jenkins_mcp_server

콘솔 스크립트:

jenkins-mcp-server

클라이언트 설정

  • Codex CLI: docs/codex-setup.md

  • Gemini CLI: docs/gemini-setup.md

도구

읽기 전용:

  • jenkins_whoami

  • jenkins_version

  • jenkins_health

  • jenkins_get_json

  • jenkins_list_jobs

  • jenkins_get_job

  • jenkins_get_job_config

  • jenkins_list_builds

  • jenkins_get_build

  • jenkins_get_build_log

  • jenkins_get_build_artifacts

  • jenkins_get_test_report

  • jenkins_list_queue

  • jenkins_get_queue_item

  • jenkins_list_views

  • jenkins_get_view

  • jenkins_list_nodes

  • jenkins_get_node

  • jenkins_list_plugins

쓰기 도구 (JENKINS_MCP_ENABLE_WRITES=1로 제어):

  • jenkins_trigger_build

  • jenkins_trigger_build_with_parameters

  • jenkins_stop_build

  • jenkins_cancel_queue_item

  • jenkins_enable_job

  • jenkins_disable_job

선택적 작업 구성 도구 (JENKINS_MCP_ENABLE_WRITES=1JENKINS_MCP_ENABLE_JOB_CONFIG_WRITE=1로 제어):

  • jenkins_create_job

  • jenkins_copy_job

  • jenkins_update_job_config

삭제 기능은 추가로 JENKINS_MCP_ENABLE_DELETE=1이 필요합니다:

  • jenkins_delete_job

안전성

  • 기본적으로 읽기 전용입니다.

  • 쓰기 도구는 명시적인 로컬 환경 플래그와 Jenkins 측 권한이 필요합니다.

  • Jenkins 로그 및 작업 출력은 신뢰할 수 없는 텍스트로 취급됩니다.

  • API 토큰 및 인증 헤더는 서버 도우미에 의해 출력되지 않습니다.

  • 401, 403, 404, crumb 오류 및 권한 오류는 구조화된 오류를 반환합니다.

제한 사항

  • 스크립트 콘솔 없음.

  • 재시작, 안전한 재시작 또는 조용히 하기(quiet down) 기능 없음.

  • 플러그인 설치/업데이트 없음.

  • 자격 증명 읽기/쓰기 없음.

  • 노드 생성/삭제 없음.

  • 전역 구성 변경 없음.

  • 사용자 관리 없음.

  • jenkins_get_test_reporttestReport를 노출하는 JUnit과 같은 테스트 보고서 플러그인에 의존하며, 없을 경우 명확하게 실패합니다.

  • 중첩된 폴더 경로는 URL 인코딩되어 반복되는 job/<segment> 경로 구성 요소로 처리됩니다. 필요한 폴더/작업 유형이 없는 컨트롤러는 Jenkins 404를 반환합니다.

테스트

일반 테스트는 모의(mock) 처리되며 라이브 Jenkins 컨트롤러가 필요하지 않습니다:

python -m pytest
python -m compileall src
ruff check

선택적 통합 테스트는 모든 설정이 완료된 경우에만 실행됩니다:

export JENKINS_INTEGRATION_TESTS=1
export JENKINS_URL="https://jenkins.example.com/"
export JENKINS_USER="your-user"
export JENKINS_API_TOKEN="your-api-token"
python -m pytest tests/test_integration.py

증거 문서

  • docs/source-truth.md

  • docs/source-skills-check.md

  • docs/existing-research.md

  • docs/architecture-decision.md

  • docs/tool-evidence.md

  • docs/security.md

Install Server
A
license - permissive license
B
quality
C
maintenance

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

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

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/mdtahmidhossain/jenkins-http-mcp-server'

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