本文へ移動
記事一覧

PhotoCraft MCP

PhotoCraft MCP と AnimGen:キャラクター PNG からジャンプアニメを作る

PhotoCraft MCP でキャンバスを広げ、AnimGen MCP でジャンプを生成し、書き出したフレームを修正する実例。動画と 24 FPS の透明素材を公開します。

AnimGen更新日 10 分で読める
ジャンプするオレンジ色のロボットと PhotoCraft MCP・AnimGen の制作フロー
目次

立ち姿がちょうど収まる画像でも、ジャンプすると頭が画面の外へ出てしまうことがあります。今回は PhotoCraft MCP でオレンジ色のロボットの上に透明な余白を追加し、その PNG を AnimGen MCP に渡して動きを生成しました。書き出し後に見つかった 2 フレームの色残りも PhotoCraft で修正しています。

下の動画では、着地から構えに戻るまでを含む 1 回のジャンプを、元の 24 FPS で再生します。クリーム色の背景は表示用で、ダウンロードできる WebM と PNG は透明です。

MCP ワークフローで作ったジャンプ。着地して立ち上がるまでの 77 フレームを、24 FPS、約 3.21 秒で再生します。

PhotoCraft MCP をローカルの素材フォルダーに接続する

使用したのは公式の PhotoCraft 0.9.0 CLIです。2026 年 10 月 14 日に macOS で確認しました。CLI はヘッドレスの MCP サーバーとして動作するため、今回の画像処理にエディターのウィンドウは不要です。デスクトップ版の導入は PhotoCraft ダウンロードガイドで紹介しています。

作業フォルダーと、その中に output フォルダーを用意します。MCP クライアントから、ダウンロードした実行ファイルを次の引数で起動してください。パスは自分の環境の絶対パスに置き換えます。

bash
photocraft-cli mcp \
  --automation-read-root /absolute/path/robot-project \
  --automation-write-root /absolute/path/robot-project/output

この 2 つのフォルダーが読み書きの範囲になります。doc_open のパスは読み取りルート、doc_save は書き込みルートを基準に解決されます。接続後は PNG を開き、command_list で必要なコマンドを調べます。公式 MCP ドキュメントには、ヘッドレスモード、コマンドの取得、UI ツール向けの bridge モードの説明があります。

AnimGen は MCP クライアント接続ガイドに沿って接続します。https://api.animgen.com/mcp にある OAuth 認証付きのリモートサーバーです。今回の PhotoCraft はローカルで動作します。

キャラクターを縮小せず、頭上に余白を追加する

元のロボット PNGは 1254 × 1254 です。ドキュメントを複製し、キャンバスを 2160 × 1620 に拡張しました。基準位置は下中央、追加領域は透明にしています。

image.canvasSize を確認したあと、command_run に次の引数を渡しました。

json
{
  "id": "image.canvasSize",
  "params": {
    "width": 2160,
    "height": 1620,
    "relative": false,
    "anchor": "bottom",
    "extensionColor": "transparent"
  }
}

同じ倍率で並べた元の正方形 PNG と PhotoCraft で拡張したキャンバス。頭上の余白が増えている

元の画像は新しいキャンバス内の x=453、y=366 に配置されました。元の RGBA ピクセルは変わらず、追加領域の Alpha はすべて 0 です。図の灰色部分はキャンバス範囲を示す表示用の背景です。実際に生成に使った PNGには含まれていません。

編集可能な .pcraft と PNG の両方を保存しました。PhotoCraft で余白を用意したため、今回は AnimGen の Expand Canvasを使用していません。

PNG のファイル本体を AnimGen に渡す

ローカルファイルのパスだけではリモートサーバーに画像は届きません。クライアントが prepare_image_upload を呼び、返された方法とヘッダーでファイルのバイト列を送信し、complete_image_upload を呼び出します。そこで得た file_id を生成に使用します。今回、アップロード後のサイズと SHA-256 は PhotoCraft の出力と一致しました。

両方の MCP を接続したアシスタントには、次の英文を作業テンプレートとして渡せます。実行した全ツールの逐語的なログではありません。

text
Use PhotoCraft MCP to open my transparent robot PNG and duplicate it.
Expand the canvas to 2160 x 1620, bottom-centred, with transparent margins.
Save a new PNG without resizing the character.

Use AnimGen MCP to upload that PNG's actual bytes. Discover the available
models and quote a 4-second, 480p, 4:3 jump with automatic Alpha Key.
Show me the model and credit quote, and wait for approval before generation.

Keep the camera fixed and the whole robot in frame. Ask for a crouch,
an in-place jump and a landing. Save the task ID and wait for completion.
Reuse that source video for transparent exports; do not generate again
when selecting frames. Preserve 24 FPS and check the exported alpha.

