Skip to main content
Glama

ig_publish_reel

Publish an Instagram Reel from a public video URL and wait for processing to complete.

Instructions

Publish a Reel (short video). Waits for video processing.

Input Schema

NameRequiredDescriptionDefault
captionNoReel caption
alt_textNoAlt text for accessibility
cover_urlNoCustom cover image URL
video_urlYesPublic HTTPS URL of the video
thumb_offsetNoThumbnail offset in ms
trial_paramsNoPublish as a Trial Reel; graduate manually or automatically based on performance
share_to_feedNoAlso share to feed (default true)
is_ai_generatedNoApply the AI info label to the published media
is_paid_partnershipNoApply the Paid partnership label
branded_content_sponsor_idsNoInstagram user IDs of up to two brand partners

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed4 schema fields changedv2.2.2
    • addedInput schema / properties / branded_content_sponsor_ids
      Added value: +{
      +  "description": "Instagram user IDs of up to two brand partners",
      +  "items": {
      +    "type": "string"
      +  },
      +  "maxItems": 2,
      +  "type": "array"
      +}
    • addedInput schema / properties / is_ai_generated
      Added value: +{
      +  "description": "Apply the AI info label to the published media",
      +  "type": "boolean"
      +}
    • addedInput schema / properties / is_paid_partnership
      Added value: +{
      +  "description": "Apply the Paid partnership label",
      +  "type": "boolean"
      +}
    • addedInput schema / properties / trial_params
      Added value: +{
      +  "additionalProperties": false,
      +  "description": "Publish as a Trial Reel; graduate manually or automatically based on performance",
      +  "properties": {
      +    "graduation_strategy": {
      +      "enum": [
      +        "MANUAL",
      +        "SS_PERFORMANCE"
      +      ],
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "graduation_strategy"
      +  ],
      +  "type": "object"
      +}
  2. First observedv2.0.1

TDQS

B3.1/5.0
Behavior3/5

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

With no annotations, the description carries the full burden, and it does disclose one meaningful behavior: the call blocks while video processing completes, which matters for timeout/retry strategy. However, it omits that this is an irreversible public write, whether a media container is created implicitly, and what the response contains, so transparency is partial.

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?

Two short sentences, front-loaded with the action and followed by the notable behavioral trait; nothing is redundant. It is arguably over-terse for a 10-parameter publish operation, but no sentence is wasted.

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

Completeness2/5

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

For a mutation tool with ten parameters, nested trial_params, no annotations, and no output schema, the description omits what is returned (media/container ID), error semantics, and account prerequisites. An agent could call it correctly only by reading the schema and guessing at the rest.

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 all ten parameters including the nested trial_params object are documented in the schema itself. The description adds no parameter-level meaning (e.g., constraints on video_url accessibility or caption length), which is acceptable at full coverage but earns only the baseline.

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

Purpose4/5

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

States a specific verb and resource ('Publish a Reel') with a parenthetical clarifying Reel means short video, which implicitly separates it from ig_publish_photo, ig_publish_carousel, and ig_publish_story. It does not explicitly distinguish itself from ig_publish_video, the closest sibling, so the differentiation is inferred rather than stated.

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

Usage Guidelines2/5

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

There is no guidance on when to choose this over ig_publish_video, ig_publish_story, or threads_publish_video, and no prerequisites (business/creator account, public HTTPS URL requirement, rate limits) are mentioned. The agent must infer everything about selection from the tool name alone.

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