Skip to main content
Glama

Jenkins MCP

MCP-сервер на основе Jenkins REST API, нацеленный на совместимость с Jenkins 2.332.2, 2.356 и последующими версиями.

Он не устанавливает плагины Jenkins, поэтому не ограничен минимальной версией ядра Jenkins, требуемой официальным плагином mcp-server. Один MCP-сервер может одновременно управлять несколькими экземплярами Jenkins в конфигурации и выбирать целевой экземпляр с помощью jenkins_name.

Реализованные возможности

  • Запрос версии Jenkins и совместимых возможностей

  • Запрос текущего аутентифицированного пользователя

  • Запрос заданий в корневом каталоге или в папке

  • Запрос заданий и сборок

  • Получение журналов сборки с ограничением количества возвращаемых строк

  • Запрос очереди, элементов очереди и узлов

  • Запуск сборки, остановка сборки, отмена сборки в очереди

  • Аутентификация по имени пользователя + API-токену

  • Автоматическое получение и повторная попытка CSRF Crumb Jenkins

  • По умолчанию только чтение, операции записи требуют явной установки 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-токены в 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)

Стратегия совместимости версий

Сервис определяет версию через заголовок ответа X-Jenkins. 2.332.2 — текущая минимальная базовая линия совместимости, 2.356 использует те же базовые возможности REST API. Различия, связанные с версиями, помещаются в модель возможностей в versioning.py, а уровень инструментов MCP не содержит прямых проверок версий.

Базовый REST API лучше подходит для использования в разных версиях, чем API плагинов Jenkins, но функции, специфичные для плагинов, расширенная информация о конвейерах и управление учетными данными не входят в текущие гарантии совместимости между версиями.

Разработка

pytest
ruff check .

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

No tool schema history has been recorded yet.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

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

Related MCP Connectors

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

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