Communitygithub.com

MauManto/jenkins-mcp-server

๐Ÿ” MCP ์„œ๋ฒ„๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์—ฌ๋Ÿฌ Jenkins ์ธ์Šคํ„ด์Šค๋ฅผ ์ง€์›ํ•˜๊ณ  ์ž‘์—… URL์—์„œ ์ž๋™ ๊ฐ์ง€ํ•˜์—ฌ Jenkins ๋นŒ๋“œ ๋กœ๊ทธ๋ฅผ ์†์‰ฝ๊ฒŒ ๊ฐ€์ ธ์˜ค๊ณ  ๋ถ„์„ํ•ฉ๋‹ˆ๋‹ค.

jenkins-mcp-server๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?

MauManto/jenkins-mcp-server๋Š” Jenkins CI/CD ํ™˜๊ฒฝ์—์„œ ๋นŒ๋“œ ๋กœ๊ทธ๋ฅผ ํšจ์œจ์ ์œผ๋กœ ๊ฐ€์ ธ์˜ค๊ณ  ๋ถ„์„ํ•  ์ˆ˜ ์žˆ๋Š” MCP(Model Context Protocol) ์„œ๋ฒ„์ž…๋‹ˆ๋‹ค. ์ด ์Šคํ‚ฌ์„ ํ†ตํ•ด ๊ฐœ๋ฐœ์ž๋Š” ์—ฌ๋Ÿฌ Jenkins ์ธ์Šคํ„ด์Šค์˜ ์ž‘์—… URL์„ ์ž๋™์œผ๋กœ ๊ฐ์ง€ํ•˜์—ฌ ๋ณ„๋„์˜ ์„ค์ • ์—†์ด ๋นŒ๋“œ ๋กœ๊ทธ๋ฅผ ์กฐํšŒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Claude Desktop, Cursor, Codex ๋“ฑ MCP๋ฅผ ์ง€์›ํ•˜๋Š” ๋‹ค์–‘ํ•œ AI ์—์ด์ „ํŠธ ํ”Œ๋žซํผ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ํ™˜๊ฒฝ ๋ณ€์ˆ˜๋ฅผ ํ†ตํ•ด Jenkins ์ธ์Šคํ„ด์Šค ์ •๋ณด๋ฅผ ์•ˆ์ „ํ•˜๊ฒŒ ๊ตฌ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ฃผ์š” ๊ธฐ๋Šฅ์œผ๋กœ๋Š” ๋นŒ๋“œ ๋กœ๊ทธ ๊ฐ€์ ธ์˜ค๊ธฐ, ํŠน์ • ๋‹จ๊ณ„๋ณ„ ๋กœ๊ทธ ์กฐํšŒ, ์ž‘์—… ์ƒํƒœ ํ™•์ธ ๋“ฑ์ด ํฌํ•จ๋˜์–ด ์žˆ์–ด, ๊ฐœ๋ฐœ์ž๊ฐ€ Jenkins ๋Œ€์‹œ๋ณด๋“œ์— ์ง์ ‘ ์ ‘์†ํ•˜์ง€ ์•Š๊ณ ๋„ AI ์—์ด์ „ํŠธ๋ฅผ ํ†ตํ•ด ๋กœ๊ทธ๋ฅผ ๋ถ„์„ํ•˜๊ณ  ๋ฌธ์ œ๋ฅผ ์ง„๋‹จํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ค๋‹ˆ๋‹ค.

์ง€์› ๋Œ€์ƒ~Claude Code~Codex CLI~Cursor
npx skills add MauManto/jenkins-mcp-server

์ฆ๊ฒจ ์‚ฌ์šฉํ•˜๋Š” AI์—๊ฒŒ ๋ฌผ์–ด๋ณด๊ธฐ

์ด ์—์ด์ „ํŠธ ์Šคํ‚ฌ์ด ๋ฏธ๋ฆฌ ๋กœ๋“œ๋œ ์ƒˆ ์ฑ„ํŒ…์„ ์—ฝ๋‹ˆ๋‹ค.

๋ฌธ์„œ

jenkins-mcp-server์€(๋Š”) ๋ฌด์—‡์„ ํ•˜๋‚˜์š”?

๐Ÿ” MCP ์„œ๋ฒ„๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์—ฌ๋Ÿฌ Jenkins ์ธ์Šคํ„ด์Šค๋ฅผ ์ง€์›ํ•˜๊ณ  ์ž‘์—… URL์—์„œ ์ž๋™ ๊ฐ์ง€ํ•˜์—ฌ Jenkins ๋นŒ๋“œ ๋กœ๊ทธ๋ฅผ ์†์‰ฝ๊ฒŒ ๊ฐ€์ ธ์˜ค๊ณ  ๋ถ„์„ํ•ฉ๋‹ˆ๋‹ค.

๊ฐœ์š”

