mcpField
O
openclip-transcription

openclip-transcription

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

openclip-transcription について

openclip-transcriptionは、動画や音声をタイムコード付きの文字起こしに変換するスキルです。検索可能なテキストや字幕ファイルが必要な人向けで、話者ラベルに対応し、JSON、SRT、VTTを出力します。

主な機能

  1. 01タイムコード付き文字起こし
  2. 02言語の自動検出または指定
  3. 03話者ラベルの付与
  4. 04JSON、SRT、VTTで出力
  5. 05非同期ジョブの状態確認

活用シーン

  1. 01インタビューを文字起こし
  2. 02動画のSRT字幕を出力
  3. 03会議録音の話者と発言を整理
  4. 04講演からタイムコード付き引用を選択

MCP 対応

OpenClipのリモートMCPサーバーにある文字起こしとジョブ状態確認のツールを利用します。

インストール

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

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

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

詳細

OpenClip:文字起こし

transcribe は動画または音声ファイルをタイムコード付きの文字起こしに変換します。無料で利用でき、OpenClip アカウントは必要ですが、サブスクリプションやクレジットは不要です。出力形式は JSON(タイミング情報を含む構造化形式)、SRT、VTT です。

セットアップ(初回のみ)

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 を返します。生のバイト列を upload_url に PUT し、その後 id を video として渡します。 complete_upload は呼び出さないでください。 これは有料のクリッピングパイプラインを開始します。無料ツールはアップロードされたファイルを直接読み取ります。list_videos にすでに表示されている動画も入力として使用できます。
  2. 文字起こし。 transcribe(video, language?, diarize?) を実行します。
    • language - 省略すると自動検出されます。言語がすでにわかっていて、短いクリップやノイズの多いクリップで誤検出を防ぎたい場合は設定してください。
    • diarize - デフォルトは true で、話者を識別します。話者が1人だけの音声では、出力をすっきりさせるためにオフにしてください。
  3. 状態を確認。 tool_job のハッシュ ID が返されます。5~10秒ごとに get_tool_job_status(tool_job) を呼び出して状態を確認します。queued / processing は処理中、completed は永続的な CDN の outputs URL(形式ごとに1つ:json、srt、vtt)を返し、failed は error を返します。ほとんどのジョブは1~2分以内に完了します。
  4. 出力を読み取る。 プログラムで処理する場合は JSON 出力(開始時刻と終了時刻、話者ラベルを含むセグメント)を取得します。字幕ファイルを求められた場合は、SRT または VTT の URL をユーザーに渡します。

2種類の異なる文字起こしツール

混同しないでください。

  • transcribe - 無料のツールです。アップロードしたあらゆるファイルで動作します。このスキルで使用します。
  • get_transcript - 有料のクリッピングパイプラインをすでに通過した動画の文字起こしを読み取ります。文または単語単位で start_ms / end_ms のウィンドウを指定できます。すでにクリッピングの job_id がある場合に使用し、新たにアップロードしたファイルには使用しません。

ルール

  • 必ず状態を確認してください。文字起こしは非同期で、テキストが同期的に返されることはありません。
  • 時刻の単位はミリ秒です。
  • 出力 URL は永続的な CDN リンクであり、署名付きでも期限付きでもありません。
  • 無料利用には1日あたりのレート制限と、ファイルごとのサイズ上限があります。制限の解除方法はエラーテキストに記載されています。

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

  • 「このインタビューを文字起こしして」 - create_upload を実行し、バイト列を PUT してから transcribe(video) を実行し、状態を確認して文字起こしを返します。
  • 「この動画の SRT が必要です」 - 同じ手順を実行し、srt の出力 URL を渡します。
  • 「この会議の録音で誰が何を言った?」 - transcribe(video, diarize=true) を実行し、状態を確認して JSON 出力を読み取り、話者ごとにセグメントをまとめます。
  • 「この講演から良い引用を抜き出して」 - 文字起こしを実行し、状態を確認して JSON を読み取り、タイムコード付きの引用を選びます。
  • 「オランダ語です。文字起こししてください」 - transcribe(video, language="nl") を実行し、状態を確認します。

関連項目

タイムコードに沿って動画をカットするには、openclip-video-editing(operation="trim" を指定した edit_video)を参照してください。自動でカットする価値のある場面を見つけるには、openclip-clipping を参照してください。

コメント