プロトタイプ · プレビュー版:公式レジストリのすべてのサーバーを掲載し、30分ごとに同期しています。レビューとアカウント機能は今後のステップで始まります。
PopNx MCPAIを使う人のためのMCPサーバー · やさしい言葉で解説

Instagram MCP

作者:mcpwareバージョン 1.0.4i★ 74iパソコンで動く
レジストリ名io.github.mcpware/instagram-mcp

インストール

概要

作者による説明(英語の原文)

Instagram MCP — 23 tools for Instagram Graph API: posts, DMs, stories, reels, analytics.

PopNx MCPの3つの柱

この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。

できること

このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。

  • 接続方法: パソコンで動く
  • トランスポート: stdio
  • カテゴリ: マーケティング・SNS
  • 入力が必要なもの:INSTAGRAM_ACCESS_TOKEN, INSTAGRAM_ACCOUNT_ID

インストール

使っているAIアプリを選んで、設定をコピーしてください。

インストールの前に

  • 基本チェック:3項目中3項目に合格
  • あなたのパソコンで、あなたのユーザーと同じ権限(ファイル、ネットワーク、アプリ)で動きます。
  • 自分で入力するもの: INSTAGRAM_ACCESS_TOKEN, INSTAGRAM_ACCOUNT_ID, INSTAGRAM_API_VERSION

「秘密」と表示された値は、あなたのアカウントの鍵です。絶対に人に教えたり、チャットに貼り付けたりしないでください。

必要なもの

  • npmNode.jsのインストール(npxコマンドに必要)

どのアプリを使っていますか?

上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。

Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます

{
  "mcpServers": {
    "instagram": {
      "command": "npx",
      "args": [
        "-y",
        "@mcpware/instagram-mcp"
      ],
      "env": {
        "INSTAGRAM_ACCESS_TOKEN": "your-value",
        "INSTAGRAM_ACCOUNT_ID": "your-value",
        "INSTAGRAM_API_VERSION": "your-value"
      }
    }
  }
}

ターミナルでこれを実行します

claude mcp add instagram --env INSTAGRAM_ACCESS_TOKEN=your-value --env INSTAGRAM_ACCOUNT_ID=your-value --env INSTAGRAM_API_VERSION=your-value -- npx -y @mcpware/instagram-mcp

動かす前に、空欄の値を入力してください。

Cursorで開く

または、設定を自分でコピーする

プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます

{
  "mcpServers": {
    "instagram": {
      "command": "npx",
      "args": [
        "-y",
        "@mcpware/instagram-mcp"
      ],
      "env": {
        "INSTAGRAM_ACCESS_TOKEN": "your-value",
        "INSTAGRAM_ACCOUNT_ID": "your-value",
        "INSTAGRAM_API_VERSION": "your-value"
      }
    }
  }
}

ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。

VS Codeで開く

または、設定を自分でコピーする

プロジェクトの .vscode/mcp.json に貼り付けます

{
  "servers": {
    "instagram": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@mcpware/instagram-mcp"
      ],
      "env": {
        "INSTAGRAM_ACCESS_TOKEN": "your-value",
        "INSTAGRAM_ACCOUNT_ID": "your-value",
        "INSTAGRAM_API_VERSION": "your-value"
      }
    }
  }
}

ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。

これはパソコンで動くサーバーですが、ChatGPTがつなげるのはインターネット上のサーバーだけです。ほかのアプリを選んでください。

選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。

自分で入力する値

  • INSTAGRAM_ACCESS_TOKEN 秘密 必須 env
    Meta long-lived access token for Instagram Graph API
  • INSTAGRAM_ACCOUNT_ID 必須 env
    Instagram business account ID
  • INSTAGRAM_API_VERSION env
    Instagram Graph API version (default: v19.0)

この設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。

できること

パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。

基本チェックi

誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月7日にチェック

  • ✓ 合格

    作者とリポジトリが一致

    レジストリ名は、リポジトリを所有するGitHubアカウント mcpware で確認済みです

  • ✓ 合格

    今もメンテナンスされている

    コードの最終更新:2 か月前

  • ✓ 合格

    ライセンスがある

    MITを使用

  • – 対象外

    エンドポイントが応答する

    これはパソコンで動くため、インターネット上のエンドポイントはありません

  • – 対象外

    OAuthでサインイン

    パソコンで動き、代わりにローカルの設定を使います

  • … 未チェック

    ツールの説明に隠れた指示がない

    パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです

マーケティング・SNSのほかのサーバーとの比較i

  • このカテゴリのほかの2982件のうち100%よりスターが多い
  • このカテゴリのほかの2982件のうち4%より最近レジストリに公開
  • 基本チェックの結果が、このカテゴリのほかの2982件のうち100%と同じかそれ以上

レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。

よくある質問

Instagram MCPは安全ですか?

当てはまる基本チェック3項目のうち3項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。

どんなキーやコードが必要ですか?

入力が必要なもの:INSTAGRAM_ACCESS_TOKEN, INSTAGRAM_ACCOUNT_ID

パソコンで動きますか、それともクラウドですか?

あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。

今もメンテナンスされていますか?

GitHubリポジトリの最終更新は2 か月前、最新バージョン(1.0.4)がレジストリに届いたのは8 か月前です。

どのアプリで使えますか?

Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにNode.jsも必要です。

代わりに使えるものは?

同じカテゴリには:MCP YouTube Transcript, Google Analytics MCP, BibiGPT YouTube Video Summarizer

代わりの候補

同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。

カードの見方:★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i

Google Analytics MCP

作者:surendranb

GA4 MCP server for AI agents: schema discovery, server-side aggregation, analysis-ready defaults.

パソコンで動く★ 244MIT10 日前更新
インストール

作者のREADME

READMEを開く

作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。

@mcpware/instagram-mcp

A Model Context Protocol (MCP) server that provides seamless integration with Instagram's Graph API, enabling AI applications to interact with Instagram Business accounts programmatically.

Features

🔧 Tools (Model-controlled)
  • Get Profile Info: Retrieve Instagram business profile details
  • Get Media Posts: Fetch recent posts from an Instagram account
  • Get Media Insights: Retrieve engagement metrics for specific posts
  • Publish Media: Upload and publish images/videos to Instagram
  • Get Account Pages: List Facebook pages connected to the account
  • Get Conversations: List Instagram DM conversations (requires Advanced Access)
  • Get Conversation Messages: Read messages from specific conversations (requires Advanced Access)
  • Send DM: Reply to Instagram direct messages (requires Advanced Access)
📊 Resources (Application-controlled)
  • Profile Data: Access to profile information including follower counts, bio, etc.
  • Media Feed: Recent posts with engagement metrics
  • Insights Data: Detailed analytics for posts and account performance
💬 Prompts (User-controlled)
  • Analyze Engagement: Pre-built prompt for analyzing post performance
  • Content Strategy: Template for generating content recommendations
  • Hashtag Analysis: Prompt for hashtag performance evaluation

Prerequisites

  1. Instagram Business Account: Must be connected to a Facebook Page
  2. Facebook Developer Account: Required for API access
  3. Access Token: Long-lived access token with appropriate permissions
  4. Python 3.10+: For running the MCP server (required by MCP dependencies)
Required Instagram API Permissions

Standard Access (available immediately):

  • instagram_basic
  • instagram_content_publish
  • instagram_manage_insights
  • instagram_manage_comments
  • pages_show_list
  • pages_read_engagement
  • pages_manage_metadata
  • pages_read_user_content
  • business_management

Advanced Access (requires Meta App Review):

  • instagram_manage_messages - Required for Direct Messaging features

⚠️ Instagram DM Features: Reading and sending Instagram direct messages requires Advanced Access approval from Meta. See INSTAGRAM_DM_SETUP.md for the App Review process.

🔑 How to Get Instagram API Credentials

📖 Quick Start: See AUTHENTICATION_GUIDE.md for a 5-minute setup guide!

