Skip to main content
Glama

extract_post

Harvest public Instagram posts, carousels, or reels from a URL, share link, or shortcode without login or API keys, and download exposed photos and videos plus a JSON manifest.

Instructions

Harvest a public Instagram post/carousel/reel: given a post URL, share link or bare shortcode, decodes the public embed surface and downloads every exposed photo and video (magic-byte verified) to out_dir. Returns the summary plus the full post_manifest envelope (author, caption, media URLs, local files, errors, decode-slot provenance). No login, no API keys. Large carousels can take a minute.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
urlYesInstagram post/reel URL, share link, or bare shortcode
out_dirNooutput directory; a fresh temp dir when omitted
download_mediaNofalse = manifest only, no files on disk

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full load and does well: it discloses side effects (files written to out_dir, magic-byte verified), auth requirements (none), and a latency warning ('Large carousels can take a minute'). It does not state failure/timeout behavior, but covers the major behavioral traits an agent needs.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the verb and resource, then adds return/manifest and constraint details in a single dense paragraph. Every clause is informative, though the parenthetical list of manifest contents is slightly heavy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema exists, yet the description enumerates the return envelope (author, caption, media URLs, local files, errors, decode-slot provenance) and covers auth, latency, and disk effects. For a 3-parameter tool this is complete enough for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents url, out_dir, and download_media. The description reinforces accepted URL forms and out_dir behavior but adds little parameter meaning beyond the structured fields, matching the baseline 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Specific verb (Harvest/download) plus resource (public Instagram post/carousel/reel), with scope made explicit ('public', 'given a post URL, share link or bare shortcode'). It clearly differentiates itself from siblings like lookup_post (metadata) and read_manifest (inspection) by describing end-to-end media download.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives clear context for use ('given a post URL... downloads every exposed photo and video') and constraints ('public', 'No login, no API keys'). It does not explicitly name when to prefer a sibling such as lookup_post over this tool, so it stops short of full when/when-not guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Deploy Server

Other Tools