Instagram for AI agents

Instagram is a social platform for photos, videos, and stories; its business API supports posting, messaging, and insights for creator and business accounts. Connect it once through Arc0, and your agent, or Claude, ChatGPT and Cursor, can use it through one MCP endpoint, limited to what each user approved.

Social mediaOAuth 2.0MCP + RESTinstagram.com
AUDIT LOG · INSTAGRAMPOLICY: acme-support
09:41:07 · claude · u_8f2read
instagram.list_all_messages
List All Messages✓ allowed · 212ms
09:41:08 · claude · u_8f2read
instagram.get_ig_media
Get Instagram Media✓ allowed · 164ms
09:41:09 · claude · u_8f2write
instagram.create_post
Create Post (Deprecated)✓ approved · approved by user
09:41:12 · claude · u_8f2destructive
instagram.delete_comment
Delete Comment✕ blocked · policy: deny
EVERY INSTAGRAM CALL, ON THE RECORD
01 · USE CASES

What agents do in Instagram.

01

Check a post's insights

Pull engagement insights on a recent post to report on how a campaign performed.

02

Read direct message conversations

List recent conversations to find a customer inquiry that needs a reply.

03

Publish a new post with approval

Publish a media container to the feed only after the brand team approves the final caption.

02 · ACTIONS

38 Instagram actions, graded by risk.

Every Instagram action is tagged read, write or destructive, so one policy covers the whole app and new actions inherit the right default.

read

22

Look things up. Allowed by default.

  • instagram.get_ig_media
    Get Instagram Media
  • instagram.get_user_info
    Get User Info
  • instagram.get_user_media
    Get User Media (Deprecated)
  • instagram.get_post_status
    Get Post Status (Deprecated)
  • instagram.get_conversation
    Get Conversation
  • instagram.get_ig_user_tags
    Get IG User Tags (Deprecated)
  • instagram.get_ig_user_media
    List User Media
  • instagram.get_post_comments
    Get Post Comments (Deprecated)
  • instagram.get_post_insights
    Get Post Insights (Deprecated)
  • instagram.get_user_insights
    Get User Insights
  • instagram.list_all_messages
    List All Messages
  • instagram.get_ig_user_stories
    Get IG User Stories
  • instagram.list_subscribed_apps
    List Subscribed Apps
  • instagram.get_ig_media_children
    Get IG Media Children
  • instagram.get_ig_media_comments
    List Media Comments
  • instagram.get_ig_media_insights
    Get IG Media Insights
+ 6 MORE

write

14

Create and change things. Allow, or ask the user first.

  • instagram.send_image
    Send Image
  • instagram.create_post
    Create Post (Deprecated)
  • instagram.send_text_message
    Send Text Message
  • instagram.post_ig_user_media
    Post IG User Media
  • instagram.post_ig_user_mentions
    Reply to IG User Mentions
  • instagram.create_media_container
    Create Media Container (Deprecated)
  • instagram.post_ig_media_comments
    Post IG Media Comments
  • instagram.post_ig_comment_replies
    Post IG Comment Replies
  • instagram.update_messenger_profile
    Update Messenger Profile
  • instagram.create_carousel_container
    Create Carousel Container
  • instagram.post_ig_user_media_publish
    Publish IG User Media
  • instagram.mark_seen
    Mark Seen
  • instagram.reply_to_comment
    Reply To Comment (Deprecated)
  • instagram.enable_webhook_subscriptions
    Enable Webhook Subscriptions

destructive

2

Delete, cancel or archive. Ask first, or deny outright.

  • instagram.delete_comment
    Delete Comment
  • instagram.delete_messenger_profile
    Delete Messenger Profile
03 · HOW IT WORKS

Instagram in three steps.

  1. 01Your users connect InstagramThey sign in to Instagram on Arc0 Connect, under your brand, and approve the access you ask for.
  2. 02You set the rulesReads run, writes like “create Post (Deprecated)” can wait for the user, and “delete Comment” can be denied outright.
  3. 03Any agent can actYour agent calls Instagram through the Arc0 SDK or MCP, and so can Claude, ChatGPT and Cursor. Every call lands on the audit log.
POLICY.TS
await arc0.policies.set('instagram', {
  read: 'allow',
  write: 'ask',        // create_post
  destructive: 'deny',  // delete_comment
})

# Claude Code: the same connection, one URL
$ claude mcp add --transport http arc0 \
    https://mcp.arc0.ai/u/u_8f2
04 · AUTH AND DATA

How Instagram connects.

Users sign in to Instagram on Arc0 Connect and approve the scopes you request. Build with Arc0’s Instagram OAuth app, or bring your own so the Instagram consent screen names you. Tokens refresh automatically, and you can export them whenever you want.

The same Instagram connection serves your agent over MCP and your own backend over REST and the proxy, so a user connects once. How Arc0 handles credentials →

AUTH
OAuth 2.0
CREDENTIALS
Per-tenant encrypted vault
MODEL SEES
Results only, never credentials
AUDIT LOG
Every call, on every plan
05 · WORKS WITH

Use Instagram from any agent.

Claude
ChatGPT
Cursor
Codex
VS Code
OpenAI Agents SDK
Claude Agent SDK
Vercel AI SDK
Mastra
LangGraph
07 · FAQ

Instagram and Arc0, answered.

Q01

Can I use Instagram with Claude, ChatGPT or Cursor?

Yes. Connect Instagram to Arc0 once, then add your Arc0 MCP URL to Claude, ChatGPT, Cursor, Claude Code or any other remote-MCP client. Each assistant only gets the Instagram actions you allow.

Q02

How do users connect Instagram?

Users sign in to Instagram on Arc0 Connect and approve the scopes you request. Build with Arc0’s Instagram OAuth app, or bring your own so the Instagram consent screen names you. Tokens refresh automatically, and you can export them whenever you want.

Q03

Which Instagram actions can my agent take?

38 in total: 22 read, 14 write and 2 destructive, such as “create Post (Deprecated)”. Your policies decide which of them each agent may call.

Q04

Can I stop my agent from deleting things in Instagram?

Yes. Actions like “delete Comment” are graded destructive. Set destructive actions to deny, or to ask so the user approves each one, and blocked calls still show up on the audit log.

Q05

Can my own backend call Instagram too?

Yes. The same Instagram connection is available over REST and through the Arc0 proxy, so your product and your agent share one connection per user.

Get started

Plug Instagram into your agent.

Your users connect Instagram once, under your brand. Your agent gets 38 actions behind your policies, with every call on the record.

Free to build · MCP + REST · Audit log on every plan