Codemagic
Codemagic MCPサーバー
Codemagic CI/CD REST APIをClaudeから呼び出し可能なツールとして公開するローカルPython MCPサーバーです。チャットを離れることなく、Claude CodeやClaude Desktopからビルドのトリガー、アプリの管理、アーティファクトのダウンロード、キャッシュのクリアなどが行えます。
ツール
アプリ (Apps)
ツール | 説明 |
| Codemagicアカウント内の全アプリケーションを一覧表示 |
| 特定のアプリケーションの詳細を取得 |
| 公開リポジトリをCodemagicに追加 |
| SSHキーを使用してプライベートリポジトリを追加 |
| Codemagicからアプリケーションを削除 |
ビルド (Builds)
ツール | 説明 |
| ビルドを一覧表示(アプリによるフィルタリングが可能) |
| ステップ数の概要を含むビルド詳細を取得。 |
| アプリケーションの新しいビルドをトリガー |
| 実行中のビルドをキャンセル |
| ビルドのステップごとのステータス概要を取得(ステータスによるフィルタリングが可能) |
| 特定のビルドステップの生ログをインラインで取得、または管理対象の一時ファイルを作成/更新 |
| 特定のビルドステップの管理対象ローカルステップログアーティファクトがまだ存在するか確認 |
| ビルドによって生成された全アーティファクトを一覧表示 |
アーティファクト (Artifacts)
ツール | 説明 |
| ビルドアーティファクトのダウンロードURLを取得 |
| アーティファクトの期間限定公開URLを作成 |
キャッシュ (Caches)
ツール | 説明 |
| アプリケーションの全ビルドキャッシュを一覧表示 |
| 特定のビルドキャッシュを削除 |
| アプリケーションの全ビルドキャッシュを削除 |
環境変数 (Environment Variables)
ツール | 説明 |
| アプリケーションの全環境変数を一覧表示 |
| アプリケーションに環境変数を追加 |
| 既存の環境変数を更新 |
| 環境変数を削除 |
Webhook
ツール | 説明 |
| アプリケーションの全Webhookを一覧表示 |
| アプリケーションにWebhookを追加 |
| 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 .設定
Codemagicユーザー設定 → インテグレーション → Codemagic APIから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はオプションですが、主に1つのアプリを扱う場合は設定を推奨します。設定されている場合、ツールがapp_idを必要とし、かつ指定されていないときにAIが自動的にそれを使用します。設定されていない場合、AIは以下の動作を行います。
list_appsを呼び出して利用可能なアプリを検出します。アプリが1つだけ存在する場合は自動的にそれを使用します。
複数のアプリが見つかった場合はリストを提示し、選択を求めます。
ステップログファイルの配信
get_step_logsは2つの配信モードをサポートしています。
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次に、MCP環境設定でAPIキーを設定するか、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新しいツールの追加
client.pyにメソッドを追加する関連する
tools/*.pyファイルにツール関数を追加する以上です。
server.pyを変更する必要はありません。
Maintenance
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