# Instagram Actions — how to use (mcp.ai)

Automatize ações no Instagram, curtir posts, seguir/deixar de seguir, listar e ver stories, ler e enviar mensagens diretas. Cada ação roda em segundo plano e devolve um job para acompanhar. Conecte uma ou mais contas com usuário e senha (suporta código 2FA). Preço por conexão; proxy gerenciado incluso; opcionalmente use seu próprio proxy por conexão.

## Option A — via MCP (recommended)
Remote MCP endpoint (HTTP, streamable): `https://api.mcp.ai/p_instagram_actions?ms=1781354040000`
Add it as a custom/remote MCP connector in your client (Claude, Cursor, VS Code…), then authenticate when prompted. Once connected, ask the agent to use the server's tools (e.g. `instagram_actions_follow`).

## Option B — via direct REST API
Base URL: `https://api.mcp.ai/api/instagram_actions`
Auth: `Authorization: Bearer sk_live_…` — create a workspace API key at https://mcp.ai/settings/api-keys
Discover endpoints: `GET https://api.mcp.ai/api/instagram_actions/_endpoints`

### Endpoints
- `POST https://api.mcp.ai/api/instagram_actions/follow` — Follow one or more Instagram users (by @username or user id). Returns a job_id.
  - body: { targets: string[], speed?: string, account?: string }
- `POST https://api.mcp.ai/api/instagram_actions/get/job/status` — Get the status/progress/result of a previously started action by its job_id.
  - body: { job_id: string, account?: string, job_ids?: string[] }
- `POST https://api.mcp.ai/api/instagram_actions/like` — Like one or more Instagram posts. Returns a job_id; poll instagram_actions_get_job_status.
  - body: { media_ids: string[], speed?: string, account?: string }
- `POST https://api.mcp.ai/api/instagram_actions/list/accounts` — List the Instagram accounts connected to this install — id, username, label.
  - body: { account?: string }
- `POST https://api.mcp.ai/api/instagram_actions/list/jobs` — List recent action jobs for the connected account, optionally filtered by status.
  - body: { status?: string, account?: string }
- `POST https://api.mcp.ai/api/instagram_actions/list/stories` — List available stories — the home tray, or a specific user's stories when `target` is given. Returns a job_id (or the result inline when wait=true).
  - body: { target?: string, wait?: boolean, account?: string }
- `POST https://api.mcp.ai/api/instagram_actions/post/feed` — Publish to the feed — a single photo/video, or a carousel when more than one media URL is given. Media must be reachable public URLs. Returns a job_id; poll instagram_actions_get_job_status.
  - body: { media_urls: string[], caption?: string, account?: string }
- `POST https://api.mcp.ai/api/instagram_actions/post/story` — Publish a photo or video to your story. Media must be a reachable public URL. Returns a job_id.
  - body: { media_url: string, caption?: string, mention?: string, link?: string, account?: string }
- `POST https://api.mcp.ai/api/instagram_actions/read/messages` — Read direct messages — the inbox, or a specific thread's messages when `thread_id` is given. Returns a job_id (or the result inline when wait=true).
  - body: { thread_id?: string, limit?: integer, wait?: boolean, account?: string, thread_ids?: string[] }
- `POST https://api.mcp.ai/api/instagram_actions/reshare/story` — Reshare to your own story a story you were mentioned/tagged in. Pass the story's `media_url` (delivered by the instagram_actions.story_mention webhook) — or `media_id` as a fallback. Returns a job_id.
  - body: { media_url?: string, media_id?: string, author?: string, caption?: string, account?: string, media_ids?: string[] }
- `POST https://api.mcp.ai/api/instagram_actions/send/message` — Send a direct message (to an existing thread_id or a @username). Returns a job_id.
  - body: { text: string, thread_id?: string, username?: string, account?: string, thread_ids?: string[] }
- `POST https://api.mcp.ai/api/instagram_actions/unfollow` — Unfollow one or more Instagram users (by @username or user id). Returns a job_id.
  - body: { targets: string[], speed?: string, account?: string }
- `POST https://api.mcp.ai/api/instagram_actions/view/story` — View (mark as seen) one or more stories. Returns a job_id.
  - body: { story_ids: string[], account?: string }

## Example prompts
- "Curta os posts 123 e 456 na minha conta"
- "Publique essa foto no meu feed com a legenda 'novidade!'"
- "Quando me marcarem num story, reposte no meu story"

## More
- Page: https://mcp.ai/instagram_actions
- Agent spec (llms.txt): https://mcp.ai/instagram_actions/llms.txt
- Postman collection: https://mcp.ai/instagram_actions/postman.json
