Skip to main content
Glama
CircleCI-Public

mcp-server-circleci

Official

Сервер CircleCI MCP

GitHub CircleCI нпм

Model Context Protocol (MCP) — это новый стандартизированный протокол для управления контекстом между большими языковыми моделями (LLM) и внешними системами. В этом репозитории мы предоставляем MCP Server для CircleCI .

Это позволяет использовать Cursor IDE, Windsurf, Copilot или любой клиент с поддержкой MCP, чтобы использовать естественный язык для выполнения задач с CircleCI, например:

https://github.com/user-attachments/assets/3c765985-8827-442a-a8dc-5069e01edb74

Требования

Для установки NPX:

Для установки Docker:

Related MCP server: Enhanced Interactive Feedback MCP Server

Установка

Курсор

Использование NPX

Добавьте следующее в конфигурацию MCP курсора:

{ "mcpServers": { "circleci-mcp-server": { "command": "npx", "args": ["-y", "@circleci/mcp-server-circleci"], "env": { "CIRCLECI_TOKEN": "your-circleci-token", "CIRCLECI_BASE_URL": "https://circleci.com" // Optional - required for on-prem customers only } } } }

Использование Докера

Добавьте следующее в конфигурацию MCP курсора:

{ "mcpServers": { "circleci-mcp-server": { "command": "docker", "args": [ "run", "--rm", "-i", "-e", "CIRCLECI_TOKEN", "-e", "CIRCLECI_BASE_URL", "circleci:mcp-server-circleci" ], "env": { "CIRCLECI_TOKEN": "your-circleci-token", "CIRCLECI_BASE_URL": "https://circleci.com" // Optional - required for on-prem customers only } } } }

Код VS

Использование NPX

Чтобы установить CircleCI MCP Server для VS Code в .vscode/mcp.json :

{ // 💡 Inputs are prompted on first server start, then stored securely by VS Code. "inputs": [ { "type": "promptString", "id": "circleci-token", "description": "CircleCI API Token", "password": true }, { "type": "promptString", "id": "circleci-base-url", "description": "CircleCI Base URL", "default": "https://circleci.com" } ], "servers": { // https://github.com/ppl-ai/modelcontextprotocol/ "circleci-mcp-server": { "type": "stdio", "command": "npx", "args": ["-y", "@circleci/mcp-server-circleci"], "env": { "CIRCLECI_TOKEN": "${input:circleci-token}", "CIRCLECI_BASE_URL": "${input:circleci-base-url}" } } } }

Использование Докера

Чтобы установить CircleCI MCP Server для VS Code в .vscode/mcp.json с помощью Docker:

{ // 💡 Inputs are prompted on first server start, then stored securely by VS Code. "inputs": [ { "type": "promptString", "id": "circleci-token", "description": "CircleCI API Token", "password": true }, { "type": "promptString", "id": "circleci-base-url", "description": "CircleCI Base URL", "default": "https://circleci.com" } ], "servers": { // https://github.com/ppl-ai/modelcontextprotocol/ "circleci-mcp-server": { "type": "stdio", "command": "docker", "args": [ "run", "--rm", "-i", "-e", "CIRCLECI_TOKEN", "-e", "CIRCLECI_BASE_URL", "circleci:mcp-server-circleci" ], "env": { "CIRCLECI_TOKEN": "${input:circleci-token}", "CIRCLECI_BASE_URL": "${input:circleci-base-url}" } } } }

Клод Десктоп

Использование NPX

Добавьте следующее в ваш claude_desktop_config.json:

{ "mcpServers": { "circleci-mcp-server": { "command": "npx", "args": ["-y", "@circleci/mcp-server-circleci"], "env": { "CIRCLECI_TOKEN": "your-circleci-token", "CIRCLECI_BASE_URL": "https://circleci.com" // Optional - required for on-prem customers only } } } }

Использование Докера

Добавьте следующее в ваш claude_desktop_config.json:

{ "mcpServers": { "circleci-mcp-server": { "command": "docker", "args": [ "run", "--rm", "-i", "-e", "CIRCLECI_TOKEN", "-e", "CIRCLECI_BASE_URL", "circleci:mcp-server-circleci" ], "env": { "CIRCLECI_TOKEN": "your-circleci-token", "CIRCLECI_BASE_URL": "https://circleci.com" // Optional - required for on-prem customers only } } } }

Чтобы найти/создать этот файл, сначала откройте настройки рабочего стола claude. Затем нажмите «Разработчик» в левой панели панели настроек, а затем нажмите «Изменить конфигурацию»

Это создаст файл конфигурации по адресу:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

  • Windows: %APPDATA%\Claude\claude_desktop_config.json

Дополнительную информацию об использовании серверов MCP с Claude Desktop см. в руководстве ниже: https://modelcontextprotocol.io/quickstart/user

Клод Код

Использование NPX

После установки Claude Code выполните следующую команду:

claude mcp add circleci-mcp-server -e CIRCLECI_TOKEN=your-circleci-token -- npx -y @circleci/mcp-server-circleci

Использование Докера

После установки Claude Code выполните следующую команду:

claude mcp add circleci-mcp-server -e CIRCLECI_TOKEN=your-circleci-token -e CIRCLECI_BASE_URL=https://circleci.com -- docker run --rm -i -e CIRCLECI_TOKEN -e CIRCLECI_BASE_URL circleci:mcp-server-circleci

Дополнительную информацию об использовании серверов MCP с Claude Code см. в руководстве ниже: https://docs.anthropic.com/en/docs/agents-and-tools/claude-code/tutorials#set-up-model-context-protocol-mcp

Виндсерфинг

Использование NPX

Добавьте следующее в ваш mcp_config.json windsurf:

{ "mcpServers": { "circleci-mcp-server": { "command": "npx", "args": ["-y", "@circleci/mcp-server-circleci"], "env": { "CIRCLECI_TOKEN": "your-circleci-token", "CIRCLECI_BASE_URL": "https://circleci.com" // Optional - required for on-prem customers only } } } }

Использование Докера

Добавьте следующее в ваш mcp_config.json windsurf:

{ "mcpServers": { "circleci-mcp-server": { "command": "docker", "args": [ "run", "--rm", "-i", "-e", "CIRCLECI_TOKEN", "-e", "CIRCLECI_BASE_URL", "circleci:mcp-server-circleci" ], "env": { "CIRCLECI_TOKEN": "your-circleci-token", "CIRCLECI_BASE_URL": "https://circleci.com" // Optional - required for on-prem customers only } } } }

Дополнительную информацию об использовании серверов MCP с Windsurf смотрите в руководстве ниже: https://docs.windsurf.com/windsurf/mcp

Установка через Smithery

Чтобы автоматически установить CircleCI MCP Server для Claude Desktop через Smithery :

npx -y @smithery/cli install @CircleCI-Public/mcp-server-circleci --client claude

Функции

Поддерживаемые инструменты

  • get_build_failure_logs

    Извлекает подробные журналы сбоев из сборок CircleCI. Этот инструмент можно использовать тремя способами:

    1. Использование Project Slug и Branch (рекомендуемый рабочий процесс):

      • Сначала перечислите доступные вам проекты:

        • Используйте инструмент list_followed_projects для получения ваших проектов

        • Пример: «Список моих проектов CircleCI»

        • Затем выберите проект, с которым связан projectSlug.

        • Пример: «Давайте использовать мой проект»

      • Затем попросите извлечь журналы сбоев сборки для определенной ветки:

        • Пример: «Получить сведения об ошибках сборки для моего проекта в основной ветке»

    2. Использование URL-адресов CircleCI:

    3. Использование локального контекста проекта:

      • Работает из вашего локального рабочего пространства, предоставляя:

        • Корневой путь к рабочему пространству

        • Удаленный URL-адрес Git

        • Название филиала

      • Пример: «Найти последний неисправный конвейер в моей текущей ветке»

    Инструмент возвращает отформатированные журналы, включая:

    • Названия должностей

    • Пошаговые детали выполнения

    • Сообщения об ошибках и контекст

    Это особенно полезно для:

    • Отладка неудачных сборок

    • Анализ неудачных тестов

    • Исследование проблем развертывания

    • Быстрый доступ к журналам сборки, не выходя из IDE

  • find_flaky_tests

    Выявляет нестабильные тесты в вашем проекте CircleCI, анализируя историю выполнения тестов. Это использует функцию обнаружения нестабильных тестов, описанную здесь: https://circleci.com/blog/introducing-test-insights-with-flaky-test-detection/#flaky-test-detection

    Этот инструмент можно использовать тремя способами:

    1. Использование Project Slug (рекомендуемый рабочий процесс):

      • Сначала перечислите доступные вам проекты:

        • Используйте инструмент list_followed_projects для получения ваших проектов

        • Пример: «Список моих проектов CircleCI»

        • Затем выберите проект, с которым связан projectSlug.

        • Пример: «Давайте использовать мой проект»

      • Затем попросите восстановить нестабильные тесты:

        • Пример: «Получить нестабильные тесты для моего проекта»

    2. Используя URL-адрес проекта CircleCI:

    3. Использование локального контекста проекта:

      • Работает из вашего локального рабочего пространства, предоставляя:

        • Корневой путь к рабочему пространству

        • Удаленный URL-адрес Git

      • Пример: «Найти ненадёжные тесты в моём текущем проекте»

    Инструмент возвращает подробную информацию о ненадежных тестах, включая:

    • Тестовые имена и местоположения файлов

    • Сообщения об ошибках и контексты

    Это поможет вам:

    • Определите ненадежные тесты в вашем тестовом наборе

    • Получите подробный контекст о неудачных тестах

    • Принимайте решения об улучшении тестов на основе данных

  • get_latest_pipeline_status

    Извлекает статус последнего конвейера для заданной ветки. Этот инструмент можно использовать тремя способами:

    1. Использование Project Slug и Branch (рекомендуемый рабочий процесс):

      • Сначала перечислите доступные вам проекты:

        • Используйте инструмент list_followed_projects для получения ваших проектов

        • Пример: «Список моих проектов CircleCI»

        • Затем выберите проект, с которым связан projectSlug.

        • Пример: «Давайте использовать мой проект»

      • Затем попросите получить последний статус конвейера для определенной ветки:

        • Пример: «Получить статус последнего конвейера для моего проекта на основной ветке»

    2. Используя URL-адрес проекта CircleCI:

    3. Использование локального контекста проекта:

      • Работает из вашего локального рабочего пространства, предоставляя:

        • Корневой путь к рабочему пространству

        • Удаленный URL-адрес Git

        • Название филиала

      • Пример: «Получить статус последнего конвейера для моего текущего проекта»

    Инструмент возвращает отформатированный статус последнего конвейера:

    • Названия рабочих процессов и их текущий статус

    • Продолжительность каждого рабочего процесса

    • Временные метки создания и завершения

    • Общее состояние трубопровода

    Пример вывода:

    --- Workflow: build Status: success Duration: 5 minutes Created: 4/20/2025, 10:15:30 AM Stopped: 4/20/2025, 10:20:45 AM --- Workflow: test Status: running Duration: unknown Created: 4/20/2025, 10:21:00 AM Stopped: in progress

    Это особенно полезно для:

    • Проверка статуса последнего трубопровода

    • Получение статуса последнего конвейера для определенной ветки

    • Быстрая проверка статуса последнего конвейера, не выходя из IDE

  • get_job_test_results

    Извлекает метаданные теста для заданий CircleCI, позволяя вам анализировать результаты теста, не покидая IDE. Этот инструмент можно использовать тремя способами:

    1. Использование Project Slug и Branch (рекомендуемый рабочий процесс):

      • Сначала перечислите доступные вам проекты:

        • Используйте инструмент list_followed_projects для получения ваших проектов

        • Пример: «Список моих проектов CircleCI»

        • Затем выберите проект, с которым связан projectSlug.

        • Пример: «Давайте использовать мой проект»

      • Затем попросите выслать результаты теста по определенному филиалу:

        • Пример: «Получить результаты тестирования для моего проекта на основной ветке»

    2. Используя URL-адрес CircleCI:

    3. Использование локального контекста проекта:

      • Работает из вашего локального рабочего пространства, предоставляя:

        • Корневой путь к рабочему пространству

        • Удаленный URL-адрес Git

        • Название филиала

      • Пример: «Получить результаты тестирования моего текущего проекта в основной ветке»

    Инструмент возвращает подробную информацию о результатах теста:

    • Сводка всех тестов (всего, успешных, неудачных)

    • Подробная информация о неудачных тестах, включая:

      • Название и класс теста

      • Расположение файла

      • Сообщения об ошибках

      • Продолжительность выполнения

    • Список успешных испытаний с указанием времени

    • Фильтр по результатам тестов

    Это особенно полезно для:

    • Быстрый анализ сбоев тестирования без посещения веб-интерфейса CircleCI

    • Выявление закономерностей в неудачных тестах

    • Поиск медленных тестов, которые могут нуждаться в оптимизации

    • Проверка тестового покрытия вашего проекта

    • Устранение неполадок в нестабильных тестах

    Примечание: инструмент требует, чтобы тестовые метаданные были правильно настроены в вашей конфигурации CircleCI. Для получения дополнительной информации о настройке сбора тестовых метаданных см.: https://circleci.com/docs/collect-test-data/

  • config_helper

    Помогает с задачами конфигурации CircleCI, предоставляя руководство и проверку. Этот инструмент помогает вам:

    1. Проверьте конфигурацию CircleCI:

      • Проверяет ваш .circleci/config.yml на наличие синтаксических и семантических ошибок

      • Пример: «Проверьте мою конфигурацию CircleCI»

    Инструмент обеспечивает:

    • Подробные результаты проверки

    • Рекомендации по конфигурации

    Это поможет вам:

    • Отслеживайте ошибки конфигурации перед отправкой

    • Изучите передовой опыт конфигурации CircleCI

    • Устранение неполадок конфигурации

    • Правильно реализуйте функции CircleCI

  • create_prompt_template

    Помогает генерировать структурированные шаблоны подсказок для приложений с поддержкой ИИ на основе требований к функциям. Этот инструмент:

    1. Преобразует требования к функциям в структурированные подсказки:

      • Преобразует требования пользователя в оптимизированные шаблоны подсказок

      • Пример: «Создать шаблон подсказок для создания сказок на ночь по возрасту и теме»

    Инструмент обеспечивает:

    • Структурированный шаблон подсказки

    • Контекстная схема, определяющая требуемые входные параметры

    Это поможет вам:

    • Создавайте эффективные подсказки для приложений ИИ

    • Стандартизируйте входные параметры для получения единообразных результатов

    • Создавайте надежные функции на базе искусственного интеллекта

  • recommend_prompt_template_tests

    Создает тестовые случаи для шаблонов подсказок, чтобы убедиться, что они дают ожидаемые результаты. Этот инструмент:

    1. Предоставляет тестовые примеры для шаблонов подсказок:

      • Создает разнообразные тестовые сценарии на основе вашего шаблона подсказки и контекстной схемы.

      • Пример: «Создать тесты для моего шаблона подсказок для чтения сказки на ночь»

    Инструмент обеспечивает:

    • Массив рекомендуемых тестовых случаев

    • Различные комбинации параметров для проверки надежности шаблона

    Это поможет вам:

    • Проверить функциональность шаблона подсказки

    • Обеспечьте единообразие ответов ИИ на все входные данные

    • Определите пограничные случаи и потенциальные проблемы

    • Улучшить общее качество приложений ИИ

  • list_followed_projects

    Список всех проектов, за которыми пользователь следит на CircleCI. Этот инструмент:

    1. Извлекает и отображает проекты:

      • Показывает все проекты, к которым пользователь имеет доступ и за которыми следит

      • Предоставляет название проекта и projectSlug для каждой записи

      • Пример: «Список моих проектов CircleCI»

    Инструмент возвращает отформатированный список проектов, пример вывода:

    Projects followed: 1. my-project (projectSlug: gh/organization/my-project) 2. another-project (projectSlug: gh/organization/another-project)

    Это особенно полезно для:

    • Определение доступных вам проектов CircleCI

    • Получение projectSlug, необходимого для других инструментов CircleCI

    • Выбор проекта для последующих операций

    Примечание: projectSlug (не имя проекта) требуется для многих других инструментов CircleCI и будет использоваться для вызовов этих инструментов после выбора проекта.

  • run_pipeline

    Запускает конвейер. Этот инструмент можно использовать тремя способами:

    1. Использование Project Slug и Branch (рекомендуемый рабочий процесс):

      • Сначала перечислите доступные вам проекты:

        • Используйте инструмент list_followed_projects для получения ваших проектов

        • Пример: «Список моих проектов CircleCI»

        • Затем выберите проект, с которым связан projectSlug.

        • Пример: «Давайте использовать мой проект»

      • Затем попросите запустить конвейер для определенной ветки:

        • Пример: «Запустить конвейер для моего проекта на основной ветке»

    2. Используя URL-адрес CircleCI:

    3. Использование локального контекста проекта:

      • Работает из вашего локального рабочего пространства, предоставляя:

        • Корневой путь к рабочему пространству

        • Удаленный URL-адрес Git

        • Название филиала

      • Пример: «Запустить конвейер для моего текущего проекта на основной ветке»

    Инструмент возвращает ссылку для мониторинга выполнения конвейера.

    Это особенно полезно для:

    • Быстрый запуск конвейеров без посещения веб-интерфейса CircleCI

    • Прокладка трубопроводов из определенной ветки

Разработка

Начиная

  1. Клонируйте репозиторий:

    git clone https://github.com/CircleCI-Public/mcp-server-circleci.git cd mcp-server-circleci
  2. Установить зависимости:

    pnpm install
  3. Создайте проект:

    pnpm build

Создание Docker-контейнера

Вы можете создать Docker-контейнер локально, используя:

docker build -t circleci:mcp-server-circleci .

Это создаст образ Docker с тегом circleci:mcp-server-circleci , который можно использовать с любым клиентом MCP.

Чтобы запустить контейнер:

docker run --rm -i -e CIRCLECI_TOKEN=your-circleci-token -e CIRCLECI_BASE_URL=https://circleci.com circleci:mcp-server-circleci

Разработка с помощью MCP Inspector

Самый простой способ итерации на сервере MCP — использовать инспектор MCP. Узнать больше об инспекторе MCP можно по ссылке https://modelcontextprotocol.io/docs/tools/inspector

  1. Запустите сервер разработки:

    pnpm watch # Keep this running in one terminal
  2. В отдельном терминале запустите инспектор:

    pnpm inspector
  3. Настройте среду:

    • Добавьте свой CIRCLECI_TOKEN в раздел «Переменные среды» в пользовательском интерфейсе инспектора.

    • Токену необходим доступ на чтение к вашим проектам CircleCI.

    • При желании вы можете задать свой базовый URL CircleCI. По умолчанию https//circleci.com

Тестирование

  • Запустите тестовый набор:

    pnpm test
  • Запустите тесты в режиме наблюдения во время разработки:

    pnpm test:watch

Более подробные правила по внесению взносов см. на сайте CONTRIBUTING.md

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/CircleCI-Public/mcp-server-circleci'

If you have feedback or need assistance with the MCP directory API, please join our Discord server