Model Context Protocol (MCP)

Instagram MCP Server

An Instagram MCP server gives an AI agent tools for Instagram, so a model can publish to your account rather than just write captions for you. Point Claude, Cursor, or any MCP client at Outstand's server and the agent can post photos, Reels, carousels, and Stories, tag users and locations, read engagement metrics, and reply to comments. Every action goes through Meta's official Instagram Graph API over an OAuth connection you approve once.

Official Instagram APIManaged Keys included$19/month, 3,000 posts included
server url
https://mcp.outstand.so/mcp
claude mcp add -t http \
  -H "Authorization: Bearer ost_your_key" \
  outstand https://mcp.outstand.so/mcp

Works with Claude Desktop, Claude Code, Cursor, Windsurf, ChatGPT, and any MCP client.

Live since March 2026 - 27 tools across 11 platforms, $19/month, 3,000 posts included
01 / Quick start

First post in minutes.

The server URL is https://mcp.outstand.so/mcp. Paste it into your client and connect Instagram.

  1. 01Create an Outstand account. There is no Meta developer app to register and no Graph API tokens to manage.
  2. 02Connect Instagram through the hosted OAuth link. You need an Instagram Business or Creator account linked to a Facebook Page - Meta does not allow API publishing from personal accounts.
  3. 03Add https://mcp.outstand.so/mcp to your MCP client using one of the snippets below.
  4. 04Ask your agent to post. Give it an image or video URL and a caption, and it handles the Graph API container flow for you.

Claude Code

bash
claude mcp add -t http \
  -H "Authorization: Bearer ost_your_key" \
  outstand https://mcp.outstand.so/mcp

Claude Desktop

json
// claude_desktop_config.json
{
  "mcpServers": {
    "outstand": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "https://mcp.outstand.so/mcp",
        "--header",
        "Authorization: Bearer ost_your_key"
      ]
    }
  }
}

Cursor

json
// .cursor/mcp.json
{
  "mcpServers": {
    "outstand": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "https://mcp.outstand.so/mcp",
        "--header",
        "Authorization: Bearer ost_your_key"
      ]
    }
  }
}

Any client with a custom connector (ChatGPT, Claude web, Cursor)

text
# Add a custom connector in your client's settings and paste
# this URL, then sign in once in the browser. No API key to copy.

https://mcp.outstand.so/mcp

Works with Claude Desktop, Claude Code, Cursor, Windsurf, ChatGPT, and any other MCP client. Full client setup guide.

02 / Tools

What your agent can do.

The tools that apply to Instagram, out of 27 on the server.

  • create_postPublish or schedule an Instagram post: single image, Reel, carousel, or Story.
  • list_postsList posts, filterable by account, status, and date range.
  • get_postFetch a single post and its per-platform publish status.
  • get_post_analyticsFetch impressions, reach, likes, comments, saves, shares, and views for a published post.
  • create_replyReply to a comment on a post published through Outstand.
  • get_repliesRead comments and replies on a post published through Outstand.
  • delete_postDelete a post record in Outstand, cancelling it if it is still scheduled.
  • upload_mediaStart a media upload and get a signed URL for an image or video.
  • confirm_media_uploadConfirm an upload once the bytes are transferred and get the public URL to attach.
  • list_social_accountsList connected social accounts, so the agent can find your Instagram account.
  • get_account_metricsFetch followers, following, post count, and engagement for a connected account.
  • get_auth_urlGenerate an OAuth URL to connect a new Instagram account.
  • get_account_usageRead current billing-period post usage.
03 / The landscape

Does Instagram have an official MCP server?

No. Meta does not publish an MCP server for Instagram, so everything you can install today is third-party, and the options fall into three groups.

The first group is unofficial servers that automate the Instagram app or scrape the web front end, usually with your session cookie or login. Instagram is unusually aggressive about this: unofficial automation is a common route to a restricted or banned account, and that risk lands on the account you actually care about. It is worth being blunt about that before you install one.

The second group is nodes and connectors inside general workflow platforms. They typically do call the Graph API, but you are adopting an entire automation product to get one integration, and the Instagram-specific parts (the container publish flow, Reels covers, carousels) are often only half-covered.

The third group is hosted servers built on the official Graph API, which is what Outstand is. You connect Instagram with a normal Meta OAuth consent screen, the server drives the documented publishing endpoints, and there is no cookie to expire. The cost is that you only get what the Graph API permits, which is publishing, comments, and post metrics rather than anything scraped.

