Skip to main content
Glama
instagram-mcp-server

instagram-mcp-server

by qaassimq

Get Media

instagram_get_media
Read-onlyIdempotent

Retrieve a single Instagram media object by ID to get its caption, media type, engagement counts, and permalink; use media IDs from the listing tool for lookup.

Instructions

Get one media object by ID, with caption, type, engagement counts and permalink.

Use instagram_list_media to find IDs. For a carousel, instagram_get_media_children lists the individual photos and videos inside it.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "media_id": "<media_id>"
    },
    "name": "instagram_get_media"
  }
}

Input Schema

NameRequiredDescriptionDefault
fieldsNoSpecific fields to request. Omit for a sensible default set: id, caption, media_type, media_product_type, media_url, permalink, thumbnail_url, timestamp, …
media_idYesInstagram media ID
response_formatNo'markdown' for readable text, 'json' for structured datamarkdown

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare read-only, idempotent, non-destructive, open-world behavior, so the safety profile is covered. The description adds useful context the annotations do not: that it fetches a single object and what data class comes back, plus the pointer to the children tool for carousels, which signals single-node scope.

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

Conciseness5/5

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

Two short sentences, front-loaded with the core action and follow-on guidance in a second sentence. No filler or restatement of the title.

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?

With no output schema, the description compensates by summarizing the return payload, and with rich annotations plus full schema coverage the remaining fields are self-documenting. Everything an agent needs to pick and call this tool is present.

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%, with all three parameters documented including defaults for fields and response_format, so the schema carries the parameter burden. The description adds no parameter-level detail beyond implying that a media ID identifies the node; baseline 3 applies.

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?

States a specific verb and resource ('Get one media object by ID') and enumerates the returned content (caption, type, engagement counts, permalink), which separates it cleanly from instagram_list_media and instagram_get_media_insights.

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?

Explicitly routes the agent to instagram_list_media for ID discovery and to instagram_get_media_children for carousel contents, covering the two main wrong-tool risks. It stops short of stating exclusions or prerequisites (e.g., required permissions), so it is clear context rather than a full when/when-not contract.

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