jenkins-http-mcp-server
Jenkins MCP Server
Jenkins 2.563用の外部Python MCPサーバーです。JENKINS_USERとJENKINS_API_TOKENで利用可能な権限を使用して、通常のJenkins HTTP API経由で接続します。
Jenkinsの管理者アクセス権は不要で、Jenkinsプラグインのインストールも行わず、公式のJenkins MCP Serverプラグインにも依存しません。
Pythonのセットアップ
このプロジェクトは、ローカルで利用可能な最新の安定版Python 3.14.xを使用してpyenvで初期化されました:
Python:
3.14.4pyenv 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=1MCPクライアントの設定ファイルに実際のJenkinsシークレットを保存しないでください。
STDIOサーバーの実行
python -m jenkins_mcp_serverコンソールスクリプト:
jenkins-mcp-serverクライアントのセットアップ
Codex CLI:
docs/codex-setup.mdGemini CLI:
docs/gemini-setup.md
ツール
読み取り専用:
jenkins_whoamijenkins_versionjenkins_healthjenkins_get_jsonjenkins_list_jobsjenkins_get_jobjenkins_get_job_configjenkins_list_buildsjenkins_get_buildjenkins_get_build_logjenkins_get_build_artifactsjenkins_get_test_reportjenkins_list_queuejenkins_get_queue_itemjenkins_list_viewsjenkins_get_viewjenkins_list_nodesjenkins_get_nodejenkins_list_plugins
書き込みツール(JENKINS_MCP_ENABLE_WRITES=1で有効化):
jenkins_trigger_buildjenkins_trigger_build_with_parametersjenkins_stop_buildjenkins_cancel_queue_itemjenkins_enable_jobjenkins_disable_job
ジョブ設定ツール(JENKINS_MCP_ENABLE_WRITES=1およびJENKINS_MCP_ENABLE_JOB_CONFIG_WRITE=1で有効化):
jenkins_create_jobjenkins_copy_jobjenkins_update_job_config
削除にはさらにJENKINS_MCP_ENABLE_DELETE=1が必要です:
jenkins_delete_job
安全性
デフォルトで読み取り専用です。
書き込みツールには、明示的なローカル環境フラグとJenkins側の権限が必要です。
Jenkinsのログとジョブの出力は、信頼できないテキストとして扱われます。
APIトークンとAuthorizationヘッダーは、サーバーヘルパーによって出力されません。
401、403、404、Crumbエラー、および権限エラーは、構造化されたエラーとして返されます。
制限事項
スクリプトコンソールはありません。
再起動、安全な再起動、または静止(quiet down)機能はありません。
プラグインのインストール/更新はできません。
認証情報の読み取り/書き込みはできません。
ノードの作成/削除はできません。
グローバル設定の変更はできません。
ユーザー管理はできません。
jenkins_get_test_reportは、testReportを公開するJUnitなどのテストレポートプラグインに依存しており、存在しない場合は明確に失敗します。ネストされたフォルダーパスは、URLエンコードされた
job/<segment>パスコンポーネントとして繰り返されます。必要なフォルダー/ジョブタイプを持たないコントローラーは、Jenkins 404を返します。
テスト
通常のテストはモック化されており、稼働中の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.mddocs/source-skills-check.mddocs/existing-research.mddocs/architecture-decision.mddocs/tool-evidence.mddocs/security.md
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