04 / Comparison

Choosing a Instagram MCP.

Three realistic ways to give an agent Instagram access, and what each one actually costs you.

ApproachSetup timeAuthReliabilityCompliance
Self-hosted open-source (automation or scraper)An hour or two: clone, install, supply a login or cookieSession cookie or your Instagram username and passwordBreaks on front-end changes and login challengesAgainst Instagram terms. Real risk of the account being restricted
Workflow-platform nodeHours: register a Meta app, get it reviewed, wire the flowYour own Meta developer app and Graph API tokensReasonable, but app review and token refresh are on youOfficial Graph API, if the node actually uses it
Hosted API-based (Outstand)A few minutes: sign in, approve OAuth, paste the URLHosted OAuth link flow. Managed Keys included, no Meta appMaintained against the Graph API, token refresh handledOfficial Instagram Graph API. No scraping, no session cookies
05 / Auth

Authentication

Connecting Instagram is an OAuth link flow: Outstand opens Meta's consent screen, you approve, and the connection is done. There is no Meta developer app to register, no app review to sit through, and no long-lived Graph token to store yourself. Managed Keys are included on every plan and cover Instagram.

The one requirement is on Meta's side, not ours: the account must be an Instagram Business or Creator account linked to a Facebook Page. Meta does not permit API publishing from personal accounts, so no MCP server built on the official API can work around that. Switching account type is free and takes a minute in the Instagram app.

06 / Worth knowing

Instagram specifics.

  • Media is required. Instagram has no text-only posts, so every create_post for Instagram needs at least one image or video URL.
  • Carousels take 2 to 10 media items. Pass them as containers and Outstand assembles a single carousel post, using the first container for the caption.
  • Reels are detected from the video you pass, and you can set a cover with reelCoverUrl or a thumbnail offset. Stories accept a single image or video.
  • Instagram does not support reposting or deleting a published post through its API, so those tools report a clear failure rather than pretending to work.
07 / Scope

What this MCP doesn't do.

This is a publishing server, not a growth tool. It does not automate DMs, scrape follower or engagement data, touch Instagram Ads, or read analytics for accounts you do not own. Metrics come from what the Graph API exposes for your own posts: impressions, reach, likes, comments, saves, shares, and views. If you came looking for lead scraping or inbox automation, this is the wrong tool.

08 / FAQ

Frequently asked questions.

Does Instagram have an official MCP server?

No. Meta has not shipped an MCP server for Instagram, so every option today is third-party. They split into unofficial automation servers that drive the app with your login, workflow-platform nodes that wrap the Graph API, and hosted servers built on the official API such as Outstand.

Can Claude post to Instagram?

Yes. Add https://mcp.outstand.so/mcp to Claude Desktop, Claude Code, or Claude on the web, connect your Instagram account, and Claude can publish photos, Reels, carousels, and Stories. The same connector works in Cursor, Windsurf, ChatGPT, and any other MCP client.

Do I need an Instagram Business account?

Yes, a Business or Creator account linked to a Facebook Page. This is Meta's rule for the Instagram Graph API, not an Outstand restriction: personal accounts cannot publish through the API at all. Converting is free and takes about a minute in the Instagram app settings.

Can it post Reels and carousels?

Yes. Pass a video and it publishes as a Reel, with an optional cover image or thumbnail offset. Pass 2 to 10 media items and it publishes as a carousel. Stories are supported too, as a single image or video.

Does it use the official Instagram API?

Yes. Every action goes through Meta's Instagram Graph API over an OAuth connection you approved, including the container-based publish flow Meta requires. Nothing is scraped and no session cookie is used, which is the main practical difference from the automation-based servers on GitHub.

Can it schedule Instagram posts?

Yes. create_post takes a scheduled time, so an agent can queue an Instagram post up to 30 days ahead. Scheduling runs in Outstand rather than on Instagram, and a scheduled post can be cancelled with delete_post before it goes out.

What does it cost?

The MCP server is included with every Outstand account at no extra cost. Pricing is $19/month, 3,000 posts included, and posts published by an agent draw on the same quota as posts published through the REST API. Connected accounts are unlimited.

Every claim on this page is restated, dated, and citable on the facts page.

Connect Instagram, publish your first post in minutes

Sign in, approve Instagram once, paste the server URL into your client. Then just ask your agent to post.

https://mcp.outstand.so/mcp