mcpField
I
instagram

instagram

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

instagram について

Instagram のプロフィールやメディアの読み取り、分析データのローカル保存、エクスポートに使うコミュニティ製 Python ツールキットです。明示的に許可されたアカウント操作向けで、公開やスケジュール実行は無効です。

主な機能

  1. 01Instagram プロフィールとメディアの読み取り
  2. 02SQLite でのローカル分析と保存
  3. 03CSV 形式でのデータ出力
  4. 04公開プレビューの表示
  5. 05メディアインサイト指標の取得

活用シーン

  1. 01許可済みアカウントのプロフィールとメディア確認
  2. 02投稿の分析と CSV 出力
  3. 03メディアインサイトデータの確認
  4. 04公開前の下書きプレビュー確認

インストール

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

$npx skills add https://github.com/sickn33/agentic-awesome-skills --skill instagram

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

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
account_types.md
publishing_guide.md
rate_limits.md
setup_walkthrough.md
permissions.md
graph_api.md
schema.md
scripts/
analyze.py
account_setup.py
comments.py
export.py
api_client.py
governance.py
auth.py
db.py
csv_utils.py
hashtags.py
config.py
insights.py
messages.py
media.py
profile.py
requirements.txt
run_all.py
serve_api.py
templates.py
publish.py
schedule.py
static/
dashboard.html

詳細

Instagram Graph API ツールキット

概要

プロフィールやメディアの読み取り、ローカル SQLite 分析、エクスポート、公開プレビューに対応するコミュニティ製 Python ツールキットです。同梱の連携機能は Facebook Login、graph.facebook.com、リンク済みの Facebook ページを使用しており、別個の Instagram Login フローには対応していません。API v21.0、指標、権限、クォータ、メディア仕様は過去の例です。使用する前に、選択したアカウントと API バージョンに関する最新の Meta ドキュメントを確認してください。

使用する場面

明示的に依頼された Instagram アカウントのワークフローや、これらのスクリプトの調査に使用してください。対応するタスクには、利用可能なサービスコネクターを優先してください。Instagram への言及だけでは、アカウントの変更、OAuth、アップロード、公開、メッセージの送信は許可されません。

ワークフロー

  1. 該当するスクリプトとリファレンスを確認します。隔離された環境を使用し、scripts/requirements.txt をインストールする前に依存関係を確認してください。以下のコマンドは、このスキルのディレクトリから実行します。
  2. 許可されたアカウント接続では、自分の Meta アプリと正確なリダイレクト URI を設定してから、python3 scripts/auth.py --setup を実行します。ブラウザーが開き、記載された OAuth スコープが要求されます。ローカルデータベースには、トークンとアプリシークレットが平文で保存され、ローカル権限によって保護されます。保存先はスキルのソース外です(AAS_INSTAGRAM_DATA_DIR または config.py に記載されたユーザーごとのアプリケーションデータディレクトリ)。このディレクトリ、そのバックアップ、エクスポートをコミットしたり共有したりしないでください。
  3. python3 scripts/auth.py --status の結果を確認してから、必要な読み取りだけをリクエストします。読み取りコマンドは、トークンの更新を試み、取得したデータを保存する場合があります。トークンの更新は失敗したり、再認証が必要になったりすることがあり、無人で確実に実行できるわけではありません。--revoke が無効化するのはローカルアカウントだけです。Meta でプロバイダーへのアクセスを別途取り消してください。
  4. 出力と部分的な失敗を確認します。同期で読み取るのは各リソースの 1 ページであり、アカウント全体ではありません。コメントや会話を収集する前に、現在の権限、アカウントの所有権、保持ポリシーを確認してください。

例

python3 scripts/profile.py --view
python3 scripts/media.py --list --limit 10
python3 scripts/run_all.py --dry-run
python3 scripts/insights.py --media --media-id MEDIA_ID --metrics reach
python3 scripts/analyze.py --top-posts --limit 10
python3 scripts/export.py --type posts --format csv --output /absolute/private/export-directory
python3 scripts/serve_api.py --host 127.0.0.1

ダッシュボードには認証がなく、ASGI ツール経由で起動する場合も含め、ループバック接続のみで使用する必要があります。プロキシ経由で接続したり、ネットワークに公開したりしないでください。一部の統計では、保存されているすべてのアカウントが読み取られます。Chart.js はサードパーティの CDN から読み込まれます。エクスポートには個人データが含まれる場合があるため、非公開にしてください。

公開とメッセージ送信に関する制限

publish.py はプレビュー/確認リクエストを返します。既存の CLI 確認 ID は保存されず、不変のペイロードやアカウントにもひも付けられていないため、確認後の実行は無効になっています。動画/カルーセルの実行と、コメント/DM の確認処理は未完成です。永続的な承認、ワーカーによるアトミックな処理の確保、結果が不明な場合の照合が実装されるまで、schedule.py --process は無効になっています。schedule.py は --at を受け付けず、予約投稿も作成しません。これらのガードを迂回したり、確認カテゴリを変更してプレビューを実行したりしないでください。

下書きでは、ローカルメディアをアップロードしなくなりました。公開 Imgur アップロードには、自分の IMGUR_CLIENT_ID、そのファイルを Imgur と共有する明示的な許可、AAS_INSTAGRAM_ALLOW_IMGUR_UPLOAD=1 が必要です。このオプションは、レビュー済みの連携機能でのみ使用するものであり、無効化された公開機能を迂回するためのものではありません。ローカル動画は、画像のアップロード/変換経路ではサポートされていません。連携機能を実装する場合は、すでに許可された公開 HTTPS メディア URL を優先してください。公開 URL によって、Instagram で公開する前にコンテンツが開示される場合があります。

Graph への書き込みは 1 回だけ試行されます。タイムアウトしても、アクションが成功している場合があります。再試行する前に Meta 側で照合してください。ローカルのレートカウンターは推定値であり、プロバイダーによる制限ではありません。失敗した呼び出し、他のクライアント、同時実行ワーカーを完全には考慮せず、DM と一意のハッシュタグに関する制限も未完成です。プロバイダーからの現在のエラーやヘッダーに従ってください。

参考資料

  • references/graph_api.md:過去のエンドポイントとリクエスト形式
  • references/permissions.md:Facebook Login のスコープ例
  • references/account_types.md:アカウント設定に関する考慮事項
  • references/publishing_guide.md:過去のメディア例と制限事項
  • references/rate_limits.md:ローカルでの推定値とプロバイダーの制限
  • references/setup_walkthrough.md:過去の Meta 設定 UI
  • references/schema.md:ローカルデータスキーマ。正とする情報は scripts/db.py です

制限事項

実際のアカウントや API との互換性、アプリの審査については保証されていません。インサイトのスナップショットは、加算可能なイベントではなく、繰り返し取得される累計測定値です。過去の指標は廃止されている場合があり、期間や指標がサポートされているかを確認する必要があります。最適な投稿時間の結果は、UTC で観測されたサンプルを示すものであり、因果関係に基づく最適な投稿時間ではありません。Webhook ハンドラーは 501 を返し、イベントを受け付けません。永続的なスケジューラー、マルチテナント認可、暗号化されたシークレット保管庫、本番環境に対応した確認サービスはありません。

コメント