Skip to main content
ClaudeWave

MCP server for Instagram, WhatsApp and Messenger DMs. Send and reply to direct messages, comments and templates through official Meta Business APIs.

MCP ServersOfficial Registry0 stars0 forksJavaScriptMITUpdated today
ClaudeWave Trust Score
95/100
Verified
Passed
  • Open-source license (MIT)
  • Actively maintained (<30d)
  • Clear description
  • Topics declared
  • Documented (README)
Last scanned: 8/26/2026
Install in Claude Code / Claude Desktop
Method: Manual
Claude Code CLI
git clone https://github.com/setsmart-git/instagram-mcp
claude_desktop_config.json (Claude Desktop)
{
  "mcpServers": {
    "instagram-mcp": {
      "command": "node",
      "args": ["/path/to/instagram-mcp/dist/index.js"]
    }
  }
}
1. Run the command above in your terminal (Claude Code), or paste the JSON config into claude_desktop_config.json (Claude Desktop).
2. Replace any <placeholder> values with your API keys or paths.
3. Restart Claude. The MCP server and its tools appear automatically.
💡 Clone https://github.com/setsmart-git/instagram-mcp and follow its README for install instructions.
Use cases

MCP Servers overview

# Instagram MCP Server (also WhatsApp and Messenger)

An [MCP](https://modelcontextprotocol.io) server that lets Claude, Cursor, Claude Code and any other MCP client read and reply to **Instagram DMs, WhatsApp messages and Facebook Messenger conversations**, through the official Meta Business APIs.

Ask your assistant to *"find the lead who asked about pricing on Instagram and send them the booking template"*, and it happens on the real account.

## Why this one is different

Most Instagram and WhatsApp MCP servers drive a personal account: a browser automation session, an unofficial bridge, or a reverse engineered mobile API. They break when Meta changes something, and they put the account at risk of being disabled.

This one talks to the **official Instagram Messaging API, WhatsApp Cloud API and Messenger Platform**, through SetSmart's Meta-approved Business app. Messaging Instagram, WhatsApp or Messenger programmatically is not possible without an approved app, which is why this bridge requires a SetSmart workspace rather than your Instagram password.

That is the tradeoff, stated plainly: it is not self-hostable against your own account, and it needs a SetSmart API key.

## Requirements

- Node.js 18 or newer
- A [SetSmart](https://setsmart.io) workspace with at least one channel connected (Instagram, WhatsApp or Messenger)
- Your workspace API key, from Settings then Integrations

## Quick start

### Claude Desktop / Claude Code

Add this to your MCP config (`claude_desktop_config.json`, or `.mcp.json` for Claude Code):

```json
{
  "mcpServers": {
    "setsmart": {
      "command": "npx",
      "args": ["-y", "setsmart-mcp"],
      "env": {
        "SETSMART_API_KEY": "your-workspace-api-key"
      }
    }
  }
}
```

### Cursor

Same block, in `~/.cursor/mcp.json`.

### Remote MCP, without this bridge

The SetSmart MCP server is also reachable directly over Streamable HTTP with OAuth, so clients that support remote MCP can skip this package entirely:

```
https://setsmart.io/api/mcp
```

Use this bridge when your client only speaks stdio, or when you would rather authenticate with a static API key than an interactive OAuth consent.

## Tools

30 tools, grouped by what they touch.

### Messaging

| Tool | What it does |
| --- | --- |
| `message_send_text` | Send a text message on Instagram, WhatsApp or Messenger |
| `message_send_image` | Send an image |
| `message_send_video` | Send a video |
| `message_send_audio` | Send a voice message |
| `message_send_template` | Send an approved WhatsApp template |
| `message_send_reaction` | React to a message |

### Conversations

| Tool | What it does |
| --- | --- |
| `conversation_list` | List conversations in the workspace |
| `conversation_search` | Search conversations by name, number or content |
| `conversation_get` | Read one conversation and its status |
| `conversation_get_messages` | Read the message history |
| `conversation_add_tag` | Tag a conversation |
| `conversation_remove_tag` | Remove a tag |
| `conversation_set_notes` | Write internal notes |

### Contacts

| Tool | What it does |
| --- | --- |
| `contact_find` | Find a contact by phone, email, Instagram username or tag |
| `contact_get` | Read one contact |
| `contact_import` | Create a contact |
| `contact_add_tags` | Add tags |
| `contact_remove_tags` | Remove tags |

### AI control

| Tool | What it does |
| --- | --- |
| `ai_get_all_status` | See where the AI assistant is active |
| `ai_pause_conversation` | Stop the assistant on one conversation, for a human handover |
| `ai_resume_conversation` | Hand it back to the assistant |
| `ai_pause_channel` | Pause a whole channel |
| `ai_resume_channel` | Resume a channel |

### Instagram

| Tool | What it does |
| --- | --- |
| `instagram_post_list` | List the account's posts |
| `instagram_post_get_triggers` | Read the comment triggers on a post |
| `comment_reply_get_auto_reply` | Read the automatic comment reply setup |

### Scheduling, templates and stats

| Tool | What it does |
| --- | --- |
| `scheduled_list` | List messages scheduled but not sent |
| `scheduled_cancel` | Cancel a scheduled message |
| `template_list` | List message templates |
| `analytics_stats` | Read conversation and reply stats |

## What it deliberately cannot do

An API key is a long lived static secret, so it gets a restricted surface. These are reachable through interactive OAuth on the remote server, never through this bridge:

- billing and subscription changes
- workspace settings
- connecting or disconnecting a channel
- creating or rewriting AI assistants
- bulk deletion, blacklists, blocked countries

Rotating the key in your SetSmart settings revokes access immediately, on the next request.

## Configuration

| Variable | Default | Purpose |
| --- | --- | --- |
| `SETSMART_API_KEY` | required | Your workspace API key |
| `SETSMART_MCP_URL` | `https://setsmart.io/api/mcp` | Override the upstream endpoint |

## How it works

This package contains no messaging logic. It is a stdio to Streamable HTTP pipe: your client speaks MCP over stdin and stdout, the bridge forwards each request to the hosted SetSmart MCP server with your key in the `Authorization` header, and streams the answer back. Around 150 lines, in [`src/index.js`](src/index.js), so you can read all of it before trusting it with an account.

## Links

- [SetSmart](https://setsmart.io)
- [REST API documentation](https://setsmart.io/api-documentation)
- [Model Context Protocol](https://modelcontextprotocol.io)

## License

MIT
ai-agentclaudecursordm-automationinstagraminstagram-dminstagram-mcpmcpmcp-servermessengermessenger-mcpmodel-context-protocolwhatsappwhatsapp-mcp

What people ask about instagram-mcp

What is setsmart-git/instagram-mcp?

+

setsmart-git/instagram-mcp is mcp servers for the Claude AI ecosystem. MCP server for Instagram, WhatsApp and Messenger DMs. Send and reply to direct messages, comments and templates through official Meta Business APIs. It has 0 GitHub stars and its last recorded update is dated 2026-08-25.

How do I install instagram-mcp?

+

You can install instagram-mcp by cloning the repository (https://github.com/setsmart-git/instagram-mcp) or following the README instructions on GitHub. ClaudeWave also provides quick install blocks on this page.

Is setsmart-git/instagram-mcp safe to use?

+

Our security agent has analyzed setsmart-git/instagram-mcp and assigned a Trust Score of 95/100 (tier: Verified). See the full breakdown of passed checks and flags on this page.

Who maintains setsmart-git/instagram-mcp?

+

setsmart-git/instagram-mcp is maintained by setsmart-git. The last recorded GitHub activity is dated 2026-08-25, with 0 open issues.

Are there alternatives to instagram-mcp?

+

Yes. On ClaudeWave you can browse similar mcp servers at /categories/mcp, sorted by popularity or recent activity.

Deploy instagram-mcp to your cloud

Ship this repo to production in minutes. Each platform spins up its own environment with editable env vars.

Maintain this repo? Add a badge to your README

Drop the badge into your GitHub README to show it's tracked on ClaudeWave. Each badge links back to this page and reflects the live Trust Score.

Featured on ClaudeWave: setsmart-git/instagram-mcp
[![Featured on ClaudeWave](https://claudewave.com/api/badge/setsmart-git-instagram-mcp)](https://claudewave.com/repo/setsmart-git-instagram-mcp)
<a href="https://claudewave.com/repo/setsmart-git-instagram-mcp"><img src="https://claudewave.com/api/badge/setsmart-git-instagram-mcp" alt="Featured on ClaudeWave: setsmart-git/instagram-mcp" width="320" height="64" /></a>

More MCP Servers

instagram-mcp alternatives