Skip to main content
Glama

mcp-instagram

Overview

MCP server for downloading Instagram content (videos, reels, audio, carousels) using yt-dlp. Supports both stdio and HTTP streamable transports, selectable via a CLI argument.

Tech Stack: Python 3.13, FastMCP 2.x, yt-dlp, Typer, Pydantic, OpenTelemetry, Ruff, mypy

Related MCP server: MCP YouTube Downloader

Installation

uv tool install .

After installation, the mcp-instagram binary is available system-wide.

Usage

stdio mode (for Claude Desktop, pi)

mcp-instagram stdio
mcp-instagram stdio --verbose
mcp-instagram stdio --quiet

HTTP streamable mode

mcp-instagram http
mcp-instagram http --verbose

Default: http://127.0.0.1:8000

Configuration

All settings are loaded from environment variables (prefix MCP_INSTAGRAM_) or a .env file.

Variable

Default

Description

MCP_INSTAGRAM_OUTPUT_DIR

~/Downloads/instagram

Directory where downloads are saved

MCP_INSTAGRAM_COOKIES_FILE

(empty)

Path to a Netscape-format cookies.txt file

MCP_INSTAGRAM_HTTP_HOST

127.0.0.1

Host for HTTP mode

MCP_INSTAGRAM_HTTP_PORT

8000

Port for HTTP mode

MCP_INSTAGRAM_DEBUG

false

Enable debug mode

Copy .env.example to .env and edit as needed.

Claude Desktop / pi MCP config (stdio)

Add to your claude_desktop_config.json or pi MCP config:

{
  "mcpServers": {
    "mcp-instagram": {
      "command": "mcp-instagram",
      "args": ["stdio"]
    }
  }
}

Cookies setup

Instagram limits access to public content and blocks most authenticated content without cookies. To provide cookies, log into Instagram in your browser, export your cookies as a Netscape-format cookies.txt file (e.g., using the "Get cookies.txt LOCALLY" Chrome extension), save it anywhere on disk, then set MCP_INSTAGRAM_COOKIES_FILE=/path/to/cookies.txt in your .env or environment. The file is passed directly to yt-dlp's cookiefile option.

Tools

Tool

Description

download_video

Download a video, reel, or IGTV. Returns local path and metadata.

download_audio

Download audio only as MP3. Returns local path and metadata.

download_carousel

Download all items in a carousel/sidecar post. Returns list of paths.

get_metadata

Fetch post metadata without downloading (title, duration, counts, etc.).

Development

make sync        # Install dependencies
make check       # Full quality gate (lint, format, typecheck, security, tests)
make test        # Run tests only
make run ARGS='stdio --help'
A
license - permissive license
-
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

View all related MCP servers

Related MCP Connectors

  • Download YouTube, TikTok, Vimeo, SoundCloud and 6 more platforms from any MCP AI chatbot.

  • Any social-video URL → transcript, metadata, frames, OCR, summary, search, Q&A. MCP server + x402.

  • MCP server for the FFmpeg Micro video transcoding API — create, monitor, download transcodes.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/smorand/mcp-instagram'

If you have feedback or need assistance with the MCP directory API, please join our Discord server