Skip to main content
Glama
navidmoazzez

Threads MCP

by navidmoazzez

Stage a post without publishing it

stage_post

Draft a Threads post privately without publishing it. The post remains invisible for 24 hours, allowing review before going public, and can be published later with publish_staged.

Instructions

Build a media container without publishing. Nothing appears anywhere: the container is invisible, holds for 24 hours, and is published later with publish_staged. This is the only draft state Threads has, and the right way to show a human a post before it goes public. Nothing is public, so no confirmation is needed.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
textNoPost body. 500 characters, and emoji count as UTF-8 bytes.
accountNoWhich connected Threads profile to act as, by username (for example 'thenavidm'). Defaults to the first connected profile. Call list_accounts to see them.
alt_textNoAlt text for the attached image or video.
image_urlNoPublic HTTPS URL of a JPEG or PNG, 8MB or less. Threads fetches it itself; there is no upload endpoint.
topic_tagNoOne topic tag, without the #. 1-50 characters, no periods or ampersands.
video_urlNoPublic HTTPS URL of an MP4 or MOV, up to 1GB and 5 minutes.
reply_to_idNoNumeric id of the post this replies to.
quote_post_idNoNumeric id of a post to quote.
reply_controlNoWho may reply. Defaults to everyone.
link_attachmentNoA URL to render as a preview card. Text-only posts only; it cannot be combined with media.
enable_reply_approvalsNoHold replies for approval before they appear. Read the queue with get_pending_replies.
allowlisted_country_codesNoRestrict who can see this post to these ISO 3166-1 alpha-2 country codes. Needs a profile Meta has made eligible; whoami reports whether this one is.
Install Server

TDQS

A4.3/5.0
Behavior5/5

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

Beyond the annotations (openWorldHint true, readOnlyHint false), the description discloses key behaviors: the container is invisible, holds for 24 hours, is published later with publish_staged, and causes no public visibility. This gives an agent a concrete mental model of side effects rather than just generic mutation flags.

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?

The description is short and front-loaded with the core purpose. There is slight redundancy between 'Nothing appears anywhere' and 'Nothing is public,' but the rest of the sentences earn their place by explaining the 24-hour hold, the publish_staged relationship, and the human-review use case.

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

Completeness4/5

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

For a 12-parameter tool with no output schema, the description covers the crucial workflow: stage, hold for 24h, publish later, nothing is public. It does not spell out the return value, but the term 'container' and the explicitly named publish_staged step make the flow intelligible.

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 baseline is 3. The description adds no parameter-level detail, but it does not need to: the schema already documents constraints like 500-character limit with emoji bytes, public HTTPS URLs, media type limits, and reply_control enum values.

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?

The description opens with a specific verb and resource: 'Build a media container without publishing.' It clearly distinguishes this from publishing tools by stating nothing appears anywhere and calling it 'the only draft state Threads has,' so an agent can tell it apart from create_post and publish_staged.

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?

The description gives clear usage context: this is the draft state and 'the right way to show a human a post before it goes public,' and it names publish_staged as the follow-up. It does not explicitly state 'use create_post instead if you want to publish immediately,' so it stops short of full when-not guidance.

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

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/navidmoazzez/threads-mcp'

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