mcpField
I
instagram-automation

instagram-automation

github.com/davepoonマーケティング・グロース3.7k152 回インストール今日更新
リポジトリ

instagram-automation について

Instagram Business または Creator アカウント向けの自動化スキルです。Rube MCP と Composio のツールキットを使い、単一画像、動画、カルーセルの投稿や分析データの確認を行います。

主な機能

  1. 01画像・動画投稿の公開
  2. 02複数メディアのカルーセル作成
  3. 03メディアとアカウント分析の確認
  4. 04投稿上限の確認
  5. 05コメントとカルーセル項目の取得

活用シーン

  1. 01Instagram の画像や動画を公開
  2. 02複数メディアをカルーセル投稿
  3. 03リーチやエンゲージメント指標の確認
  4. 04投稿へのコメント確認

MCP 対応

Rube MCP 経由で Composio の Instagram ツールキットを呼び出します。Instagram Business または Creator アカウントを接続し、事前に最新のツールスキーマを取得します。

インストール

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

$npx skills add https://github.com/davepoon/buildwithclaude --skill instagram-automation

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

詳細

Rube MCP による Instagram の自動化

Rube MCP を介して Composio の Instagram ツールキットを使用し、Instagram の操作を自動化します。

ツールキットのドキュメント:composio.dev/toolkits/instagram

前提条件

  • Rube MCP に接続されている必要があります(RUBE_SEARCH_TOOLS が利用可能)
  • instagram ツールキットを指定して RUBE_MANAGE_CONNECTIONS からアクティブな Instagram 接続を確立している必要があります
  • 現在のツールスキーマを取得するため、必ず最初に RUBE_SEARCH_TOOLS を呼び出してください
  • Instagram のビジネスアカウントまたはクリエイターアカウントが必要です(個人アカウントはサポートされていません)

セットアップ

Rube MCP の入手:クライアントの設定で https://rube.app/mcp を MCP サーバーとして追加します。API キーは不要です。エンドポイントを追加するだけで利用できます。

  1. RUBE_SEARCH_TOOLS が応答することを確認し、Rube MCP が利用可能であることを検証します
  2. ツールキット instagram を指定して RUBE_MANAGE_CONNECTIONS を呼び出します
  3. 接続が ACTIVE でない場合は、返された認証リンクにアクセスし、Instagram/Facebook OAuth を完了します
  4. ワークフローを実行する前に、接続ステータスが ACTIVE であることを確認します

主なワークフロー

1. 画像または動画を1件投稿する

使用する場面:ユーザーが Instagram に写真または動画を1件投稿したい場合

ツールの実行順序:

  1. INSTAGRAM_GET_USER_INFO - Instagram のユーザー ID を取得します[前提条件]
  2. INSTAGRAM_CREATE_MEDIA_CONTAINER - 画像または動画の URL を指定してメディアコンテナを作成します[必須]
  3. INSTAGRAM_GET_POST_STATUS - メディアコンテナの準備が完了しているか確認します[任意]
  4. INSTAGRAM_CREATE_POST または INSTAGRAM_POST_IG_USER_MEDIA_PUBLISH - コンテナを公開します[必須]

主なパラメーター:

  • image_url:投稿する画像の公開 URL
  • video_url:投稿する動画の公開 URL
  • caption:投稿のキャプションテキスト
  • ig_user_id:Instagram ビジネスアカウントのユーザー ID

注意点:

  • メディア URL は誰でもアクセスできる必要があります。非公開 URL や認証が必要な URL は失敗します
  • 動画コンテナの処理には時間がかかることがあります。公開する前に GET_POST_STATUS をポーリングしてください
  • キャプションではハッシュタグとメンションを使用できますが、文字数は2200文字までです
  • 処理が完了していないコンテナを公開すると、エラーが返されます
2. カルーセル投稿を作成する

使用する場面:ユーザーが複数の画像や動画を1件のカルーセル投稿として公開したい場合

ツールの実行順序:

  1. INSTAGRAM_CREATE_MEDIA_CONTAINER - 各メディアアイテムのコンテナを作成します[必須、アイテムごとに繰り返し]
  2. INSTAGRAM_CREATE_CAROUSEL_CONTAINER - すべてのメディアコンテナを参照するカルーセルコンテナを作成します[必須]
  3. INSTAGRAM_GET_POST_STATUS - カルーセルコンテナの準備状況を確認します[任意]
  4. INSTAGRAM_POST_IG_USER_MEDIA_PUBLISH - カルーセルを公開します[必須]

主なパラメーター:

  • children:カルーセルに含めるメディアコンテナ ID の配列
  • caption:カルーセル投稿のキャプション
  • ig_user_id:Instagram ビジネスアカウントのユーザー ID

注意点:

  • カルーセルには2~10件のメディアアイテムが必要です。それより少なくても多くても失敗します
  • カルーセルコンテナを作成する前に、各子コンテナを個別に作成する必要があります
  • カルーセルを作成する前に、すべての子コンテナの処理が完了している必要があります
  • カルーセルでは、画像と動画を混在させることができます
