Skip to main content

A Model Context Protocol server that lets AI assistants read and send Instagram DMs

Project description

Instagram DMs MCP

A Model Context Protocol (MCP) server that lets AI assistants read and send Instagram DMs.

Deploy to Render

Deployment

Option 1: One-Click Deploy (Render)

  1. Click the "Deploy to Render" button above
  2. Add your environment variables in Render dashboard:
    • IG_COOKIES - Your Instagram cookies as JSON (see below)
    • POKE_API_KEY - Your Poke API key (optional, for DM notifications)
  3. Your MCP server will be at https://your-service.onrender.com/mcp

Option 2: Local Development

Quick Start

1. Get Your Instagram Cookies

  1. Go to instagram.com and log in
  2. Open DevTools (F12) → Application tab → Cookieshttps://www.instagram.com
  3. Copy these values into your .env:
Cookie Env Variable
sessionid IG_SESSION_ID
ds_user_id IG_USER_ID
csrftoken IG_CSRF_TOKEN
datr IG_DATR
ig_did IG_DID
mid IG_MID

2. Setup

git clone https://github.com/braindead-dev/instagram-dms-mcp.git
cd instagram-dms-mcp

# Build the gateway (requires Go 1.22+)
cd gateway && ./build.sh && cd ..

# Configure
cp env.example .env
# Edit .env with your cookies

# Run
pip install -r requirements.txt
python src/server.py

Tools

Tool Description
get_inbox() See all your conversations
get_conversation(user) Read messages with someone
send_message(user, message) Send a message
react(user, emoji) React to their last message

Example Flow

User: "Check my Instagram DMs"
→ get_inbox()

User: "What did @johndoe say?"
→ get_conversation("johndoe")

User: "Reply with 'sounds good!'"
→ send_message("johndoe", "sounds good!")

User: "React with a heart"
→ react("johndoe", "❤️")

Incoming DM Notifications (Poke)

To get notified when you receive new DMs:

  1. Get your API key from poke.com/settings/advanced
  2. Add to .env:
    POKE_API_KEY=your_key_here
    

New DMs will be forwarded to Poke as: 📩 Instagram DM from @username: message

Behavior Settings

The MCP simulates natural behavior by default:

Setting Default Description
IG_SIMULATE_TYPING true Show typing indicator before sending
IG_AUTO_MARK_SEEN true Mark as read when opening conversation
IG_TYPING_DELAY 1.5 Seconds to "type" before sending

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file iflow_mcp_braindead_dev_instagram_dms_mcp-0.1.0.tar.gz.

File metadata

  • Download URL: iflow_mcp_braindead_dev_instagram_dms_mcp-0.1.0.tar.gz
  • Upload date:
  • Size: 212.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.25 {"installer":{"name":"uv","version":"0.9.25","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for iflow_mcp_braindead_dev_instagram_dms_mcp-0.1.0.tar.gz
Algorithm Hash digest
SHA256 d20e3ee70438cdaab36f5626da32d52b826c31cabe4bbeda013b3f51c5e227a1
MD5 7eddf2039cd2d5412957ee02d4569e1f
BLAKE2b-256 2434c6b5f4c2ce770dcce4ed73f91650e3c47b45ee01b6c209f8d2b3dd21c5ba

See more details on using hashes here.

File details

Details for the file iflow_mcp_braindead_dev_instagram_dms_mcp-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: iflow_mcp_braindead_dev_instagram_dms_mcp-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 16.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.25 {"installer":{"name":"uv","version":"0.9.25","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for iflow_mcp_braindead_dev_instagram_dms_mcp-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e2198aa352d18cf83bcfde9c149d0f8a758d5e97fd235130dfabcd7f6683eb41
MD5 2c85f7bec6cb49c546faa5d318f27ef0
BLAKE2b-256 079b2291cea6ad1538f0b0a9561703784bd0d85d1ccbdf29bfc52e0dc4970a06

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page