Skip to main content
Glama
chatgenius-mcp

chatgenius-mcp

Official
by SumCodeAI

create_post

Create a draft or scheduled post for Instagram, Facebook, or TikTok with captions, hashtags, and platform settings; add media afterward before publishing.

Instructions

Create a post. Creates a draft, or a scheduled post when scheduled_at is set (ISO-8601 with offset; a bare local time is read in the account timezone). Upload media afterwards with POST /posts/{id}/media, then publish or schedule. Rules: TikTok-only posts cannot be a carousel or story and carry no first comment or comment auto-reply; scheduling needs a caption (stories excepted) and a future time; the plan's monthly cap counts scheduled and published posts, a plain draft never holds a slot; a comment auto-reply on a scheduled post needs a free live comment-trigger slot (403 plan_limit_reached). tiktok.privacy_level must be one of the creator's options from GET /posts/capabilities.

Input Schema

NameRequiredDescriptionDefault
tiktokNoTikTok settings. Ignored unless TikTok is a target.
captionNo
hashtagsNoWithout the #.
platformNoA target set. both = Instagram + Facebook; all = all three.instagram
post_typeNofeed_post
scheduled_atNoISO-8601. Null on PATCH turns a scheduled post back into a draft.
collaboratorsNoInstagram usernames to invite as collaborators. Instagram only.
first_commentNoPosted under the post right after publish. Instagram and Facebook only.
cover_offset_msNoReels: which frame is the cover.
comment_auto_replyNoBecomes a comment trigger scoped to this post when it publishes, one per Instagram/Facebook target, with the comment trigger rules. Past the live-trigger cap it is saved paused (see comment_triggers). Instagram and Facebook only.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.2

TDQS

A4.2/5.0
Behavior5/5

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

Beyond the annotations (readOnly=false, destructive=false, idempotent=false) the description discloses non-obvious behavior an agent could not guess: a plain draft never consumes a plan slot while scheduled/published posts do, TikTok-only posts reject carousel/story and carry no first comment, and a scheduled-post auto-reply without a free live-trigger slot fails with 403 plan_limit_reached. The timezone interpretation of a bare local time and the paused-save behavior for triggers are exactly the kind of consequences annotations cannot convey.

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?

Purpose and draft-vs-scheduled behavior are front-loaded, then media flow, then a compact "Rules:" block of exceptions. The prose is dense and the TikTok/comment-trigger rule sentences are long, but each clause encodes a real constraint rather than filler.

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 10-parameter tool with a nested tiktok and comment_auto_reply object, no output schema, and plan-tier gating, the description covers the failure modes and side effects well. The remaining gap is that with zero required parameters it never states the minimum needed to create anything meaningful, nor what the create response returns for the subsequent media upload step.

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 80%, so the baseline would be 3, but the description adds real meaning on top: scheduled_at accepts ISO-8601 with offset and a bare local time is resolved against the account timezone, and tiktok.privacy_level is constrained to the creator's live options from a sibling endpoint. It does not, however, add anything for platform, post_type, hashtags or caption beyond what the schema already says.

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?

The description opens with a specific verb and resource ("Create a post") and immediately narrows the outcome type: a draft by default, a scheduled post when scheduled_at is set. That distinction separates it in spirit from schedule_post/publish_post/update_post, though those siblings are never named, so an agent must infer the boundary rather than read it.

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 gives a clear operational sequence (create, then POST /posts/{id}/media, then publish or schedule) and states concrete preconditions: scheduling requires a caption and a future time, TikTok privacy_level must come from GET /posts/capabilities. What's missing is explicit when-not guidance or a named alternative tool for the cases this tool refuses (e.g., where to go for an existing-post edit).

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

Deploy Server

Other Tools