ig-mcp

jlbadano/ig-mcp

3.3

If you are the rightful owner of ig-mcp and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.

A Model Context Protocol (MCP) server that integrates with Instagram's Graph API for AI applications to interact with Instagram Business accounts.

The Instagram MCP Server is designed to facilitate seamless interaction between AI applications and Instagram Business accounts through the Instagram Graph API. This server allows developers to programmatically access and manage Instagram business profiles, media posts, and insights. By leveraging the MCP framework, the server provides a structured and efficient way to handle Instagram data, making it easier for applications to perform tasks such as retrieving profile information, fetching media posts, analyzing engagement metrics, and publishing content. The server is built with robust security measures, including token management and secure API calls, ensuring that all interactions are safe and compliant with Instagram's policies. Additionally, the server supports various tools and resources that enhance its functionality, making it a comprehensive solution for businesses looking to optimize their Instagram presence through AI-driven insights and automation.

Features

  • 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.

Usages

usage with Claude Desktop

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

usage with Python MCP Client

python
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)

Tools

  1. Get Profile Info

    Retrieve Instagram business profile details

  2. Get Media Posts

    Fetch recent posts from an Instagram account

  3. Get Media Insights

    Retrieve engagement metrics for specific posts

  4. Publish Media

    Upload and publish images/videos to Instagram

  5. Get Account Pages

    List Facebook pages connected to the account