mcpField
A
adobe-edit-quick-cut

adobe-edit-quick-cut

github.com/adobeクリエイティブ・メディア316293 回インストール今日更新
リポジトリ

adobe-edit-quick-cut について

Adobe Edit Quick Cut は、元動画から AI が選んだハイライトを1本作成するスキルです。追加質問をせず、元の依頼から意図と目標時間を推定し、完成後にプレビューします。

主な機能

  1. 01AI が選ぶハイライトを1本作成
  2. 02元の依頼から意図を推定
  3. 03目標時間の既定値は30秒
  4. 04非同期ジョブの完了を処理
  5. 05生成結果をすぐにプレビュー
  6. 06リサイズと精密編集の案内

活用シーン

  1. 01動画からSNS向けのハイライトを作成
  2. 02トピックや用途を指定して編集
  3. 03生成した動画を確認して変更を判断

MCP 対応

Adobe MCP ツールで Creative Cloud の素材を選び、Quick Cut を非同期で実行し、一時的な結果 URL をプレビューします。アップロードの代替手順や、Quick Cut が対応しない編集用ツールも説明します。

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/adobe/skills --skill adobe-edit-quick-cut

インストール後、Claude Code で/adobe-edit-quick-cutを入力して読み込まれたか確認します。

詳細

Adobe Edit Quick Cut

ソース動画から、ユーザーの最初のリクエストだけをもとに、AI が編集したハイライトカットを1 本作成します。追加の質問はしません。ユーザーがすでに伝えた内容から意図と長さを推測し、何も伝えていない場合は妥当なデフォルトを使用して、プレビューを 1 つだけ提供します。

表示に関する注意: デフォルトのフローでは、Adobe の MCP App ウィジェットである asset_add_file ファイルピッカー(ステップ 2)と asset_preview_file プレビュー(ステップ 5)を使用します。現在の画面でウィジェットが利用できない場合に限り、そのステップのウィジェットが利用できない場合の代替手順を使用してください。クライアント名ではなく、利用可能かどうかで判断します。


Quick Cut の仕組みと、設計時の考慮事項

video_create_quick_cut は、AI によるラフカットツールです。user_prompt は動画の内容と、どのような仕上がりを望むかの説明(例:「非営利団体の、社会貢献のための資金調達に関するインタビュー」)であり、テンポの指示を列挙するものではありません。どの場面を選ぶかはツールが判断します。主な制限と、それぞれに対応するルールを以下に示します。

Quick Cut の動作/制限影響このスキルでの対応
user_prompt では動画の内容/用途を説明する曖昧な雰囲気を表す形容詞だけでは、効果がほとんどありません明確に説明します。ユーザー自身の言葉がある場合は、その内容を反映します(ステップ 3)
target_duration は厳密なトリミング長ではなく、目安です出力が指定時間を超える場合があります必ず数値を渡します。ユーザーが長さを指定している場合はその長さを、指定していない場合は30 秒のデフォルトを使用します(ステップ 3)
出力は CC アセットではなく、一時的な署名付き URLですURL には有効期限があり、そのまま video_resize に渡すことはできません完了後、すぐにプレビューします(ステップ 5)。リサイズするには、再度取り込みます(既知の制限を参照)
同一のプロンプトでは、似たカットが生成される傾向があります再実行しても、バリエーションはほとんど得られません別のものを提案する場合は、異なる意図または長さを指定します(ステップ 6)
video_create_quick_cut は非同期で実行されます(status: "working" → 完了時に結果が返されます)"working" ステータスのまま次に進むと、実際の結果を取得できませんウィジェットの完了イベントを待ちます。"working" ステータスでは処理を進めないでください(以下の非同期処理を参照)

非同期処理(video_create_quick_cut): status: "working" の応答は保留中であり、失敗でも出力の欠落でもありません。いずれかとして扱わないでください。**ポーリングはウィジェットが管理します。完了イベントを待ち、ポーリングツールは呼び出さないでください。**結果の読み取りや代替手段の適用は、完了した結果、または最終的な失敗が確認された後に限ります。


ツールのリファレンス

ツール目的
adobe_mandatory_init必須の初期化。ファイル処理のルールとツールのルーティング情報を返します。
asset_add_fileファイルピッカー。確認すると、ウィジェットが選択された CC の assetId をコンテキストに挿入します。ポーリングせず、挿入を待ってください。
asset_initialize_file_uploadウィジェットが利用できない場合のステージング手段(ステップ 1)。ローカルファイルのアップロードを開始します。
asset_finalize_file_uploadウィジェットが利用できない場合のステージング手段(ステップ 2)。アップロードを完了し、assetId を返します。
video_create_quick_cutハイライトカットを作成します(1 回の呼び出し)。非同期のため、status: "working" が返される場合があります。ジョブの完了時に、完成したカットが届きます(ウィジェットが追跡します)。
asset_preview_file完成したカットを、完了後すぐに表示します。
video_resizeダウンロードしたカットを再度取り込んだ後に行う、リサイズの代替手段です。
video_renderQuick Cut では対応できない編集に使用します。タイムスタンプを指定した正確なトリミングや、音楽、音声、画像の追加・置き換えに対応します。

ワークフロー

ステップ 0 — Adobe ツールを初期化する

最初に adobe_mandatory_init を呼び出します。

{ "skill_name": "adobe-edit-quick-cut", "skill_version": "3.1.0" }

ステップ 1 — 利用資格を確認する

adobe_mandatory_init により、「Adobe for creativity」コネクターが利用可能であることを確認します。video_create_quick_cut と asset_preview_file が利用可能か確認してください。この画面で asset_add_file または asset_preview_file が利用できない場合は、そのステップのウィジェットが利用できない場合の代替手順を使用します。ツールの結果に importantNote または「Asset Storage & Display」に関するガイダンスが含まれている場合は、ここに記載された表示のデフォルト設定よりも優先します。


ステップ 2 — ソース動画を取得する

ユーザーのメッセージですでに Creative Cloud アセット(CC assetId)が指定されている場合は、それを直接使用します。それ以外の場合は、Creative Cloud に届くまでは使用できないチャットへの直接アップロードやローカルファイルも含め、まずピッカー(または以下のウィジェットなしでのステージング手順)から取得します。

「動画からハイライトカットを作成しましょう。まず、ファイルを選択してください。」

asset_add_file()

ウィジェットのコンテキストから assetId(CC アセット ID)を抽出します。ウィジェットは確認時にこれを挿入するため、それまで待ってください(ポーリングはしないでください)。

video_create_quick_cut には、presignedAssetUrl ではなく CC アセット ID(assetId)が必要です。

ウィジェットを使わない場合の代替手順 (この環境で asset_add_file が利用できない場合のみ) — ファイルの場所から assetId を取得します。すでに Creative Cloud にあるファイルは、CC assetId を直接指定します。ローカルファイルをステージングするには、この環境向けに adobe_mandatory_init が案内するアップロード手順を使用します(環境によって異なります。環境固有のアップロードツールが指定される場合や、asset_initialize_file_upload → PUT → asset_finalize_file_upload の順で処理する場合があります)。ステージングには外部への通信が必要です。まず adobe_mandatory_init で外部通信の状態を確認してください。外部通信が無効で、この環境にピッカーもない場合は、ステージングできないことをユーザーに伝えます。初期化/完了の順で処理する場合は、ファイルサイズと MIME タイプを取得し、asset_initialize_file_upload({ path, media_type }) を呼び出して、返された URL にバイトデータを PUT した後、asset_finalize_file_upload({ filename, transfer_document }) を呼び出し、assetId を抽出します。


ステップ 3 — 元のリクエストから意図を組み立てる(質問しない)

ユーザーには何も尋ねないでください。両方の入力を、ユーザーの元のメッセージから導き出します。

user_prompt — 一般的な意図を基にし、ユーザー自身の言葉がある場合に限り、それを組み合わせます。

  • ユーザーから詳細が指定されていない場合の一般的な意図:

    ソーシャルメディアですぐに共有できるよう、最も魅力的で、エネルギッシュかつ視覚的に興味深い場面を残し、印象的なオープニングと自然な流れを備えた、動画の魅力的なハイライトリール。

  • ユーザーが意図や出力の詳細を指定している場合(内容、機会、目的、「価格についての部分」などのトピックの焦点、「映画のような雰囲気」「盛り上がる感じ」「募金イベント向け」などの雰囲気) — 説明を先に置き、ハイライトとして編集する意図を保ちます。

    <user's description>. 最も力強く魅力的な場面を残し、自然な流れで、ソーシャルメディアでの共有に適したハイライトリールに編集してください。 「映画のような」「エネルギッシュな」など、指定された雰囲気を表す形容詞を文に組み込みます。ユーザー自身の説明だけで希望する出力が完全に指定されている場合は、そのまま使用します。

target_duration(秒) — 必ず数値を渡します。

  • ユーザーが長さを指定している場合 → その数値を使用します。これは目標値です。Quick Cut はその長さを目指しますが、少し超える場合があります。「1 分未満」のような上限が指定された場合は、上限より数秒短い長さ(例:約 50 秒)を目標とし、概算であることを伝えます。厳密な上限や正確な再生時間が必要な場合は、代わりに video_render を使用してください。
  • 長さが指定されていない場合 → デフォルトの 30 秒を使用します。

注記(API の制約): Quick Cut の UI には Duration: Auto がありますが、MCP の video_create_quick_cut には数値の target_duration が必要です。そのため、ユーザーが指定した長さ、またはデフォルトの 30 秒を渡してください。


ステップ 4 — 1 本カットを作成して、完了を待つ
video_create_quick_cut({
  assetIds: [assetId],
  target_duration: <stated_length_or_30>,
  user_prompt: "<generic-or-merged intent>"
}) // → taskId

簡潔に伝えます。「ハイライトカットを作成しています。準備ができたらすぐにプレビューします。」

video_create_quick_cut も 非同期 です(status: "working" を返します)。プレビューする前に 処理が完了した結果を待ちます(上記の 非同期処理 を参照)。working 状態では操作しないでください。完了したら、outputUrl(完了済みの presignedAssetUrl)を保存します。URL には有効期限があるため、すぐにプレビューしてください。

完了イベントが届かない場合: 処理を止めたり、状態を作り上げたりしないでください。最後に確認できた状態は 処理中 です。トラッカーがあるものの処理が遅い場合は、カットはまだ処理中で、完了するとプレビューが表示されることをユーザーに伝えます。この環境に非同期トラッカーがまったくない場合は、カットの送信と処理は完了したものの、このセッションでは結果を取得できないことを伝え、Adobe Express などのウィジェット対応クライアントを提案してください。


ステップ 5 — 結果をプレビューする(必須。最初に行うこと)

ジョブが完了したら、要約を書く前に、次のアクションとしてすぐに asset_preview_file を呼び出してください。 プレビューの代わりに動画を文章で説明してはいけません。URL の有効期限が切れる可能性があるため、呼び出しは実際に、速やかに実行してください。

asset_preview_file({
  assets: [
    {
      name: "Highlight cut.mp4",
      presignedAssetUrl: outputUrl,
      mediaType: "video/mp4",
      source: "acp"
    }
  ]
})

mediaType と source を含めてください。これらがないと、ウィジェットで動画をレンダリングできないことがあります。

ウィジェットがない場合のフォールバック(この環境で asset_preview_file を利用できない場合に限る)— URL をそのまま提示します(Highlight cut.mp4 → <outputUrl>)。UI クライアントではメディア URL がインラインで表示されます。インライン表示に対応していない場合は、ネイティブのファイルダウンロードツールを使ってメディアファイルをワークスペースにダウンロードし、<outputUrl> を highlight_cut.mp4 として保存してから、そのローカルパスを提示してください。asset_preview_file がエラーになった場合は、すぐに URL をリンクとして投稿してください。


ステップ 6 — 要約して、別のバージョンを提案する

プレビューが表示されたら、作成したものを 1 行で要約します(実際の長さが指定された長さより長くなった場合は、そのことも正直に伝えてください)。続けて、次のように提案します。

「別のバージョンも作りますか? 別のフォーカス(特定の瞬間や雰囲気など)または 別の長さ を指定してください。カットに実際に変化を加えられるのはこの部分です。特定のプラットフォーム向けにサイズを変更することもできます。または、上のプレビューからダウンロードできます。」

ユーザーが別のバージョンを求めたら、新しい意図や長さを指定してステップ 4 に戻ります。同じ意図で再実行すると非常によく似たカットになりがちなので、変更を促してください。


