Skip to main content
Glama

Publish media container

instagram_publish_media

Publish a finished Instagram media container to your professional account. Use after container status is FINISHED; verify no prior duplicate before retrying.

Instructions

Phase 2 of publishing: publish a media container that has finished processing, returning the new media id. The container must be FINISHED (see instagram_get_container_status). This is never auto-retried — a repeated publish costs quota and posts a duplicate; retry only after confirming the previous call did not already publish.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
applyNoSet true to actually perform this write. Omitted (or false) returns a non-mutating preview of exactly what would happen and calls nothing, unless IG_WRITE_MODE=apply is configured. An explicit false always forces preview.
accountNoName of the configured account profile to operate as (multi-account). Omit to use the default profile (IG_ACTIVE_PROFILE).
creationIdYesThe FINISHED media container id (creation_id) to publish.
Behavior5/5

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

The description adds meaningful behavior beyond annotations: publishing is never auto-retried, a repeated publish costs quota and posts a duplicate, and retry requires external confirmation. This complements idempotentHint=false with concrete operational consequences.

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?

Three sentences, each earning its place: purpose and outcome, required precondition, and retry/idempotency warning. The critical information is front-loaded and there is no filler.

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?

Despite lacking an output schema, the description states the return value (new media id), covers the prerequisite, and addresses the main operational risk (duplicate posts/quota). For a 3-parameter tool with fully documented schema, this is complete.

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?

The input schema already covers all three parameters at 100% coverage, so the description does not need to document them. It does usefully reinforce that creationId must reference a FINISHED container, but adds no substantial parameter meaning beyond the schema.

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 ('publish') and resource ('media container') and identifies this as 'Phase 2 of publishing,' clearly distinguishing it from container creation and status checking. It also describes the outcome: returning the new media id.

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

Usage Guidelines5/5

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

Gives an explicit precondition: the container must be FINISHED, and points to instagram_get_container_status to verify. It also gives clear when-not-to-retry guidance: never auto-retry; only retry after confirming the previous call did not already publish.

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

Install Server

Other Tools

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/IvanBBaev/instagram-mcp'

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