This section provides a step-by-step guide to obtain the necessary credentials for the Instagram MCP server.

Step 1: Set Up Instagram Business Account
  1. Convert to Business Account (if not already):
  • Open Instagram app → Settings → Account → Switch to Professional Account
  • Choose "Business" → Select a category → Complete setup
  1. Connect to Facebook Page:
  • Go to Instagram Settings → Account → Linked Accounts → Facebook
  • Connect to an existing Facebook Page or create a new one
  • Important: The Facebook Page must be owned by you
Step 2: Create Facebook App
  1. Go to Facebook Developers:
  1. Create New App:
  • Click "Create App" → Choose "Business" → Click "Next"
  • Fill in app details:
  • App Name: Choose a descriptive name (e.g., "My Instagram MCP Server")
  • App Contact Email: Your email address
  • Click "Create App"
  1. Add Instagram Basic Display Product:
  • In your app dashboard, click "Add Product"
  • Find "Instagram Basic Display" → Click "Set Up"
  1. Configure Instagram Basic Display:
  • Go to Instagram Basic Display → Basic Display
  • Click "Create New App" in the Instagram App section
  • Accept the terms and create the app
Step 3: Get App Credentials
  1. Get App ID and Secret:
  • In your Facebook app dashboard, go to Settings → Basic
  • Copy your App ID and App Secret
  • Important: Keep the App Secret secure and never share it publicly
Step 4: Set Up Instagram Business API Access
  1. Add Instagram Graph API Product:
  • In your app dashboard, click "Add Product"
  • Find "Instagram Graph API" → Click "Set Up"
  1. Configure Permissions:
  • Go to Instagram Graph API → Permissions
  • Request the following permissions:
  • instagram_basic
  • instagram_content_publish
  • instagram_manage_insights
  • pages_show_list
  • pages_read_engagement
Step 5: Generate Access Token
Option A: Using Facebook Graph API Explorer (Recommended for Testing)
  1. Go to Graph API Explorer:
  1. Configure Explorer:
  • Select your app from the dropdown
  • Click "Generate Access Token"
  • Select required permissions when prompted
  1. Get Page Access Token:
  • In the explorer, make a GET request to: /me/accounts
  • Find your Facebook Page in the response
  • Copy the access_token for your page
  1. Get Instagram Business Account ID:
  • Use the page access token to make a GET request to: /{page-id}?fields=instagram_business_account
  • Copy the Instagram Business Account ID from the response
Option B: Using Facebook Login Flow (Recommended for Production)
  1. Set Up Facebook Login:
  • In your app dashboard, add "Facebook Login" product
  • Configure Valid OAuth Redirect URIs
  1. Implement OAuth Flow:
   # Example OAuth URL

oauth_url = f"https://www.facebook.com/v19.0/dialog/oauth?client_id={app_id}&redirect_uri={redirect_uri}&scope=pages_show_list,instagram_basic,instagram_content_publish,instagram_manage_insights"

  1. Exchange Code for Token:
   # Exchange authorization code for access token

token_url = f"https://graph.facebook.com/v19.0/oauth/access_token?client_id={app_id}&redirect_uri={redirect_uri}&client_secret={app_secret}&code={auth_code}"

Step 6: Get Long-Lived Access Token

Short-lived tokens expire in 1 hour. Convert to long-lived token (60 days):

curl -X GET "https://graph.facebook.com/v19.0/oauth/access_token?grant_type=fb_exchange_token&client_id={app_id}&client_secret={app_secret}&fb_exchange_token={short_lived_token}"
Step 7: Set Up Environment Variables

Create a .env file in your project root:

# Facebook App Credentials

FACEBOOK_APP_ID=your_app_id_here FACEBOOK_APP_SECRET=your_app_secret_here

Instagram Access Token (long-lived)

INSTAGRAM_ACCESS_TOKEN=your_long_lived_access_token_here

Instagram Business Account ID

INSTAGRAM_BUSINESS_ACCOUNT_ID=your_instagram_business_account_id_here

Optional: API Configuration

INSTAGRAM_API_VERSION=v19.0 RATE_LIMIT_REQUESTS_PER_HOUR=200 CACHE_ENABLED=true LOG_LEVEL=INFO

Step 8: Test Your Setup

Run the validation script to test your credentials:

python scripts/setup.py

Or test manually:

import os

import requests

Test access token

access_token = os.getenv('INSTAGRAM_ACCESS_TOKEN') response = requests.get(f'https://graph.facebook.com/v19.0/me?access_token={access_token}') print(response.json())

🚨 Important Security Notes
  1. Never commit credentials to version control
  2. Use environment variables or secure secret management
  3. Regularly rotate access tokens
  4. Monitor token expiration dates
  5. Use HTTPS only in production
  6. Implement proper error handling for expired tokens
🔄 Token Refresh Strategy

Long-lived tokens expire after 60 days. Implement automatic refresh:

# Check token validity

def check_token_validity(access_token): url = f"https://graph.facebook.com/v19.0/me?access_token={access_token}" response = requests.get(url) return response.status_code == 200

Refresh token before expiration

def refresh_long_lived_token(access_token, app_id, app_secret): url = f"https://graph.facebook.com/v19.0/oauth/access_token" params = { 'grant_type': 'fb_exchange_token', 'client_id': app_id, 'client_secret': app_secret, 'fb_exchange_token': access_token } response = requests.get(url, params=params) return response.json().get('access_token')

📋 Troubleshooting Common Issues

Error: "Invalid OAuth access token"

  • Check if token has expired
  • Verify token has required permissions
  • Ensure Instagram account is connected to Facebook Page

Error: "Instagram account not found"

  • Verify Instagram Business Account ID is correct
  • Check if Instagram account is properly linked to Facebook Page
  • Ensure account is a Business account, not Personal

Error: "Insufficient permissions"

  • Review required permissions in Facebook App
  • Re-generate access token with correct scopes
  • Check if app is in Development vs Live mode

Rate Limiting Issues

  • Implement exponential backoff
  • Cache responses when possible
  • Monitor rate limit headers in API responses

Installation

  1. Clone the repository:
git clone <repository-url>

cd ig-mcp

  1. Install dependencies:
pip install -r requirements.txt
  1. Set up environment variables:
cp .env.example .env

Edit .env with your Instagram API credentials

  1. Configure the MCP server:
# Edit config.json with your specific settings

Configuration

Environment Variables (.env)
INSTAGRAM_ACCESS_TOKEN=your_long_lived_access_token

FACEBOOK_APP_ID=your_facebook_app_id FACEBOOK_APP_SECRET=your_facebook_app_secret INSTAGRAM_BUSINESS_ACCOUNT_ID=your_instagram_business_account_id

MCP Client Configuration

Add this to your MCP client configuration (e.g., Claude Desktop):

{

"mcpServers": { "instagram": { "command": "python", "args": ["/path/to/ig-mcp/src/instagram_mcp_server.py"], "env": { "INSTAGRAM_ACCESS_TOKEN": "your_access_token" } } } }

Usage Examples

Using with Claude Desktop
  1. Get Profile Information:
Can you get my Instagram profile information?
  1. Analyze Recent Posts:
Show me my last 5 Instagram posts and their engagement metrics
  1. Publish Content:
Upload this image to my Instagram account with the caption "Beautiful sunset! #photography #nature"
Using with Python MCP Client
from mcp import ClientSession, StdioServerParameters

from mcp.client.stdio import stdio_client

Connect to the Instagram MCP server

server_params = StdioServerParameters( command="python", args=["src/instagram_mcp_server.py"] )

async with stdio_client(server_params) as (read, write): async with ClientSession(read, write) as session: await session.initialize()

Get profile information

result = await session.call_tool("get_profile_info", {}) print(result)

API Endpoints Covered

Profile Management
  • Get business profile information
  • Update profile details (future feature)
Media Management
  • Retrieve recent posts
  • Get specific media

冒頭だけを表示しています。続きはリポジトリで読めます

PopNxに聞く