Instagram MCP Server
Instagram Graph API access for AI agents to read, publish, and manage interactions.
Data last scanned 2 days ago · Reviewed 2 days ago
Overview
This Python-based MCP server provides an interface to the Instagram Graph API, enabling AI clients to interact with Instagram Business and Creator accounts. It bundles 24 distinct tools categorized into profile management, content publishing, comment handling, direct messaging, and performance insights.
Our verdict
This server carries a high risk level with a security score of 35/100. Because it is community-maintained rather than official and lacks an independent editorial review, users should exercise extreme caution regarding data handling and API authorization. It is intended for advanced users who understand the implications of integrating third-party code with social media credentials.
- Supports 24 distinct tools across five capability areas.
- Zero direct dependencies reduce the supply-chain footprint.
- Includes a bundled helper utility to simplify token generation.
- Community-maintained with no official vendor support.
- Security-sensitive OAuth and read-only modes remain unreviewed.
- Requires high-privilege permissions like Instagram message and content management.
Tools
| Tool | Description | Risk |
|---|---|---|
| get_my_profile | Profile info: bio, followers, media count, etc. | low |
| list_my_media | One page of recent posts | low |
| list_all_media | Auto-paginate through all media | low |
| get_media | Fetch a single media item | low |
| list_tagged_media | Posts the account is tagged in | low |
| list_stories | Currently-live stories (24h window) | low |
| search_hashtag | Resolve a #tag to its ID | low |
| hashtag_top_media | Top-ranked posts for a hashtag | low |
| hashtag_recent_media | Recent posts for a hashtag (24h window) | low |
| publish_image | Single image post from a public URL | medium |
Compatibility
| Client | Local | Docker | Remote | Read-only |
|---|---|---|---|---|
| Claude Desktop | ||||
| Cursor | ||||
| VS Code | ||||
| Windsurf | ||||
| ChatGPT |
Frequently asked questions
›What type of Instagram account is required to use this server?
You must use an Instagram account switched to either a Business or Creator account that is linked to a Facebook Page.
›What permissions are needed to operate this MCP server?
You need a token with a specific set of scopes including instagram_basic, instagram_content_publish, instagram_manage_comments, instagram_manage_messages, instagram_manage_insights, pages_show_list, pages_read_engagement, and business_management.
›How do I handle authentication and token management?
You can use the bundled helper command instagram-mcp-get-token to exchange a short-lived user token for a long-lived Page token, which will automatically configure your .env file.
›Are there specific requirements for publishing media through this server?
Yes, all media must be hosted on a publicly accessible HTTPS URL because Meta fetches the media server-side.
›Can I send direct messages at any time?
By default, send_dm only functions within a 24-hour window after a user-initiated message. Sending messages outside of this window requires a message_tag that has received prior Meta approval.
›Are there limitations to the number of posts I can publish?
Yes, most Business accounts are limited to a publishing quota of 100 posts per 24-hour rolling window.
Alternatives
Changelog
- Improvedv0.1.1 — Initial release
2026-05-14
Badge
Maintain this server? Add the live badge to your README.