⚠️ 既知の制約 — 出力を後続の動画ツールに直接渡せません

video_create_quick_cut は一時的な署名付き URL を返し、CC に保存されたアセット ID は返しません。video_resize と media_enhance_speech には CC アセット ID が必要なため、Quick Cut から Resize / Enhance に直接つなぐことはできません。 Quick Cut の出力をサイズ変更するには、ユーザーにダウンロードしてもらい、ステップ 2 とまったく同じ方法(asset_add_file() またはステージングのフォールバック)で再取り込みしてから、新しい assetId に対して video_resize を実行するよう伝えてください。ユーザーが Quick Cut の出力のサイズ変更や音声強化を求めた場合は、この点を事前に説明してください。


Quick Cut でできないこと

Quick Cut は、動画の トランスクリプト/会話 に十分な発話がある場合は、そこから最も関連性の高い場面を選びます(「価格についての部分」や「犬を洗っている部分」など、トピック を指定できます)。発話が少ない場合は、映像(チャンクごとにキャプションが付けられた映像素材)を基に選びます。常にハイライトを作成します。次のことは できません。

  • 言い直しや言いよどみ(「えーと」「あの」)を削除したり、指示どおりにトランスクリプトを決定的に編集したりすること。正確な編集ではなく、ハイライトを選択します。
  • 特定のタイムスタンプ(「0:30 から 1:15 までカット」)に合わせてトリミングすること、音楽、音声、画像を追加または差し替えること。これらは video_render ツールで実行できます(正確なトリミングや音楽/音声/画像の追加には、こちらを使用してください)。

エラー処理

  • video_create_quick_cut が 403(利用資格)を返す場合:再試行しないでください。現在の Adobe プランでは Quick Cut を利用できないことをユーザーに伝え、プランのアップグレードを提案するか、Premiere Rush/Premiere Pro で手動でトリミングするよう案内してください。

  • いずれかのツールが 401(認証されていない)を返す場合:Adobe OAuth で再認証してから、再試行するようユーザーに依頼してください。

  • 出力が指定された長さを超える場合:想定内です。target_duration はあくまで目標値です。正直にその旨を伝えてください。さらに短くしたい場合は、より短い長さを指定して一度だけ再実行してください。正確な再生時間にしたい場合は、video_render を使用してください。

  • 初回にその他のエラーでジョブが失敗した場合:一時的な 5xx(500/502/503/504)であることが確認できた場合に限り、一度だけ再試行してください。429 の場合は、Retry-After を待つか、短いバックオフを挟んで一度だけ再試行してください。それ以外の 4xx 応答に対して、むやみに再試行してはいけません。エラーを報告してください。送信がタイムアウトし、ジョブが受け付けられた可能性がある場合は、再送信せず、既存のジョブの完了イベントを待ってください(2 つ目のジョブを送信すると、コストの高い非同期実行が無駄になります)。許可された再試行でも失敗した場合は、エラーを報告し、ソース動画の再アップロードを提案してください。

  • 進捗が長時間同じ割合で止まっている場合:その旨をユーザーに伝え、ソースの再アップロードを提案してください。

  • ユーザーが誤って画像をアップロードした場合:mediaType で検出してください。video/* でない場合は、その旨を伝え、ピッカーを再度開くか、ステージングのフォールバックを再実行してください。


制約

  • video_create_quick_cut やその他の動画ツールに、ローカルのファイルシステムパスをそのまま渡してはいけません。ローカルファイルは、asset_add_file ピッカー、または asset_initialize_file_upload → PUT → asset_finalize_file_upload のステージング・フォールバックを通じて、必ず先に Creative Cloud にアップロードしてください。有効なのは、そこで得られる assetId のみです。
  • video_create_quick_cut で必要なのは assetId(CC アセット ID)であり、presignedAssetUrl ではありません。
  • リクエストごとに作成するカットは 1 つです。複数の video_create_quick_cut ジョブを並行して実行してはいけません。追加のバージョンは、ユーザーから依頼があった場合に限り、1 つずつ作成してください(ステップ 6)。
  • ユーザーに確認の質問をしてはいけません。元のリクエストと一般的な意図に基づいて作業してください。

コメント