Jenkins MCP Server
mcp_jenkins
Сервер Jenkins MCP. Протокол контекста модели (MCP) позволяет инструментам ИИ (например, чат-ботам) взаимодействовать с вашей настройкой Jenkins и управлять ею, т. е. извлекать информацию и изменять настройки.
Примечание: это минимальная экспериментальная версия сервера MCP Jenkins, которая в настоящее время находится на ранней стадии разработки.
Описание
Этот проект предоставляет сервер Model Context Protocol (MCP) для взаимодействия с Jenkins. Он позволяет пользователям запускать задания Jenkins, получать статусы сборки и выполнять другие операции, связанные с Jenkins, через интерфейс MCP.
Related MCP server: mcp-jenkins
Компоненты
server.py: основное серверное приложение MCP Jenkins.functions_schema.md: определяет схему для функций, предоставляемых сервером MCP Jenkins.client.py: пример клиента, демонстрирующий взаимодействие с сервером MCP Jenkins (предоставлен только для справки).functional tests: Содержит функциональные тесты для сервера MCP Jenkins.
Установка
Чтобы установить пакет, выполните:
pip install .Использование
Общие рабочие процессы
Запуск сервера
Чтобы запустить сервер MCP:
./docker/run.serverЗапуск примера клиента
Чтобы запустить пример клиента:
./docker/run.clientНапример, чтобы вывести список сборок для задания с именем «резервные копии» с использованием определенной модели, можно выполнить:
./docker/run.client --model gemini-2.0-flash-001 "list builds backups"Примечание: Если пакет установлен с помощью pip install . , также доступен консольный скрипт mcp_jenkins_client .
Это может привести к выводу, похожему на:
Query: list builds backups
Result:
Recent builds for backups:
- Build #1086: FAILURE (http://myjenkins:8080/job/backups/1086/)Сборка и тестирование с помощью Docker
Обычный рабочий процесс разработки и тестирования заключается в том, чтобы сначала создать образ Docker, а затем выполнить тесты:
Создайте образ Docker: на этом этапе подготавливается среда, необходимая для тестирования.
./docker/buildЗапуск тестов: после завершения сборки выполните тесты.
./docker/run.tests
Такая последовательность гарантирует, что тесты будут проводиться на последней сборке в согласованной среде Docker.
Развертывание тестовой среды
Чтобы развернуть локальный тестовый экземпляр Jenkins (без аутентификации, только для функциональных тестов):
./docker/deploy.test.environmentПодключение к существующему экземпляру Jenkins
Чтобы использовать сервер MCP Jenkins с существующим экземпляром Jenkins, вам необходимо настроить следующие переменные среды:
JENKINS_URL: Полный URL вашего экземпляра Jenkins (например,http://your-jenkins-host:8080). Это обязательно .JENKINS_USER: (Необязательно) Ваше имя пользователя Jenkins, если требуется аутентификация.JENKINS_API_TOKEN: (Необязательно) Ваш токен Jenkins API. Он должен быть предоставлен вместе сJENKINS_USER, если используется аутентификация. Вы можете сгенерировать токен API на странице конфигурации пользователя Jenkins (<Jenkins URL>/me/configure).MCP_API_KEY: Секретный ключ API для защиты этого сервера MCP. Запросы к серверу MCP должны будут включать этот ключ в заголовокX-API-Key. Это необходимо , если толькоDEBUG_MODEне установлен вtrue.DEBUG_MODE: Установите значениеtrue, чтобы запустить сервер MCP в режиме отладки, который обходит требованиеMCP_API_KEYи обеспечивает более подробное ведение журнала. Не используйте в производстве.
Пример конфигурации (Bash):
export JENKINS_URL="http://your-jenkins-host:8080"
export JENKINS_USER="your_jenkins_username"
export JENKINS_API_TOKEN="your_jenkins_api_token"
export MCP_API_KEY="your_mcp_secret_key"
# export DEBUG_MODE="true" # Uncomment for development/testing without MCP_API_KEYПосле настройки этих переменных среды вы можете запустить сервер MCP с помощью скрипта Docker:
./docker/run.serverЗатем сервер MCP попытается подключиться к указанному вами экземпляру Jenkins.
Интеграция OpenWebUI
Файл open-webui/open_webui_interface.py содержит пример интеграции этого сервера MCP Jenkins с экземпляром OpenWebUI.
Чтобы использовать его:
В интерфейсе OpenWebUI перейдите в раздел для добавления или настройки инструментов.
Создайте новый инструмент.
Скопируйте все содержимое файла
open-webui/open_webui_interface.pyи вставьте его в конфигурацию инструмента в OpenWebUI.Важно : Вам необходимо будет настроить параметры подключения в вставленном коде, а именно:
MCP_JENKINS_SERVER_URL: Установите эту переменную среды в вашей среде OpenWebUI на URL-адрес вашего работающего сервера MCP Jenkins (например,http://localhost:5000). Скрипт по умолчанию используетhttp://localhost:5000если переменная не установлена.MCP_API_KEY: Если ваш сервер MCP Jenkins настроен на запрос ключа API, убедитесь, что эта переменная среды установлена в вашей среде OpenWebUI. Скрипт выведет предупреждение, если он не будет найден, но все равно попытается выполнить запросы.
После настройки инструменты, определенные в open_webui_interface.py (например, list_jobs , trigger_build , get_build_status ), должны стать доступными для использования в вашем интерфейсе чата OpenWebUI.
Лицензия
Данный проект лицензирован по лицензии MIT.
This server cannot be deployed
Related MCP Connectors
The Buildkite MCP server exposes Buildkite product data (pipelines, builds, jobs, and test data) to AI tools, editors, and agents through the Model Context Protocol. It provides capabilities including pipeline creation and management, build monitoring with specialized tools like 'wait_for_build', efficient log querying using Apache Parquet conversion and caching, and OAuth-based authentication for both read-write and read-only access to Buildkite's REST API.
MCP server for your apps' tools and custom tools, plus hosted AI agents and approval-gated workflows
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
MCP server unifying ERPs, CRMs, APIs and knowledge base for Claude, ChatGPT and Gemini.
Related MCP Servers
- AlicenseBqualityCmaintenanceA Model Context Protocol server that enables AI assistants to interact with Jenkins CI/CD servers, providing tools to check build statuses, trigger builds, and retrieve build logs.315MIT
- AlicenseBqualityAmaintenanceThe Model Context Protocol (MCP) Jenkins integration is an open-source implementation that bridges Jenkins with AI language models following Anthropic's MCP specification. This project enables secure, contextual AI interactions with Jenkins tools while maintaining data privacy and security.36154MIT
- FlicenseNot gradedqualityDmaintenanceAn all-in-one Model Context Protocol (MCP) server that connects your coding AI to numerous databases, data warehouses, data pipelines, and cloud services, streamlining development workflow through seamless integrations.4-
- AlicenseCqualityDmaintenanceA Model Context Protocol (MCP) server that provides AI-powered security analysis and safety instruction tools. This server helps protect AI agents by providing security guidelines, content analysis, and cautionary instructions when interacting with various MCPs and external services.623 npm22ISC