アップロード、見積もり、完了確認の詳細は AnimGen MCP の実践ガイドを参照してください。

1 回の生成を承認し、元動画を再利用する

承認した条件は Seedance 2.0 Fast、4 秒、480p、4:3、自動 Alpha Key です。生成の実請求は 36 クレジット、透明素材の書き出しは見積もりも実請求も 0 クレジットでした。追加の動画生成は行っていません。

項目 今回の結果
返された動画 752 × 560、24 FPS、97 フレーム
計測した長さ 約 4.04 秒
動作 2 回続けてジャンプし、構えに戻る
生成の請求/返金 36/0 クレジット
書き出しの請求 0 クレジット

指示は 1 回のジャンプでしたが、実際には 2 回生成されました。最初のジャンプを選べば素材として使えます。金額はこの実行時の記録です。自分の設定では改めて見積もりを確認してください(料金)。

現在の FPS 書き出しモードは、スプライトシートと対応する JSON の組み合わせに対応します。この 2 つを 24 FPS で書き出し、透明動画と PNG 連番は動画全体の 97 フレームを指定して別に書き出しました。どちらも同じ動画素材を再利用し、上限を 0 クレジットに設定しています。

PhotoCraft で着地付近の 2 フレームを修正する

最初に書き出した 97 フレームを明るい背景と暗い背景で確認すると、元フレーム 48 と 49 に、頭の近くの薄い緑色の残りが見つかりました。最初の着地付近です。この程度の局所的な問題なら、そのフレームを編集できます。

該当 PNG のコピーを PhotoCraft で開き、select.rect と edit.clear で残りがある空白部分を消去しました。選択範囲外のピクセルはすべて元と一致し、残りの 95 フレームにも変更はありません。

同じ倍率と暗い背景で表示した元フレーム 48。PhotoCraft MCP による修正前後の比較

比較図は実際の書き出し画像を並べたもので、ラベルは英語です。エディターの画面キャプチャではありません。元のキャンバス寸法と地面の影は維持しました。色かぶりがキャラクターそのものに重なっている場合は、ピクセルを消す前に透明アニメのエッジ調整ガイドを確認してください。

1 回のジャンプを 24 FPS のまま切り出す

最終クリップは 77 フレーム、24 FPS、約 3.21 秒です。しゃがみ、踏み切り、空中の動き、着地、立ち上がりまでを残しました。完成版 WebM の全フレームを使い、補間や速度変更は加えていません。

ロボットが構えに戻ったところでクリップが終わります。一度再生して次の状態へ切り替える用途で、シームレスなループにはしていません。剣の攻撃アニメの事例では単発動作、歩行アニメのガイドではループを扱っています。

同じジャンプを明るい背景と暗い背景で確認できます。

両側とも同じ 77 フレーム、約 3.21 秒のジャンプを 24 FPS で再生します。明暗の背景はプレビュー用に加えています。

自分のプロジェクトで試すための素材

ファイル 内容
準備済みキャラクター PNG 生成に使った 2160 × 1620 の PhotoCraft 出力
透明ジャンプ WebM 着地後の復帰まで含む 77 フレーム、752 × 560、24 FPS。VP9 圧縮後は約 436 KB
PNG 連番 ZIP 77 枚の透明画像。番号は完成版 WebM 内の 0〜76 フレームに対応
スプライトシートと JSON 同じ 77 フレームを 6016 × 5600 に配置。フレームごとの表示時間付き
素材記録 寸法、費用、修正範囲、ファイルハッシュ

シートは元解像度を保っているため、使用環境が幅 6016 ピクセルのテクスチャに対応するか確認してください。PNG 連番から縮小や再配置もできます。各フレームの共通キャンバスを維持すると、ジャンプの高さを保てます。

PhotoCraft MCP のよくある質問

PhotoCraft MCP が AI アニメを生成するのですか?

この例で PhotoCraft が担当するのは入力キャンバスと書き出し後のピクセル編集です。AnimGen が動作を生成し、最初の透明素材を書き出します。クライアントが両者を呼び出し、ファイルを受け渡します。

全工程が無料ですか?

ローカルの PhotoCraft 編集で生成クレジットは消費しませんでした。今回の AnimGen 生成は 36 クレジット、書き出しは 0 です。MCP クライアントの AI 利用料は別途かかる場合があります。

自分のキャラクターでも使えますか?

はい。実際に透明な PNG を用意し、動く方向に余白を残します。しゃがみ、ジャンプの頂点、着地の姿勢を確認してください。ブラウザーで操作するなら透明アニメーションメーカーから始められます。

画像の詳細