3. メディアとインサイトを取得する

使用する場面:ユーザーが自分の投稿を確認したい場合、または投稿のパフォーマンスを分析したい場合

ツールの実行順序:

  1. INSTAGRAM_GET_IG_USER_MEDIA または INSTAGRAM_GET_USER_MEDIA - ユーザーのメディア一覧を取得します[必須]
  2. INSTAGRAM_GET_IG_MEDIA - 特定の投稿の詳細を取得します[任意]
  3. INSTAGRAM_GET_POST_INSIGHTS または INSTAGRAM_GET_IG_MEDIA_INSIGHTS - 投稿の指標を取得します[任意]
  4. INSTAGRAM_GET_USER_INSIGHTS - アカウントレベルのインサイトを取得します[任意]

主なパラメーター:

  • ig_user_id:Instagram ビジネスアカウントのユーザー ID
  • media_id:特定のメディア投稿の ID
  • metric:取得する指標(例:インプレッション、リーチ、エンゲージメント)
  • period:インサイトの期間(例:日、週、全期間)

注意点:

  • インサイトを利用できるのは、ビジネスアカウントまたはクリエイターアカウントのみです
  • 一部の指標を取得するには、一定数以上のフォロワーが必要です
  • インサイトデータの反映には最大48時間かかる場合があります
  • period パラメーターは指標の種類に合致している必要があります
4. 公開上限を確認する

使用するタイミング:投稿を試みる前に公開できるかどうか確認したい場合

ツールの手順:

  1. INSTAGRAM_GET_IG_USER_CONTENT_PUBLISHING_LIMIT - 残りの公開枠を確認します[必須]

主なパラメーター:

  • ig_user_id:InstagramビジネスアカウントのユーザーID

注意点:

  • Instagramでは、ローリング方式の24時間あたり25件の投稿上限が適用されます
  • 公開上限は深夜ではなく、ローリング方式でリセットされます
  • 失敗を避けるため、一括投稿の前に上限を確認してください
5. メディアのコメントと子要素を取得する

使用するタイミング:投稿へのコメントやカルーセルの子要素を表示したい場合

ツールの手順:

  1. INSTAGRAM_GET_IG_MEDIA_COMMENTS - メディア投稿へのコメントを一覧表示します[必須]
  2. INSTAGRAM_GET_IG_MEDIA_CHILDREN - カルーセル投稿の子要素を一覧表示します[任意]

主なパラメーター:

  • media_id:メディア投稿のID
  • ig_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である必要があります
  • 認証が必要なURL、CDNの制限があるURL、またはCookieが必要なURLでは失敗します
  • 一時URL(事前署名済みのS3 URLなど)は、処理が完了する前に期限切れになる場合があります

レート制限:

  • ローリング方式の24時間あたり25件の投稿上限
  • APIのレート制限は公開上限とは別に適用されます
  • 429レスポンスには指数バックオフを実装してください

アカウント要件:

  • BusinessまたはCreatorのInstagramアカウントのみサポートされています
  • 個人アカウントではInstagram Graph APIを使用できません
  • アカウントはFacebookページに接続されている必要があります

レスポンスの解析:

  • メディアIDは数値文字列です
  • インサイトデータは、異なるレスポンスキーの下にネストされている場合があります
  • ページネーションではカーソルベースのトークンを使用します

クイックリファレンス

タスクツールスラッグ主なパラメーター
ユーザー情報を取得INSTAGRAM_GET_USER_INFO(なし)
メディアコンテナーを作成INSTAGRAM_CREATE_MEDIA_CONTAINERimage_url/video_url, caption
カルーセルを作成INSTAGRAM_CREATE_CAROUSEL_CONTAINERchildren, caption
投稿を公開INSTAGRAM_CREATE_POSTig_user_id, creation_id
メディアを公開INSTAGRAM_POST_IG_USER_MEDIA_PUBLISHig_user_id, creation_id
投稿ステータスを確認INSTAGRAM_GET_POST_STATUSig_container_id
ユーザーメディアを一覧表示INSTAGRAM_GET_IG_USER_MEDIAig_user_id
メディアの詳細を取得INSTAGRAM_GET_IG_MEDIAig_media_id
投稿のインサイトを取得INSTAGRAM_GET_POST_INSIGHTSmedia_id, metric
ユーザーのインサイトを取得INSTAGRAM_GET_USER_INSIGHTSig_user_id, metric, period
公開上限を取得INSTAGRAM_GET_IG_USER_CONTENT_PUBLISHING_LIMITig_user_id
メディアのコメントを取得INSTAGRAM_GET_IG_MEDIA_COMMENTSig_media_id
カルーセルの子要素を取得INSTAGRAM_GET_IG_MEDIA_CHILDRENig_media_id

Composio 提供

コメント