mcp-server-circleci

Official
Apache 2.0
402
28
  • Linux
  • Apple

Integrations

  • Integrates with CircleCI to retrieve build failure logs and identify flaky tests. Supports accessing logs via CircleCI URLs or local project context, and analyzing test execution history to detect unreliable tests in a project's test suite.

Сервер CircleCI MCP

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

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

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

Требования

Установка

Курсор

Добавьте следующее в конфигурацию 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 с курсором см. в руководстве ниже: https://docs.cursor.com/context/model-context-protocol#configuring-mcp-servers

Код VS

Чтобы установить 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 } ], "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}" } } } }

Дополнительную информацию об использовании серверов MCP с VS Code смотрите в руководстве ниже: https://code.visualstudio.com/docs/copilot/chat/mcp-servers

Клод Десктоп

Добавьте следующее в ваш 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. Затем нажмите «Разработчик» в левой панели панели настроек, а затем нажмите «Изменить конфигурацию»

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

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json

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

Клод Код

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

claude mcp add circleci-mcp-server -e CIRCLECI_TOKEN=your-circleci-token -- npx -y @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

Виндсерфинг

Добавьте следующее в ваш 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 } } } }

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

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

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

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

Функции

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

  • get_build_failure_logsИзвлекает подробные журналы сбоев из сборок CircleCI. Этот инструмент можно использовать двумя способами:
    1. Использование URL-адресов CircleCI:
    2. Использование локального контекста проекта:
      • Работает из вашего локального рабочего пространства, предоставляя:
        • Корневой путь к рабочему пространству
        • Удаленный URL-адрес Git
        • Название филиала
      • Пример: «Найти последний неисправный конвейер в моей текущей ветке»

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

    • Названия должностей
    • Пошаговые детали выполнения
    • Сообщения об ошибках и контекст

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

    • Отладка неудачных сборок
    • Анализ неудачных тестов
    • Исследование проблем развертывания
    • Быстрый доступ к журналам сборки, не выходя из IDE
  • find_flaky_testsВыявляет нестабильные тесты в вашем проекте CircleCI, анализируя историю выполнения тестов. Это использует функцию обнаружения нестабильных тестов, описанную здесь: https://circleci.com/blog/introducing-test-insights-with-flaky-test-detection/#flaky-test-detectionЭтот инструмент можно использовать двумя способами:
    1. Используя URL-адрес проекта CircleCI:
    2. Использование локального контекста проекта:
      • Работает из вашего локального рабочего пространства, предоставляя:
        • Корневой путь к рабочему пространству
        • Удаленный URL-адрес Git
      • Пример: «Найти ненадёжные тесты в моём текущем проекте»

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

    • Тестовые имена и местоположения файлов
    • Сообщения об ошибках и контексты

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

    • Определите ненадежные тесты в вашем тестовом наборе
    • Получите подробный контекст о неудачных тестах
    • Принимайте решения об улучшении тестов на основе данных
  • get_latest_pipeline_statusИзвлекает статус последнего конвейера для заданной ветки. Этот инструмент можно использовать двумя способами:
    1. Используя URL-адрес проекта CircleCI:
    2. Использование локального контекста проекта:
      • Работает из вашего локального рабочего пространства, предоставляя:
        • Корневой путь к рабочему пространству
        • Удаленный 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. Использование URL CircleCI (рекомендуется):
    2. Использование локального контекста проекта:
      • Работает из вашего локального рабочего пространства, предоставляя:
        • Корневой путь к рабочему пространству
        • Удаленный 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. Предоставляет тестовые примеры для шаблонов подсказок:
      • Создает разнообразные тестовые сценарии на основе вашего шаблона подсказки и контекстной схемы.
      • Пример: «Создать тесты для моего шаблона подсказок для чтения сказки на ночь»

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

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

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

    • Проверить функциональность шаблона подсказки
    • Обеспечьте единообразие ответов ИИ на все входные данные
    • Определите пограничные случаи и потенциальные проблемы
    • Улучшить общее качество приложений ИИ

Разработка

Начиная

  1. Клонируйте репозиторий:
    git clone https://github.com/CircleCI-Public/mcp-server-circleci.git cd mcp-server-circleci
  2. Установите зависимости:
    pnpm install
  3. Создайте проект:
    pnpm build

Разработка с помощью 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

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

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

  1. Требования
    1. Установка
      1. Курсор
      2. Код VS
      3. Клод Десктоп
      4. Клод Код
      5. Виндсерфинг
      6. Установка через Smithery
    2. Функции
      1. Поддерживаемые инструменты
    3. Разработка
      1. Начиная
      2. Разработка с помощью MCP Inspector
      3. Тестирование

    Related MCP Servers

    • -
      security
      F
      license
      -
      quality
      An MCP server that provides detailed information about your development environment to the Cursor code editor, enabling more context-aware assistance.
      Last updated -
      1
      Python
      • Linux
      • Apple
    • A
      security
      A
      license
      A
      quality
      An MCP server integration that enables Cursor AI to communicate with Figma, allowing users to read designs and modify them programmatically through natural language commands.
      Last updated -
      19
      5,185
      3,528
      JavaScript
      MIT License
      • Apple
      • Linux
    • A
      security
      A
      license
      A
      quality
      Simple MCP Server to enable a human-in-the-loop workflow in tools like Cline and Cursor. This is especially useful for developing desktop applications that require complex user interactions to test.
      Last updated -
      1
      13
      Python
      MIT License
      • Linux
      • Apple
    • -
      security
      A
      license
      -
      quality
      An open-source MCP server that provides applications like Cursor, Windsurf, and Claude with access to llms.txt documentation files, allowing users to control and audit context retrieval.
      Last updated -
      4
      Python
      MIT License
      • Apple
      • Linux

    View all related MCP servers

    ID: 65ardm1kp6