Skip to main content
Glama
Upload-Post

Upload-Post

Official

Start an AutoDM or comment auto-reply

start_autodm

Starts a monitor that auto-replies to comments on a chosen post: private DMs on Instagram, public replies on TikTok, YouTube, Facebook, Threads and Bluesky. Optionally filter comments by trigger keywords.

Instructions

Watch one of the profile's posts and automatically answer everyone who comments on it (optionally only comments containing trigger_keywords, e.g. 'comment POST'). On Instagram (default) the answer is a private DM with reply_message and up to 3 link buttons. On tiktok, youtube, facebook, threads and bluesky it is a PUBLIC reply under each matching comment; links in TikTok replies are not clickable, so point people to the bio. Instagram and TikTok answer new comments within seconds; youtube, facebook, threads and bluesky check for them every monitoring_interval minutes (15 minimum). At most 25 replies per interval (10 on YouTube), and the monitor stops after 15 days. Returns the monitor ID used by the other AutoDM tools. Needs the user's approval: call it first without confirmed to get a preview (nothing is sent), show the user exactly what will go out, and repeat the call with confirmed: true only after they approve.

Input Schema

NameRequiredDescriptionDefault
buttonsNoInstagram only: up to 3 web_url buttons ({ title, url }) added to each DM.
post_idNoPost to watch on tiktok/youtube/facebook/threads/bluesky (instead of post_url): TikTok video id, YouTube video id, Facebook post id ('{pageId}_{postId}'), Threads post id, Bluesky at:// URI. A TikTok or YouTube URL is also accepted.
platformNoNetwork of the post. Default instagram, which answers with a private DM. tiktok, youtube, facebook, threads and bluesky have no private reply to a comment, so matching comments get a PUBLIC reply under the comment instead.
post_urlNoPost URL to watch. Required on Instagram; on the other networks post_id is preferred.
confirmedNoSet to true only after the user has seen the preview this tool returns without it and approved it. Without it nothing is sent.
reply_messageYesText sent to matching commenters: a DM on Instagram, a public reply elsewhere.
reply_messagesNoPublic replies only: up to 5 alternative texts, rotated across comments so TikTok and YouTube do not see the same reply over and over.
profile_usernameYesUpload-Post profile name that owns the connected account.
trigger_keywordsNoKeyword or keywords; when set, only comments containing them are answered (case and accents ignored).
monitoring_intervalNoMinutes between comment checks. Minimum is 15. Instagram and TikTok answer within seconds, so there it only paces a backup check.

Output Schema

NameRequiredDescriptionDefault
resultNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.17.2

TDQS

A4.7/5.0
Behavior5/5

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

Beyond the annotations (readOnly=false, destructive=false, openWorld=true), it discloses concrete operational traits: per-interval reply caps (25, or 10 on YouTube), a 15-day monitor lifetime, near-real-time vs. polling cadence, non-clickable TikTok links, and that the call returns a monitor ID. It also makes clear nothing is sent until confirmed, which is exactly the side-effect transparency 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.

Conciseness5/5

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

It is dense but front-loaded: what it does first, then platform behavior, then limits, then the confirmation protocol. Every sentence carries actionable information and none restates the name or 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 an output schema and annotations already present, the description still covers the gaps an agent would otherwise guess at: rate limits, monitor expiry, per-platform delivery differences, and the safe confirmation flow. Nothing material for correct invocation is missing.

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

Parameters4/5

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

Schema coverage is 100%, so the schema carries the baseline; the description adds cross-parameter meaning such as platform selecting DM vs. public reply, `buttons` being Instagram-only, and `monitoring_interval` merely pacing a backup check on Instagram/TikTok. It gives a trigger_keywords example ('comment POST') that clarifies intent beyond the schema wording.

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 precise verb+resource: it watches a post and auto-answers commenters, with per-platform reply semantics spelled out. It is clearly distinct from siblings like pause_autodm/resume_autodm/list_autodms, which operate on an existing monitor rather than creating one.

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?

It states the required two-step approval workflow (call without `confirmed` for a preview, then repeat with `confirmed: true`) and explains platform-driven behavior that affects the choice. It does not explicitly point at sibling tools such as manage_autodms for later edits, so it stops short of full alternative routing.

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