
Mcp Instagram Dm
io.github.KynuxDevPublished by GitHub account KynuxDevv2.1.1Updated Oct 24, 2026
Read, send, search & manage Instagram DMs through AI assistants. 15 tools, cookie auth.
Overview
Lets an assistant read, search, send, and manage Instagram Direct Messages using your own session cookies.
- What you can do
- Bridges an MCP-compatible assistant to Instagram's private web API through 15 tools. Read tools list the inbox, fetch thread messages with auto-pagination, show pending DM requests, and return user or thread details. Write tools send text or links, start new threads, react with emoji, unsend your own messages, mark threads seen, and approve pending requests. Search tools find conversations, messages within a thread, and users.
- When to use it
- Useful if you want to triage, search, or reply to Instagram DMs in natural language from a desktop assistant instead of the app. Best for personal, low-volume use by someone comfortable handling their own session cookies.
- Requirements
- Runs locally over stdio, typically via npx mcp-instagram-dm, so Node.js is needed. Requires three environment variables from your logged-in Instagram browser session: INSTAGRAM_SESSION_ID, INSTAGRAM_CSRF_TOKEN, and INSTAGRAM_DS_USER_ID. Optional INSTAGRAM_RATE_LIMIT_MS controls pagination delay. Desktop clients only; network access to Instagram is required.
Installation
In SourceWeft
- Open Mcp Instagram Dm in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
📨 MCP Instagram DM
Control your Instagram DMs with AI
Read, send, search, and manage Instagram Direct Messages through natural language with any MCP-compatible AI assistant.
[npm version] [npm downloads] [GitHub stars]
[CI] [License: MIT] [Node.js] [TypeScript] [MCP]
A Model Context Protocol server that bridges Instagram Direct Messages with AI assistants like Claude, Cursor, and any MCP-compatible client.
Cookie-based authentication — no API keys, no OAuth, just works.
Getting Started · Features · Configuration · Tools Reference · Contributing
💡 If you find this useful, please consider giving it a ⭐ — it helps others discover the project!
⚡ Getting Started
Get up and running in under 60 seconds:
1. Add to your MCP config (Claude Desktop, Claude Code, or Cursor):
2. Talk to your AI assistant:
"Read my Instagram DMs"
That's it — you're ready. 🎉
Need help getting your cookies? See Configuration below.
🎬 What It Looks Like
✨ Features
15 tools across three categories — everything you need to manage your Instagram DMs:
📥 Read & Monitor
✏️ Send & Manage
🔍 Search & Discover
📦 Installation
npx (recommended — zero install)
npm global
From source
🔧 Configuration
Getting Your Cookies
- Open instagram.com in Chrome and log in
- Press
F12→ Application tab → Cookies →https://www.instagram.com - Copy these three values:
💡 Tip: You can also run
node get-cookies.jsfor a guided walkthrough.
Environment Variables
Client Setup
Claude Desktop
Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
Claude Code
Add to your project's .mcp.json:
Cursor
Add to .cursor/mcp.json in your project:
💬 Usage Examples
Just talk naturally to your AI assistant:
📖 Tools Reference
View all 15 tools with parameters
🏗️ Architecture
Design principles:
- Single dependency — only
@modelcontextprotocol/sdk. No axios, no puppeteer, no bloat. - TypeScript strict — zero
anytypes, fully typed interfaces insrc/types.ts - Auto-pagination — request 500 messages and the server handles the rest with rate limiting
- 14+ message types — text, media, voice, reels, links, clips, GIFs, posts, stories, and more
🔒 Security
- Session cookies are never logged or stored beyond runtime
- All credentials are read from environment variables only
- No data is sent to any third-party service
- See SECURITY.md for reporting vulnerabilities
⚠️ Disclaimer
This project uses Instagram's unofficial web API, which may change without notice.
- Personal use only — do not use for spam, mass messaging, or automation that violates Instagram's Terms of Service
- Your session cookies are sensitive credentials — never share or commit them
- This project is not affiliated with, endorsed by, or connected to Meta or Instagram
- Use at your own risk — the authors are not responsible for any account restrictions
🤝 Contributing
Contributions are welcome! Please see CONTRIBUTING.md for development setup and guidelines.
If you'd like to support the project financially, consider sponsoring on GitHub.
📄 License
If this project helped you, consider giving it a ⭐
Source: README.md at commit 6e435f1
Tools
0Version history
1- v2.1.1LatestSep 16, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts