메인 콘텐츠로 건너뛰기
셀프 호스팅 Jenkins 서버를 연결하면 CloudThinker 에이전트가 빌드를 모니터링하고, 테스트 결과를 분석하고, 파이프라인 로그를 검토하고, 작업 운영을 관리할 수 있습니다. Jenkins는 Jenkins MCP Server Plugin을 통해 사용자 이름 및 API 토큰으로 인증합니다.

사전 요구 사항

  • 버전 2.x 이상의 셀프 호스팅 Jenkins 인스턴스 (클라우드 호스팅 Jenkins는 지원되지 않음).
  • 서버에 설치된 Jenkins MCP Server Plugin — 기본 MCP 포트는 9090입니다.
  • 루트 URL 구성 및 자격 증명 생성을 위한 Jenkins 관리자 접근 권한.
클라우드 호스팅 Jenkins 서비스는 지원되지 않습니다. 이 연결은 Jenkins MCP Server Plugin이 필요합니다.

설정

1

루트 URL 구성

MCP Server Plugin은 Jenkins가 올바른 작업 링크를 반환하도록 루트 URL이 구성되어 있어야 합니다. Jenkins Script Console에서 다음을 실행합니다.
COOKIE_JAR=/tmp/jenkins_cookies
CRUMB=$(curl -s -c $COOKIE_JAR -u "admin:<password>" \
  'http://<host-ip>:9090/crumbIssuer/api/json' | python3 -c "import json,sys; print(json.load(sys.stdin)['crumb'])")

curl -s -X POST "http://<host-ip>:9090/scriptText" \
  -b $COOKIE_JAR -u "admin:<password>" -H "Jenkins-Crumb: $CRUMB" \
  --data-urlencode "script=
import jenkins.model.JenkinsLocationConfiguration
def loc = JenkinsLocationConfiguration.get()
loc.setUrl('http://<host-ip>:9090/')
loc.save()
println('Root URL set to: ' + loc.getUrl())
"
2

MCP 엔드포인트 확인

연결하기 전에 플러그인이 실행 중인지 확인합니다.
curl -s http://<host-ip>:9090/mcp-health/
3

CloudThinker에 연결 추가

Connections → Jenkins로 이동하여 다음을 입력합니다.
  • URL: http://<host-ip>:9090
  • Username: admin
  • API Token: Jenkins 관리자 비밀번호 또는 API 토큰
Connect를 클릭합니다. CloudThinker가 자격 증명을 검증하고 Connected 상태를 표시합니다.

연결 세부 정보

필드설명예시
URLJenkins 인스턴스 기본 URLhttp://192.168.1.100:9090
UsernameJenkins 사용자 이름admin
API TokenJenkins 관리자 비밀번호 또는 API 토큰

필수 권한

Jenkins 사용자에게 다음 권한을 부여합니다.
  • Overall: Read
  • Job: Read, Discover
  • View: Read
CloudThinker 전용 Jenkins 사용자를 생성하고 이 권한만 부여하세요. 쓰기 작업(빌드 트리거, 파이프라인 재실행)은 승인이 필요한 상태로 유지하세요.

에이전트 기능

연결 후 에이전트는 Jenkins 파이프라인을 모니터링하고 조사할 수 있습니다.
기능설명
빌드 모니터링작업 목록 조회 및 빌드 상태 확인
로그 분석빌드 로그 조회 및 검색
테스트 결과테스트 결과 확인
SCM 통합Git 변경 사항 및 커밋 확인
작업 제어빌드 트리거 및 파이프라인 재실행 — 승인 필요

연결 확인

@alex list all Jenkins jobs and show the last build status for each

예시 프롬프트

@alex search Jenkins build logs for errors in the last 10 builds and #recommend fixes
@alex show test results for the main project's recent builds and #report failures
@alex check the Jenkins build queue and identify any stuck jobs

문제 해결

Jenkins가 실행 중인지, 포트 9090이 CloudThinker에서 접근 가능한지 확인하세요. URL 필드에서 localhost 대신 호스트 IP 주소를 사용하세요.
루트 URL이 구성되지 않았거나 Script Console 명령이 실패했습니다. 설정에서 Script Console 명령을 다시 실행하고 다시 연결하세요.
사용자 이름 또는 API 토큰이 잘못되었거나 사용자에게 필요한 권한이 없습니다. 자격 증명을 확인하고 Jenkins 사용자에게 Overall Read, Job Read, View Read 접근 권한이 있는지 확인하세요.

보안

  • 최소 권한 — 에이전트가 사용 사례에 필요한 권한만 부여하세요. 읽기 전용으로 시작한 후 필요에 따라 확장하세요.
  • 기본 읽기 전용 — 에이전트가 이 연결을 통해 변경 작업을 수행하게 할 것이 아니라면 읽기 전용 자격증명을 사용하세요.
  • 자격증명 교체 — 정기 일정에 따라 키와 토큰을 교체하세요. 연결을 업데이트하면 CloudThinker가 새 값을 자동으로 반영합니다.
  • 오프보딩 시 취소 — 연결을 삭제하거나 팀원이 퇴사할 때 프로바이더에서 자격증명을 제거하세요.
  • 전용 사용자 — CloudThinker 전용 Jenkins 사용자를 생성하고 필요한 작업 및 뷰에만 스코프를 제한하세요.
  • 네트워크 격리 — Jenkins 포트 9090을 CloudThinker의 IP 범위로 제한하거나 VPN을 사용하세요. Jenkins UI를 공개 인터넷에 노출하지 마세요.

관련 항목

https://mintcdn.com/cloudthinker/aLd-ttc-SCW-aFky/images/icons/mcp.svg?fit=max&auto=format&n=aLd-ttc-SCW-aFky&q=85&s=c89b6087a9d233901dea5e354452eff6

MCP 연결

Model Context Protocol을 통해 커스텀 도구 연결
https://mintcdn.com/cloudthinker/aLd-ttc-SCW-aFky/images/icons/kubernetes.svg?fit=max&auto=format&n=aLd-ttc-SCW-aFky&q=85&s=7c03292954ff635a1994623a5c39971b

Kubernetes 연결

Kubernetes 클러스터 연결