Download media from a specific Instagram direct message and get the local file path. Args: message_id: The ID of the message containing the media thread_id: The ID of the thread containing the message download_path: Directory to save the downloaded file (default: ./downloads) Returns: A dictionar...
AI agents call download_media_from_message to retrieve information from Instagram DM MCP Server without modifying anything — typically the context-gathering step in research, monitoring, and reporting workflows, before the agent takes action elsewhere.
The tool retrieves (downloads) existing media content from messages, which is fundamentally a read operation. While it writes files locally, this is a necessary side effect of retrieval rather than the tool's primary purpose (modifying or creating data in the Instagram system itself). No messages are modified, deleted, or executed.
From the tool's definition Tool downloads and retrieves media from Instagram direct messages—specifically described as 'Download media from a specific Instagram direct message and get the local file path.' This is a data retrieval operation with no modification, deletion, or execution…
Documented attack patterns abuse exactly the kind of access download_media_from_message gives an agent:
PolicyLayer is an MCP gateway — it sits between your AI agents and Instagram DM MCP Server, and nothing reaches the server without passing your rules. This is the rule we recommend for download_media_from_message:
{
"version": "1",
"default": "deny",
"tools": {
"download_media_from_message": {}
}
} download_media_from_message is read-only, so it stays allowed — but everything else on the server is denied unless you say otherwise.
Free to start. No card required.
Download media from a specific Instagram direct message and get the local file path. Args: message_id: The ID of the message containing the media thread_id: The ID of the thread containing the message download_path: Directory to save the downloaded file (default: ./downloads) Returns: A dictionary containing success status, a status message, and the file path if successful. It is categorised as a Read tool in the Instagram DM MCP Server MCP Server, which means it retrieves data without modifying state.
Register the Instagram DM MCP Server MCP server in PolicyLayer and add a rule for download_media_from_message: allow, deny, rate-limit, or require approval. Point your MCP client at the PolicyLayer proxy URL and the rule is enforced on every call, before it reaches Instagram DM MCP Server. Nothing to install.
download_media_from_message is a Read tool with low risk. Read-only tools are generally safe to allow by default.
Yes. Add a rate_limit block to the download_media_from_message rule in your PolicyLayer policy. For example, setting max: 10 and window: 60 limits the tool to 10 calls per minute. Rate limits are tracked per agent session and reset automatically.
Set action: deny in the PolicyLayer policy for download_media_from_message. The AI agent will receive a policy violation error and cannot call the tool. You can also include a reason field to explain why the tool is blocked.
download_media_from_message is provided by the Instagram DM MCP Server MCP server (trypeggy/instagram_dm_mcp). PolicyLayer sits as a proxy in front of this server to enforce policies before tool calls reach the server.
Deterministic rules across all 25 Instagram DM MCP Server tools. Per-identity grants. Full audit log. Live in minutes. Nothing to install.
Free to start. No card required.
25 Instagram DM MCP Server tools catalogued and risk-classified — across an index of 42,500+ MCP servers.