Insta Edits for Claude について
Insta Edits for Claude は、Claude Code を Edits for Mac のローカル自動化サーバーにつなぐブリッジです。アプリがホーム画面から動画エディターに切り替わる際にツール一覧を同期し、応答形式の互換性とトークンの保管にも対応します。
主な機能
- 01変化する編集ツール一覧の同期
- 02stdio MCP とローカル HTTP の接続
- 03一部ツール応答の正規化
- 04ログへのトークン出力防止
- 05接続診断機能
活用シーン
- 01Claude Code で Edits for Mac のリールを編集
- 02プロジェクトを開いて編集ツールを利用
- 03アプリ、トークン、接続の問題を診断
MCP 対応
stdio MCP サーバーとして、MCP クライアントと Edits for Mac のローカル HTTP 自動化サーバー間でリクエストを中継します。ツール構成の変化を検出してクライアントに通知し、エディターの全ツールを利用可能にします。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Claude 用 Insta Edits
ホーム画面だけでなく、完全なエディターで Claude Code に Mac 版 Instagram Edits を編集させましょう。
1つのプロンプト、実際の Claude Code セッション。スクリプトは一切ありません。Edits がビートを検出できなかったため、Claude が自ら音楽を分析し(122 BPM)、すべてのクリップをビートに合わせてカットし、自分でフレームを確認して動画を書き出しました。音声付きで再生。
Meta が2026年11月5日にリリースした Mac 版 Edits には、MCP に対応した自動化サーバーが組み込まれています。Meta の言葉を借りれば、AI エージェントを「MCP 経由でデスクトップエディターに接続し、プロジェクトを支援してもらう」ことができます。Claude Code を直接接続できますが、利用できる機能は一部に限られます。
Edits が提供するツールは画面によって変わります。ホーム画面では、プロジェクト、インポート、カタログ用の32個のツールを利用できます。プロジェクトを開くと、テキスト、キャプション、エフェクト、トランジション、キーフレーム、オーディオ、書き出し用の274個のツールが利用可能になります。Edits は変更を通知するとしています(tools.listChanged: true)が、その通知を送信しません。そのため Claude はセッション中ずっとホーム画面の32個のツールを使い続け、エディターを認識できません。
このブリッジは、その間に入ります。ツールを呼び出すたびに Edits に現在提供されているツールを確認します。ツールのセットが変わっていれば Claude に知らせ、Claude が一覧を更新します。また、一部の Claude Code ビルドで拒否される応答形式を修正し、読みやすいエラーを表示して、トークンが設定ファイルに保存されないようにします。
Claude Code ──stdio──▶ insta-edits ──HTTP──▶ Edits for Mac (127.0.0.1:19501)
◀── tools/list_changed ──┘ checks the tool set after each call
対応環境: ターミナル内および Claude デスクトップアプリの Code タブ内の Claude Code。標準的な stdio MCP サーバーなので、他の MCP クライアント(Claude デスクトップチャット、Cursor、Codex)でも insta-edits serve を実行できます。ただし、テスト済みなのは Claude Code のみです。
得られるもの
- エディターの全機能。 Edits がホーム(32 個のツール)とエディター(274 個のツール)の間で切り替わると、Claude はすぐに
notifications/tools/list_changedを受け取ります。ブリッジがなければ、この通知は届きません。 - あらゆる Claude Code ビルドで受け入れられる応答。 Edits は各結果に
"resultType": "complete"を付けますが、新しい MCP スキーマでこれと組み合わせられるキャッシュフィールドは付けません。そのため、一部の Claude Code ビルドではすべてのツールが除外され、「Invalid result for tools/list: ttlMs … cacheScope」というエラーが発生します。ブリッジは、これらのフィールドが欠けている場合に限り、このマーカーを削除します。 - トークンは非公開のままです。 プラグインはトークンを macOS キーチェーンに保存します。CLI は
0600のファイルに保存します。トークンが~/.claude.json、ログ、エラーメッセージに表示されることはありません。 - 起動する順番は自由です。 Edits がまだ開いていなくても、ブリッジは接続してツールがないことを報告し、その後 Edits から応答があった時点で Claude に知らせます。これにより、再起動せずにエディターが表示されます。
- 対処方法がわかるエラー。 スタックトレースの代わりに「Edits に接続できません。アプリを開き、Automation Server を有効にしてください」と表示されます。トークンが拒否された場合は、更新方法も示されます。
doctorはアプリからサインインまでのすべての接続を確認し、--jsonを指定すると、バグ報告に添付できるレポートを出力します。editsスキルを使うと、Claude はサーバーの動作を把握できます。推測する前に情報を確認し、正規化されたキャンバス座標を使い、レンダリングされたフレームを確認します。また、明示的な許可なく公開することは決してありません。- Python 標準ライブラリのみ。 プラグインのインストールに
pip installは不要で、macOS に付属するpython3で動作します。
必要条件
- Apple シリコン(M1 以降)を搭載した Mac と、無料で利用でき、Instagram にサインイン済みの Edits for Mac
- Claude Code
python33.9 以降。macOS からコマンドラインツールを求められた場合は、xcode-select --installを実行してください。
インストール
始める前に: Edits for Mac を開いてサインインし、Claude Code をインストールしておいてください。セットアップには約 2 分かかります。
1. Edits で自動化サーバーを有効にする
Edits › Settings › Automation に移動し、Enable Automation Server をオンにして、Access token をコピーします。Claude が作業している間は Edits を開いたままにしてください。
2a. Claude Code プラグインとしてインストールする(推奨)
ターミナルで claude を起動し、次の 2 つのコマンドを 1 つずつ実行します。
/plugin marketplace add faisalkhanzemi/insta-edits-for-claude
/plugin install insta-edits@insta-edits
Claude Code がマスクされたプロンプトでアクセストークンを尋ね、キーチェーンに保存します。Claude Code を再起動してから /mcp を実行すると、edits が接続済みとして表示されます。このプラグインは edits スキルもインストールします。
代わりに、頼むだけにしますか? 次の内容を通常のメッセージとして Claude Code に貼り付けてください。
github.com/faisalkhanzemi/insta-edits-for-claude から Insta Edits プラグインをインストールしてください
Claude はターミナルから同じ 2 つのインストール手順を実行します。この方法ではマスクされたトークン入力プロンプトを表示できないため、最後に /plugin configure insta-edits@insta-edits を実行して、チャットではなくそこにトークンを貼り付けてください。
シェルスクリプトからインストールする場合、または Claude デスクトップアプリを使う場合
シェルコマンドは同じ処理を行いますが、トークンの入力を求めません。そのため、Claude Code 内で /plugin configure insta-edits@insta-edits を実行して、後からトークンを設定してください。
claude plugin marketplace add faisalkhanzemi/insta-edits-for-claude
claude plugin install insta-edits@insta-edits
この方法でユーザースコープにインストールしたプラグインは、同じ設定を読み込む Claude デスクトップアプリの「Code」タブにも表示されます。
2b. スタンドアロンの MCP サーバーとしてインストールする
pipx install insta-edits
insta-edits set-token
claude mcp add --scope user edits -- insta-edits serve
set-token は非表示のプロンプトでトークンの入力を求め、0600 のアクセス権限を設定して ~/.config/insta-edits/token に保存します。トークンそのものを claude mcp add の行に記述しないでください。トークンが平文で ~/.claude.json とシェルの履歴に残ってしまいます。
接続を確認する
insta-edits doctor
insta-edits 0.1.1 doctor
✓ macOS 27.0.1
✓ Edits app installed /Applications/Edits.app
✓ Automation server answering at http://127.0.0.1:19501/mcp (HTTP 403 without a token, as expected)
✓ Access token from ~/.config/insta-edits/token
✓ Sign-in metapilot-native 1.0.0, protocol 2025-06-18
✓ Tools 32 on the current screen (home screen; Edits offers more once a project is open)
✓ Reply format normalised for older Claude Code builds (resultType without caching fields)
✓ Edits automation schema 2026.10.19-1
✓ Tool-change notifications Edits announces them but never sends any; the bridge checks after each call and tells Claude
All good. Claude can drive Edits.
各 ✗ 行に、問題の修正方法が示されます。doctor を使いたいプラグインユーザーは、2b の手順で CLI をインストールできます。プラグインのトークンはキーチェーンに保存されるため、set-token を使わない場合、doctor の確認はサインインの手順で止まります。
更新またはアンインストール
プラグイン:
claude plugin marketplace update insta-edits && claude plugin update insta-edits@insta-edits
claude plugin uninstall insta-edits@insta-edits && claude plugin marketplace remove insta-edits
スタンドアロンサーバー:更新するには pipx upgrade insta-edits を実行します。削除するには claude mcp remove edits、pipx uninstall insta-edits、rm -r ~/.config/insta-edits を実行します。Editsで自動化サーバーをいつでもオフにして、接続を切断することもできます。
使い方
普段の言葉で編集を依頼します。
最新のEditsプロジェクトを開いて、タイムラインの内容を教えてください。
~/Movies/broll/を新しいプロジェクトに読み込み、ナレーションのビートに合わせてカットし、すっきりしたサンセリフ体で単語ごとのキャプションを追加してください。
商品のクローズアップごとに柔らかなズームを追加し、カットごとに効果音を加えてから、フレームを確認できるようにプレビューをレンダリングしてください。
Claudeがプロジェクトを開くと、エディターツールが表示され、それらを使って作業します。投稿はしません。特定の動画を共有するようClaudeにはっきり指示しない限り、公開はEditsのウィンドウ内で行われます。
仕組み
| 手順 | 動作 |
|---|---|
| セッション | ブリッジは initialize を転送し、Editsの Mcp-Session-Id を保持して、すべてのリクエストに MCP-Protocol-Version を送信します。 |
| 返信 | JSONと text/event-stream の返信およびバッチリクエストを受け付け、キャッシュフィールドが欠落している場合に限り resultType を正規化します。 |
| ツールの同期 | 各 tools/call の後、Claudeには見えないIDを使って、Editsに独自の tools/list を送信し、ツール名を比較します。変更があれば、Claudeに notifications/tools/list_changed を書き込みます。serve --no-sync で無効にできます。 |
| 通知 | 将来のEditsビルドでサーバーからクライアントへのストリームが開かれるようになった場合、ブリッジはそれをリッスンして受信内容を転送します。現時点でEditsは対応するストリームを提供していないため、最初に拒否された時点で再試行を停止します。serve --no-stream で無効にできます。 |
| Editsが終了している場合 | ブリッジは initialize に独自に応答し、ツールがないことを報告して、5秒ごとにEditsへの再接続を試みます(INSTA_EDITS_OFFLINE_POLL)。Editsが応答すると、セッションを開始して notifications/tools/list_changed を送信します。 |
| エラー | Editsが終了しているときにツール呼び出しを行うと、JSON-RPC -32001 が返されます。EditsからHTTPエラーが返されると、-32002 が返されます。どちらにも1行の修正方法が含まれます。 |
設定は環境変数から取得されます:EDITS_MCP_URL(デフォルトは http://127.0.0.1:19501/mcp)、EDITS_MCP_TOKEN、EDITS_MCP_TOKEN_FILE。ログは標準エラー出力に書き込まれます。
テスト環境
| バージョン | |
|---|---|
| Edits for Mac | 454.0.0(サーバー metapilot-native 1.0.0、自動化スキーマ 2026.10.19-1) |
| Claude Code | 2.1.296 |
| macOS | 27.0.1 |
| Python | 3.9.6(システム)、CIでは3.11、3.13 |
Editsは頻繁に更新され、自動化サーバーの仕様は公開されていません。新しいビルドで問題が発生した場合は、insta-edits doctor --json を実行して、出力とともにissueを登録してください。出力にトークンは含まれません。
トラブルシューティング
| 症状 | 対処方法 |
|---|---|
Cannot reach Edits | Edits を開き、「Settings › Automation › Enable Automation Server」をオンにします。 |
| HTTP 401 または 403 | Edits のトークンが変更されています。/plugin で更新するか、insta-edits set-token を実行します。 |
| プロジェクトを開いているのにホーム用ツールしか表示されない | /mcp の edits がブリッジを指しており、127.0.0.1:19501 に直接接続していないことを確認します。また、--no-sync を指定して起動していないことも確認してください。 |
インポート時に file not found: ~/… が表示される | Edits は ~ を展開しません。/Users/you/Movies/clip.mp4 のように、フルパスを指定してください。 |
インポート時に Sandbox bookmark unavailable が表示される | Edits はサンドボックス化されています。テストでは、~/Movies からはインポートできましたが、~/Downloads、~/Desktop、一時フォルダー、プロジェクトフォルダーからは拒否されました。動画素材を ~/Movies に移動し、そこからインポートしてください。 |
| 曲が流れるはずの箇所で、エクスポートした動画が無音になる | Edits のミュージックライブラリの曲はライセンス付きトラックとして取り込まれ、自動化から開始したエクスポートには含まれません。すべてのテストで音楽は無音になりましたが、独自のオーディオファイルは問題なくエクスポートできました。ライブラリの曲を使う場合は、Edits のウィンドウからエクスポートまたは投稿してください。 |
addSongToComposition で別の曲が追加される | トラック ID を渡すと、別のトラックが追加されることがありました。テストでは、正確なタイトルを渡すと正しい曲が追加されました。 |
セキュリティ
- ブリッジは、設定した URL(デフォルトは
127.0.0.1)にのみ接続します。それ以外の場所にデータを送信することはなく、テレメトリもありません。 - トークンは、すべてのログ行、エラーメッセージ、
reprでマスキングされます。doctor --jsonでは、トークンの取得元は報告されますが、値は報告されません。 - Edits は Instagram アカウントにサインインしています。同梱のスキルでは、特定の投稿について明示的な許可を得るまで、公開、共有、予約投稿を行わないよう Claude に指示しています。
- 脆弱性は、SECURITY.md の説明に従って、非公開で報告してください。
よくある質問
Claude を Instagram Edits に接続するにはどうすればよいですか? Mac 用 Edits をインストールし、「Settings › Automation › Enable Automation Server」をオンにして、インストール方法にある 2 行の /plugin コマンドでこのプラグインを追加します。これで Claude はプロジェクトを開いて編集できるようになります。
Claude は Instagram リールを編集できますか? はい。Mac 用 Edits 内で編集できます。クリップのインポート、ビートに合わせたカット、キャプション、テキスト、トランジション、ズーム、速度ランプの追加、レンダリング済みフレームの確認、エクスポートが可能です。リールの投稿は Edits からご自身で行ってください。
ブラウザー版 claude.ai で動作しますか? いいえ。Edits は Mac 上で動作し、ローカルでのみ接続を待ち受けるため、Claude Code(または別の MCP クライアント)が同じ Mac 上で動作している必要があります。
これは公式のものですか? いいえ。Meta、Instagram、Anthropic とは提携も推奨関係もない、独立したオープンソースプロジェクトです。「Instagram」と「Edits」は Meta Platforms, Inc. の商標です。
Windows または Edits のスマートフォンアプリで動作しますか? いいえ。デスクトップ版 Edits は macOS でのみ利用可能で、自動化サーバーも macOS にのみ存在します。
Claude Code のビルドが Edits の応答を受け付ける場合でも、これは必要ですか? はい。エディターのツールを利用するには必要です。Edits はツールが変更されたことを通知しないため、問い合わせずに変更を把握できるクライアントはありません。
Claude は私の代わりに Instagram に投稿できますか? ブリッジは Claude による Edits の共有ツールの呼び出しを阻止しませんが、同梱のスキルでは、明示的な許可を得るまで待つよう指示しています。安全のため、Edits のウィンドウから投稿することをおすすめします。
開発
git clone https://github.com/faisalkhanzemi/insta-edits-for-claude && cd insta-edits-for-claude
python3 -m venv .venv && . .venv/bin/activate
pip install -e . pytest ruff
pytest && ruff check . && ruff format --check .
テストは tests/fake_edits.py に対して実行されます。これは実際のサーバーの代わりとなるもので、通知を送信せず、プロジェクトを開くとツールセットが変わり、resultType を含む応答を返します。テストの実行に Mac や Edits は必要ありません。CONTRIBUTING.md を参照してください。
クレジット
デモ映像: Pexels のストッククリップ(Pexels License)。音楽:「Tech House vibes」(Alejandro Magaña 作)、Mixkit(Mixkit License)。
License
MIT © Faisal Khan
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。
