instagram-automation について
Composio の Instagram ツールキットと Rube MCP を通じて Instagram アカウント操作を自動化するスキルです。接続済みの Business または Creator アカウントで、投稿、メディアやインサイトの取得、コメント確認、公開上限の確認を行えます。
主な機能
- 01画像・動画の単独投稿
- 02カルーセル投稿の作成
- 03メディアとインサイトの取得
- 04コメントとカルーセル項目の確認
- 05公開上限の確認
- 06Rube 接続とツールスキーマの確認
活用シーン
- 01承認済み Instagram 投稿の公開
- 02複数項目のカルーセル投稿作成
- 03メディアのパフォーマンス分析
- 04コメントと公開可能数の確認
MCP 対応
Rube MCP 経由で Composio の Instagram ツールキットにアクセスします。クライアントで Rube MCP を接続し、Instagram Business または Creator アカウントを認可してから、ワークフロー前に最新のツールスキーマを確認します。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ sickn33/ agentic-awesome-skills --skill instagram-automationインストール後、Claude Code で/instagram-automationを入力して読み込まれたか確認します。
詳細
Rube MCP による Instagram の自動化
Rube MCP を通じて Composio の Instagram ツールキットを利用し、Instagram の操作を自動化します。
前提条件
- Rube MCP が接続されている必要があります(
RUBE_SEARCH_TOOLSが利用可能) RUBE_MANAGE_CONNECTIONSを通じてinstagramツールキットへの有効な Instagram 接続があること- 最新のツールスキーマを取得するため、必ず最初に
RUBE_SEARCH_TOOLSを呼び出してください - Instagram のビジネスアカウントまたはクリエイターアカウントが必要です(個人アカウントはサポートされていません)
セットアップ
Rube MCP の取得:クライアント設定で https://rube.app/mcp を MCP サーバーとして追加します。MCP エンドポイントを利用するには、インストール済みの Rube サービスから返されるプロバイダー接続と認可フローが引き続き必要です。URL を追加するだけでは、アカウントへのアクセス権は付与されません。
RUBE_SEARCH_TOOLSが応答することを確認し、Rube MCP が利用可能であることを確認します- ツールキット
instagramを指定してRUBE_MANAGE_CONNECTIONSを呼び出します - 接続が ACTIVE でない場合は、返された認証リンクに従って Instagram/Facebook OAuth を完了します
- ワークフローを実行する前に、接続ステータスが ACTIVE であることを確認します
主なワークフロー
1. 画像または動画を1件投稿する
使用する場面:Instagram に写真または動画を1件投稿したい場合
ツールの呼び出し順序:
INSTAGRAM_GET_USER_INFO- Instagram ユーザー ID を取得します[前提条件]INSTAGRAM_CREATE_MEDIA_CONTAINER- 画像または動画の URL を指定してメディアコンテナを作成します[必須]INSTAGRAM_GET_POST_STATUS- メディアコンテナの準備ができているか確認します[任意]INSTAGRAM_CREATE_POSTまたはINSTAGRAM_POST_IG_USER_MEDIA_PUBLISH- コンテナを公開します[必須]
主なパラメーター:
image_url:投稿する画像の公開 URLvideo_url:投稿する動画の公開 URLcaption:投稿のキャプションテキストig_user_id:Instagram ビジネスアカウントのユーザー ID
注意点:
- メディア URL は一般に公開されている必要があります。非公開または認証が必要な URL では失敗します
- 動画コンテナの処理には時間がかかる場合があります。公開する前に GET_POST_STATUS をポーリングしてください
- キャプションではハッシュタグとメンションを使用できますが、文字数の上限は2200文字です
- 処理が完了していないコンテナを公開するとエラーが返されます
2. カルーセル投稿を作成する
使用する場面:複数の画像や動画を1件のカルーセル投稿として公開したい場合
ツールの呼び出し順序:
INSTAGRAM_CREATE_MEDIA_CONTAINER- 各メディア項目のコンテナを個別に作成します[必須、項目ごとに繰り返し]INSTAGRAM_CREATE_CAROUSEL_CONTAINER- すべてのメディアコンテナを参照するカルーセルコンテナを作成します[必須]INSTAGRAM_GET_POST_STATUS- カルーセルコンテナの準備状況を確認します[任意]INSTAGRAM_POST_IG_USER_MEDIA_PUBLISH- カルーセルを公開します[必須]
主なパラメーター:
children:カルーセルに含めるメディアコンテナ ID の配列caption:カルーセル投稿のキャプションig_user_id:Instagram ビジネスアカウントのユーザー ID
注意点:
- カルーセルには2〜10件のメディア項目が必要です。それより少ない場合や多い場合は失敗します
- カルーセルコンテナを作成する前に、各子コンテナを個別に作成する必要があります
- カルーセルを作成する前に、すべての子コンテナの処理が完了している必要があります
- カルーセルでは画像と動画を混在させることができます
3. メディアとインサイトを取得する
使用する場面:投稿を閲覧したり、投稿のパフォーマンスを分析したりしたい場合
ツールの呼び出し順序:
INSTAGRAM_GET_IG_USER_MEDIAまたはINSTAGRAM_GET_USER_MEDIA- ユーザーのメディア一覧を取得します[必須]INSTAGRAM_GET_IG_MEDIA- 特定の投稿の詳細を取得します[任意]INSTAGRAM_GET_POST_INSIGHTSまたはINSTAGRAM_GET_IG_MEDIA_INSIGHTS- 投稿の指標を取得します[任意]INSTAGRAM_GET_USER_INSIGHTS- アカウントレベルのインサイトを取得します[任意]
主なパラメーター:
ig_user_id:Instagram ビジネスアカウントのユーザー IDmedia_id:特定のメディア投稿の IDmetric:取得する指標(例:インプレッション、リーチ、エンゲージメント)period:インサイトの対象期間(例:日、週、全期間)
注意点:
- インサイトを利用できるのはビジネスアカウントまたはクリエイターアカウントのみです
- 一部の指標を利用するには、最低フォロワー数の要件を満たす必要があります
- インサイトデータには最大48時間の遅延が生じる場合があります
periodパラメーターは指標の種類に対応している必要があります
4. 公開制限を確認する
使用する場面:投稿を試みる前に、公開できるか確認したい場合
ツールの順序:
INSTAGRAM_GET_IG_USER_CONTENT_PUBLISHING_LIMIT- 残りの公開枠を確認します[必須]
主なパラメーター:
ig_user_id:Instagram ビジネスアカウントのユーザー ID
注意点:
- Instagram では、24 時間の移動期間内に公開できる投稿数が 25 件に制限されています
- 公開制限は毎日午前 0 時にリセットされるのではなく、移動期間に基づいてリセットされます
- 失敗を避けるため、一括投稿の前に制限を確認してください
5. メディアのコメントと子メディアを取得する
使用する場面:投稿へのコメントや、カルーセルの子メディアを確認したい場合
ツールの順序:
INSTAGRAM_GET_IG_MEDIA_COMMENTS- メディア投稿へのコメント一覧を取得します[必須]INSTAGRAM_GET_IG_MEDIA_CHILDREN- カルーセル投稿の子メディア一覧を取得します[任意]
主なパラメーター:
media_id:メディア投稿の IDig_media_id:代替のメディア ID パラメーター
注意点:
- コメントはページ分割されることがあります。すべての結果を取得するには、ページネーションカーソルをたどってください
- カルーセルの子メディアは、個別のメディアオブジェクトとして返されます
- アカウントのコメントモデレーション設定によって、返される内容が変わります
よくあるパターン
ID の解決
Instagram ユーザー ID:
1. Call INSTAGRAM_GET_USER_INFO
2. Extract ig_user_id from response
3. Use in all subsequent API calls
メディアコンテナのステータス確認:
1. Call INSTAGRAM_CREATE_MEDIA_CONTAINER
2. Extract container_id from response
3. Poll INSTAGRAM_GET_POST_STATUS with container_id
4. Wait until status is 'FINISHED' before publishing
2 段階での公開
- フェーズ 1:コンテンツ URL を指定してメディアコンテナを作成します
- フェーズ 2:処理が完了したらコンテナを公開します
- 動画コンテンツの場合は、各フェーズの間に必ずコンテナのステータスを確認してください
- カルーセルの場合は、カルーセルコンテナを作成する前に、すべての子メディアについてフェーズ 1 を完了する必要があります
既知の注意点
メディア URL:
- すべての画像・動画 URL は、HTTPS を使用し、一般公開されている必要があります
- 認証が必要な URL、CDN の制限がある URL、Cookie を必要とする URL では失敗します
- 一時 URL(S3 の署名付き URL など)は、処理が完了する前に有効期限が切れることがあります
レート制限:
- 24 時間の移動期間内に 25 件の投稿
- API のレート制限は、公開制限とは別に適用されます
- 429 レスポンスに対して、指数バックオフを実装してください
アカウント要件:
- 対応しているのは Instagram のビジネスアカウントまたはクリエイターアカウントのみです
- 個人アカウントでは Instagram Graph API を使用できません
- アカウントを Facebook ページに接続する必要があります
レスポンスの解析:
- メディア ID は数値文字列です
- インサイトデータは、レスポンス内の異なるキーの下にネストされている場合があります
- ページネーションにはカーソルベースのトークンを使用します
クイックリファレンス
| タスク | ツールスラッグ | 主なパラメーター |
|---|---|---|
| ユーザー情報を取得 | INSTAGRAM_GET_USER_INFO | (なし) |
| メディアコンテナを作成 | INSTAGRAM_CREATE_MEDIA_CONTAINER | image_url/video_url, caption |
| カルーセルを作成 | INSTAGRAM_CREATE_CAROUSEL_CONTAINER | children, caption |
| 投稿を公開 | INSTAGRAM_CREATE_POST | ig_user_id, creation_id |
| メディアを公開 | INSTAGRAM_POST_IG_USER_MEDIA_PUBLISH | ig_user_id, creation_id |
| 投稿のステータスを確認 | INSTAGRAM_GET_POST_STATUS | ig_container_id |
| ユーザーメディア一覧を取得 | INSTAGRAM_GET_IG_USER_MEDIA | ig_user_id |
| メディアの詳細を取得 | INSTAGRAM_GET_IG_MEDIA | ig_media_id |
| 投稿のインサイトを取得 | INSTAGRAM_GET_POST_INSIGHTS | media_id, metric |
| ユーザーのインサイトを取得 | INSTAGRAM_GET_USER_INSIGHTS | ig_user_id, metric, period |
| 公開制限を取得 | INSTAGRAM_GET_IG_USER_CONTENT_PUBLISHING_LIMIT | ig_user_id |
| メディアのコメントを取得 | INSTAGRAM_GET_IG_MEDIA_COMMENTS | ig_media_id |
| カルーセルの子メディアを取得 | INSTAGRAM_GET_IG_MEDIA_CHILDREN | ig_media_id |
使用する場面
このスキルは、概要で説明されているワークフローまたはアクションを実行する際に使用できます。
制限事項
- タスクが上記の説明の範囲に明確に当てはまる場合にのみ、このスキルを使用してください。
- 出力を、環境固有の検証、テスト、専門家によるレビューの代わりとして扱わないでください。
- 必要な入力、権限、安全上の境界、または成功基準が不足している場合は、作業を中止して確認を求めてください。
書き込みを行う前に、接続済みのアカウント、承認済みのメディア、キャプション、公開または予約投稿の時刻を正確に確認してください。アカウントの利用資格と公開の上限は、現在の API/ログイン方式によって異なります。過去の固定上限を使わず、現在のスキーマと制限を確認してください。アカウント要件を回避したり、非公開データを再投稿したりしないでください。再試行する前に、コンテナと公開処理の結果を照合してください。