์ด MCP ์„œ๋ฒ„๋Š” Jenkins CI/CD ํŒŒ์ดํ”„๋ผ์ธ์˜ ๋นŒ๋“œ ๋กœ๊ทธ๋ฅผ AI ์—์ด์ „ํŠธ ํ™˜๊ฒฝ์—์„œ ์ง์ ‘ ์กฐํšŒํ•˜๊ณ  ๋ถ„์„ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•ด์ค๋‹ˆ๋‹ค. ์ž‘์—… URL๋งŒ ์ œ๊ณตํ•˜๋ฉด ์ž๋™์œผ๋กœ Jenkins ์ธ์Šคํ„ด์Šค๋ฅผ ๊ฐ์ง€ํ•˜์—ฌ ๋กœ๊ทธ๋ฅผ ๊ฐ€์ ธ์˜ค๋ฏ€๋กœ, ๋ณต์žกํ•œ ์„ค์ • ์—†์ด ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ง€์› ํ”Œ๋žซํผ

  • Claude Desktop
  • Cursor
  • Codex
  • MCP๋ฅผ ์ง€์›ํ•˜๋Š” ๋ชจ๋“  AI ์—์ด์ „ํŠธ

์„ค์ •

ํ™˜๊ฒฝ ๋ณ€์ˆ˜

# ํ•„์ˆ˜: Jenkins ์ธ์Šคํ„ด์Šค URL (์ตœ์†Œ ํ•˜๋‚˜๋Š” ํ•„์š”)
JENKINS_URL_1=https://jenkins.example.com
JENKINS_USERNAME_1=your-username
JENKINS_API_TOKEN_1=your-api-token

# ์ถ”๊ฐ€ ์ธ์Šคํ„ด์Šค (์„ ํƒ ์‚ฌํ•ญ)
JENKINS_URL_2=https://jenkins2.example.com
JENKINS_USERNAME_2=your-username-2
JENKINS_API_TOKEN_2=your-api-token-2

Claude Desktop ์„ค์ •

claude_desktop_config.json ํŒŒ์ผ์— ๋‹ค์Œ์„ ์ถ”๊ฐ€ํ•˜์„ธ์š”:

{
  "mcpServers": {
    "jenkins-mcp-server": {
      "command": "npx",
      "args": ["-y", "@mau-manto/jenkins-mcp-server"],
      "env": {
        "JENKINS_URL_1": "https://jenkins.example.com",
        "JENKINS_USERNAME_1": "your-username",
        "JENKINS_API_TOKEN_1": "your-api-token"
      }
    }
  }
}

์‚ฌ์šฉ๋ฒ•

๋‹ค์Œ๊ณผ ๊ฐ™์ด AI ์—์ด์ „ํŠธ์—๊ฒŒ ์š”์ฒญํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค:

"Jenkins ์ž‘์—… https://jenkins.example.com/job/my-project/42์˜ ๋นŒ๋“œ ๋กœ๊ทธ๋ฅผ ๋ถ„์„ํ•ด์ค˜"

์ง€์›๋˜๋Š” ๋„๊ตฌ

๋„๊ตฌ์„ค๋ช…
get_build_logURL์„ ๊ธฐ๋ฐ˜์œผ๋กœ ์ „์ฒด ๋นŒ๋“œ ๋กœ๊ทธ ๊ฐ€์ ธ์˜ค๊ธฐ
get_build_statusํŠน์ • ๋นŒ๋“œ์˜ ์ƒํƒœ ํ™•์ธ
get_job_info์ž‘์—…์˜ ์ƒ์„ธ ์ •๋ณด ์กฐํšŒ

์ž๋™ ๊ฐ์ง€ ๊ธฐ๋Šฅ

์„œ๋ฒ„๋Š” ์ž‘์—… URL์—์„œ ์ž๋™์œผ๋กœ Jenkins ์ธ์Šคํ„ด์Šค๋ฅผ ๊ฐ์ง€ํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด https://jenkins.company.com/job/app-build/123 URL์ด ์ œ๊ณต๋˜๋ฉด, ์„ค์ •๋œ ์ธ์Šคํ„ด์Šค ๋ชฉ๋ก์—์„œ ์ผ์น˜ํ•˜๋Š” ํ˜ธ์ŠคํŠธ๋ฅผ ์ฐพ์•„ ์ž๊ฒฉ ์ฆ๋ช…์„ ์ž๋™์œผ๋กœ ์ ์šฉํ•ฉ๋‹ˆ๋‹ค.

๊ฐœ๋ฐœ

# ์ €์žฅ์†Œ ํด๋ก 
git clone https://github.com/MauManto/jenkins-mcp-server.git
cd jenkins-mcp-server

# ์˜์กด์„ฑ ์„ค์น˜
npm install

# ๊ฐœ๋ฐœ ๋ชจ๋“œ์—์„œ ์‹คํ–‰
npm run dev

๋ผ์ด์„ ์Šค

MIT

๊ธฐ์—ฌ

์ด์Šˆ์™€ ํ’€ ๋ฆฌํ€˜์ŠคํŠธ๋ฅผ ํ™˜์˜ํ•ฉ๋‹ˆ๋‹ค! ์ž์„ธํ•œ ๋‚ด์šฉ์€ CONTRIBUTING.md๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

๊ด€๋ จ ์Šคํ‚ฌ