Instagram Relationship MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| INSTAGRAM_MCP_DATA_DIR | No | Absolute local directory for storing browser profile and database. Default: %LOCALAPPDATA%\InstagramRelationshipMcp | |
| INSTAGRAM_MCP_LOG_LEVEL | No | Log level. Default: info, allowed: debug, info, warn, error, silent | |
| INSTAGRAM_MCP_NETWORK_RETRIES | No | Number of retries for network requests. Default: 1, allowed: 0-3 | |
| INSTAGRAM_MCP_RESULT_PAGE_SIZE | No | Default number of results per page. Default: 50, allowed: 1-100 | |
| INSTAGRAM_MCP_CACHE_TTL_MINUTES | No | Cache time-to-live in minutes. Default: 15, allowed: 1-1440 | |
| INSTAGRAM_MCP_FOLLOWING_PAGE_SIZE | No | Number of following items to fetch per page. Default: 12, allowed: 1-200 | |
| INSTAGRAM_MCP_MAX_FOLLOWING_PAGES | No | Maximum number of following pages to fetch. Default: 10000, allowed: 1-100000 | |
| INSTAGRAM_MCP_LOGIN_TIMEOUT_SECONDS | No | Timeout for login in seconds. Default: 300, allowed: 30-1800 | |
| INSTAGRAM_MCP_INTER_REQUEST_DELAY_MS | No | Delay between requests in milliseconds. Default: 250, allowed: 0-10000 | |
| INSTAGRAM_MCP_RELATIONSHIP_BATCH_SIZE | No | Batch size for checking relationship statuses. Default: 12, allowed: 1-200 | |
| INSTAGRAM_MCP_REQUEST_TIMEOUT_SECONDS | No | Timeout for HTTP requests in seconds. Default: 30, allowed: 5-120 | |
| INSTAGRAM_MCP_NAVIGATION_TIMEOUT_SECONDS | No | Timeout for page navigation in seconds. Default: 45, allowed: 5-180 |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| instagram_connectA | Use this when the user wants to connect Instagram or resume an unfinished local login. It reuses a verified saved session; otherwise it opens the dedicated local Chromium profile and returns immediately with LOGIN_PENDING. Credentials, 2FA, and challenge responses must be entered only on instagram.com; then use instagram_connection_status. |
| instagram_connection_statusA | Use this when the user wants to check whether Instagram is connected, especially after instagram_connect returned LOGIN_PENDING. It reports the current login or session state and never asks for credentials. |
| instagram_get_non_followersA | Returns accounts the connected user follows that explicitly do not follow the user back. Fetches a complete Following list before classification, reports unknown statuses, caches normalized results locally, and paginates MCP output. |
| instagram_disconnectA | Closes Chromium and permanently deletes the dedicated Instagram browser profile plus locally derived account and relationship data. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 4 tools
Each tool has a distinct role: connect initiates login, status checks login state, get_non_followers performs the main analysis, and disconnect cleans up. There is no overlap or ambiguity between them.
All tools share the 'instagram_' prefix, but the verb usage is slightly inconsistent: 'connect' and 'disconnect' are bare verbs, 'connection_status' is a noun phrase, and 'get_non_followers' uses a get_ prefix. Overall the pattern is readable and predictable.
With 4 tools, the server is well-scoped for its specific purpose of managing Instagram relationships. Each tool is necessary and none feel redundant.
The set covers the full lifecycle from connect to disconnect, with the core non-follower analysis in between. Minor gaps exist, such as no explicit refresh action or follow/unfollow operations, but these are outside the stated purpose.