Skip to main content
Glama

MCP-сервер Codemagic

MCP Registry

Локальный Python MCP-сервер, который предоставляет REST API Codemagic CI/CD в качестве инструментов, вызываемых Claude. Запускайте сборки, управляйте приложениями, загружайте артефакты и очищайте кэши — всё это из Claude Code или Claude Desktop, не покидая чат.

Codemagic MCP server

CodemagicMcp MCP server MCP Badge License: MIT

Инструменты

Приложения

Инструмент

Описание

list_apps

Список всех приложений в вашей учетной записи Codemagic

get_app

Получить подробную информацию о конкретном приложении

add_app

Добавить публичный репозиторий в Codemagic

add_private_app

Добавить приватный репозиторий с использованием SSH-ключа

delete_app ⚠️

Удалить приложение из Codemagic

Сборки

Инструмент

Описание

list_builds

Список сборок, опционально с фильтрацией по приложению

get_build

Получить подробную информацию о сборке со сводкой по количеству шагов; передайте include_steps=True для получения полного списка шагов

trigger_build

Запустить новую сборку для приложения

cancel_build ⚠️

Отменить запущенную сборку

get_build_logs

Получить пошаговую сводку состояния сборки (с возможностью фильтрации по статусу)

get_step_logs

Получить необработанные логи напрямую или создать/обновить управляемый временный файл для конкретного шага сборки

get_step_log_artifact

Проверить, существует ли еще управляемый локальный артефакт лога шага для конкретного шага сборки

list_build_artifacts

Список всех артефактов, созданных сборкой

Артефакты

Инструмент

Описание

get_artifact_url

Получить URL для скачивания артефакта сборки

create_artifact_public_url

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

Кэши

Инструмент

Описание

list_caches

Список всех кэшей сборок для приложения

delete_cache ⚠️

Удалить конкретный кэш сборки

delete_all_caches ⚠️

Удалить все кэши сборок для приложения

Переменные окружения

Инструмент

Описание

list_variables

Список всех переменных окружения для приложения

add_variable

Добавить переменную окружения в приложение

update_variable

Обновить существующую переменную окружения

delete_variable ⚠️

Удалить переменную окружения

Вебхуки

Инструмент

Описание

list_webhooks

Список всех вебхуков для приложения

add_webhook

Добавить вебхук в приложение

delete_webhook ⚠️

Удалить вебхук

⚠️ Эти инструменты помечены как деструктивные и будут запрашивать подтверждение перед выполнением.

Быстрый старт

Самый быстрый способ начать работу с Claude Code — отдельный шаг установки не требуется:

# 1. Add the server (uses uvx to run it on-demand)
claude mcp add codemagic -e CODEMAGIC_API_KEY=your-api-key-here -- uvx codemagic-mcp

# 2. Restart Claude Code — tools will appear in /tools

Это всё. См. Конфигурация для получения информации о дополнительных настройках, таких как CODEMAGIC_DEFAULT_APP_ID.


Установка

Требования: Python 3.11+

Вариант 1 — uvx (рекомендуется, установка не требуется)

uvx codemagic-mcp

Вариант 2 — pip

pip install codemagic-mcp

Вариант 3 — из исходного кода

git clone https://github.com/AgiMaulana/CodemagicMcp.git
cd CodemagicMcp
python3 -m venv .venv
.venv/bin/pip install -e .

Конфигурация

Получите свой API-токен в Codemagic User Settings → Integrations → Codemagic API.

Вы можете предоставить настройки в виде переменных окружения или через файл .env:

# .env
CODEMAGIC_API_KEY=your-api-key-here

# Optional: set a default app so you don't have to specify it every time
CODEMAGIC_DEFAULT_APP_ID=your-app-id-here

# Optional: customize managed temp log storage for get_step_logs(..., delivery="file")
CODEMAGIC_LOG_TEMP_DIR=/tmp/codemagic-mcp
CODEMAGIC_LOG_TTL_SECONDS=3600
CODEMAGIC_LOG_CLEANUP_INTERVAL_SECONDS=300
CODEMAGIC_LOG_MAX_TOTAL_BYTES=524288000
CODEMAGIC_LOG_MAX_FILE_COUNT=200

ID приложения по умолчанию

CODEMAGIC_DEFAULT_APP_ID является необязательным, но рекомендуется, если вы работаете в основном с одним приложением. Если этот параметр задан, ИИ будет использовать его автоматически всякий раз, когда инструменту требуется app_id, а он не был указан. Если он не задан, ИИ:

  1. Вызовет list_apps для обнаружения доступных приложений.

  2. Автоматически использует приложение, если оно только одно.

  3. Представит список и попросит вас выбрать, если найдено несколько приложений.

Доставка файлов логов шагов

get_step_logs поддерживает два режима доставки:

  • delivery="file" — это значение по умолчанию, которое записывает лог во временный управляемый локальный файл, возвращая метаданные, такие как artifact_id, file_path, bytes, line_count и expires_at.

  • delivery="inline" — возвращает необработанный текст лога шага напрямую.

Режим локального файла полезен, когда лог шага слишком велик, чтобы удобно возвращать его в строке. Управляемые файлы логов хранятся в CODEMAGIC_LOG_TEMP_DIR, а просроченные файлы удаляются по мере возможности при записи нового файла лога. Окно хранения по умолчанию контролируется параметром CODEMAGIC_LOG_TTL_SECONDS и составляет 3600 секунд.

Сервер также выполняет очистку при запуске и периодический фоновый цикл очистки. Интервал цикла контролируется параметром CODEMAGIC_LOG_CLEANUP_INTERVAL_SECONDS и составляет 300 секунд. В качестве дополнительной меры безопасности, управляемый временный каталог ограничен параметрами CODEMAGIC_LOG_MAX_TOTAL_BYTES и CODEMAGIC_LOG_MAX_FILE_COUNT; при превышении любого из этих лимитов первыми удаляются самые старые файлы.

get_step_log_artifact(build_id, step_id) проверяет, существует ли еще этот управляемый артефакт, не вызывая Codemagic повторно и не возвращая содержимое файла. Метаданные артефакта включают детерминированный artifact_id в следующем формате:

artifact_<build_id>_<step_id>

Если артефакт отсутствует, сервер возвращает status="missing" с причиной not_generated_or_expired, что означает, что файл либо никогда не был создан, либо он истек и был удален.

Регистрация в Claude Code

Выполните следующую команду, чтобы добавить сервер:

claude mcp add codemagic -- codemagic-mcp

Затем установите свой API-ключ в конфигурации MCP env или экспортируйте его в своей оболочке перед запуском Claude Code:

export CODEMAGIC_API_KEY=your-api-key-here

Альтернативно, добавьте его вручную в ~/.claude.json:

{
  "mcpServers": {
    "codemagic": {
      "command": "codemagic-mcp",
      "env": {
        "CODEMAGIC_API_KEY": "your-api-key-here",
        "CODEMAGIC_DEFAULT_APP_ID": "your-app-id-here"
      }
    }
  }
}

Использование uvx (предварительная установка не требуется)

{
  "mcpServers": {
    "codemagic": {
      "command": "uvx",
      "args": ["codemagic-mcp"],
      "env": {
        "CODEMAGIC_API_KEY": "your-api-key-here",
        "CODEMAGIC_DEFAULT_APP_ID": "your-app-id-here"
      }
    }
  }
}

Перезапустите Claude Code — инструменты появятся в /tools.

Регистрация в Claude Desktop

Добавьте в ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) или %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "codemagic": {
      "command": "codemagic-mcp",
      "env": {
        "CODEMAGIC_API_KEY": "your-api-key-here",
        "CODEMAGIC_DEFAULT_APP_ID": "your-app-id-here"
      }
    }
  }
}

Перезапустите Claude Desktop, чтобы применить изменения.

Структура проекта

codemagic_mcp/
├── config.py        # pydantic-settings config (validates API key at startup)
├── client.py        # httpx async client, one method per endpoint
├── server.py        # FastMCP instance
└── tools/
    ├── apps.py
    ├── builds.py
    ├── artifacts.py
    ├── caches.py
    ├── variables.py
    └── webhooks.py

Добавление новых инструментов

  1. Добавьте метод в client.py

  2. Добавьте функцию инструмента в соответствующий файл tools/*.py

  3. Это всё — server.py менять не нужно

Install Server
A
license - permissive license
A
quality
A
maintenance

Maintenance

Maintainers
1hResponse time
4dRelease cycle
9Releases (12mo)

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/AgiMaulana/CodemagicMcp'

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