mcpField
O
openclip-thumbnails

openclip-thumbnails

github.com/openclip-appクリエイティブ・メディア144 回インストール12 週間前に更新
リポジトリ

openclip-thumbnails について

openclip-thumbnailsは、動画からフレームを抽出し、画像を編集するスキルです。サムネイル作成や画像調整に向けた無料ツールで、フレーム抽出のほか、圧縮、リサイズ、切り抜き、形式変換に対応します。

主な機能

  1. 01動画から複数フレームを抽出
  2. 02出力フレームの幅を指定
  3. 03画像を圧縮
  4. 04画像をリサイズ
  5. 05比率または座標で切り抜き
  6. 06画像形式を変換

活用シーン

  1. 01動画からサムネイル候補を作成
  2. 02確認用に複数フレームを抽出
  3. 03画像を正方形のWebPに切り抜き
  4. 04大きなPNGファイルを圧縮

MCP 対応

OpenClipのリモートMCPサーバーを使い、フレーム抽出、画像編集、非同期ジョブの状態確認を行います。

インストール

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

$npx skills add https://github.com/openclip-app/agent-skills --skill openclip-thumbnails

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

詳細

OpenClip:サムネイルと画像編集

通常は一緒に使う、無料のツールが2つあります。

  • extract_thumbnails - 動画からフレームを抽出します。
  • edit_image - 画像を圧縮、サイズ変更、トリミング、または形式変換します。

どちらも無料です。OpenClip アカウントは必要ですが、サブスクリプションもクレジットも不要です。

セットアップ(一度だけ)

OpenClip は https://openclip.app/mcp にあるリモート MCP サーバーです。OAuth プロンプトが表示されたら OpenClip アカウントでサインインしてください。コピーする API キーはありません。

  • Claude Code: claude mcp add --transport http openclip https://openclip.app/mcp を実行し、その後 /mcp で認証します。
  • Claude Desktop / web: Settings、Connectors、「Add custom connector」の順に開き、URL を貼り付けてサインインします。
  • Cursor(.cursor/mcp.json):{ "mcpServers": { "openclip": { "url": "https://openclip.app/mcp" } } }
  • ヘッダーのみのクライアント: openclip.app/settings/connect で MCP トークンを発行し、 Authorization: Bearer <token> を付けて https://openclip.app/mcp/key に接続します。

動作確認:get_account を呼び出します。

ファイルの取り込み

  1. create_upload(filename, content_type) は id と upload_url を返します。
  2. 生のバイトデータを upload_url に PUT します。
  3. 返された id を、video(サムネイル)または file(画像編集)引数に渡します。

complete_upload は呼び出さないでください。 有料のクリッピングパイプラインが開始されます。無料ツールは アップロードされたファイルを直接読み込みます。list_videos にすでにある動画も入力として使えます。

extract_thumbnails

extract_thumbnails(video, count?, width?)。

  • count - 1~10。デフォルトは1です。フレームは動画全体にわたって抽出されるため、count: 5 にすると 選択用の大まかなコンタクトシートが得られます。
  • width - 出力フレームの幅をピクセル単位で指定する省略可能な値です。

出力はフレームの zip ファイルであり、個別の画像 URL ではありません。zip の URL をユーザーに渡すか、 特定のフレームが必要な場合は解凍してください。

均等に分散したフレームではなく、正確な時点のフレームが必要な場合は、まず edit_video(operation="trim"、 openclip-video-editing を参照)でその時点に動画をトリミングし、その後、トリミングしたクリップからサムネイルを1つ 抽出します。

edit_image

edit_image(file, operation, ...params)。1回の呼び出しにつき操作は1つです。

  • compress - quality は1~100(デフォルトは80)。format(jpg、png、webp)も省略可能です。
  • resize - 幅と高さをピクセル単位で指定します。format も省略可能です。
  • crop - aspect("1:1"、"9:16"、"16:9"、"4:5")または明示的な x、y、 width、height を指定します。format も省略可能です。

画像を Web ページで使う場合は webp を、あらゆる環境で使える必要がある場合は jpg を使用します。

ポーリング

どちらのツールも status: "queued" の tool_job hashid を返します。5~10秒ごとに get_tool_job_status(tool_job) をポーリングします。

  • queued / processing - 処理中です。ポーリングを続けてください。
  • completed - 永続的な CDN outputs URL と result_meta を返します。
  • failed - error を返します。

ルール

  • 必ずポーリングしてください。どちらのツールも非同期です。
  • edit_image は1回の呼び出しにつき1つの操作を行います。サイズ変更後に圧縮するには、順番に2回呼び出してください。
  • extract_thumbnails は必ず zip を返します。個別のフレーム URL をユーザーに約束しないでください。
  • 出力 URL は永続的な CDN リンクであり、署名付きでも期限付きでもありません。
  • 無料利用には、1日あたりのレート制限とファイルごとのサイズ上限があります。

プロンプトからアクションへの例

  • 「この動画からサムネイルを取得して」- create_upload、バイトデータを PUT、 extract_thumbnails(video)、ポーリングし、zip URL を返します。
  • 「選べるように5フレームください」- extract_thumbnails(video, count=5) を実行し、ポーリングします。
  • 「1:30のフレームが欲しい」- edit_video(video, operation="trim", start_ms=90000, end_ms=91000) を実行し、 ポーリングした後、その出力に対して extract_thumbnails を実行し、ポーリングします。
  • 「この画像を正方形の webp にして」- edit_image(file, operation="crop", aspect="1:1", format="webp") を実行し、ポーリングします。
  • 「この PNG は大きすぎるので、小さくして」- edit_image(file, operation="compress", quality=75, format="webp") を実行し、ポーリングします。

関連項目

被写体を切り抜いて透過 PNG にするには openclip-remove-background を使います。動画のトリミングとクロップには openclip-video-editing を使います。

コメント