Skip to main content
Glama

Create or schedule a post

create_post

Create a post on one or more connected social accounts. Call list_social_accounts first and only use accounts with can_post: true, copying their platform_slug and uid exactly — never guess platform_slug. You must choose exactly one of: scheduled_at (ISO 8601 with timezone offset or Z, in the future) to schedule, or publish_now: true to publish to the real accounts immediately. Publishing is irreversible — only set publish_now after the user has explicitly asked to publish now; when in doubt, schedule. Returns the new post_uid for reschedule_post / cancel_post. publish_now only queues publishing; check list_posts for the result. Some platforms need extra settings: YouTube needs youtube (title, tags, category, privacy) and one video; TikTok needs tiktok (privacy_level the user chose from get_tiktok_creator_info); Pinterest needs pinterest (board_id from list_pinterest_boards); Dev.to needs devto (title, optional tags, canonical_url, description, series, published) and must be posted on its own. The same settings apply to every account of that platform in this post.

Input Schema

NameRequiredDescriptionDefault
devtoNoRequired when posting to Dev.to. text_content is the article body in Markdown; the first image in media_uids becomes the cover. Dev.to articles cannot be deleted or edited from Feedlio once published. Post Dev.to on its own (no other platforms in the same post).
tiktokNoRequired when posting to TikTok. Call get_tiktok_creator_info first.
youtubeNoRequired when posting to YouTube. Use content_type reel_or_short for a Short (vertical video, max 60s) and normal_post for a regular (landscape) video. Exactly one video in media_uids.
pinterestNoRequired when posting to Pinterest: the board to pin to.
platformsYesOne or more platform accounts to post to
media_uidsNoFeedlio media file uids to attach, from list_media or add_media_from_url. Never invent one.
publish_nowNoSet true to publish immediately instead of scheduling. Irreversible — requires the user to have explicitly asked for immediate publishing.
content_typeYesKind of content this post is
scheduled_atNoISO 8601 datetime to schedule the post (e.g. 2026-09-15T10:00:00+06:00). Required unless publish_now is true.
text_contentYesThe post caption/body text
first_commentNo
workspace_uidYesuid from list_workspaces

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.6/5.0
Behavior4/5

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

Annotations already declare non-read-only, non-idempotent, open-world, non-destructive, so the description's job is to add nuance — and it does: publishing is irreversible, publish_now only queues, and the result must be checked via list_posts. The only gap is that 'irreversible publishing' sits uneasily beside destructiveHint=false without reconciling that destructive refers to deletion, leaving a small ambiguity.

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?

Front-loaded with the account-selection prerequisite, then the mode choice, then the irreversibility warning, then platform extras — a sensible priority order. Every sentence carries a constraint, though the platform-specific paragraph partially duplicates nested schema descriptions and could be trimmed without losing guidance.

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?

For a 12-parameter, deeply nested, non-idempotent mutation with no output schema, the description covers the account resolution path, mode exclusivity, irreversibility, return value (post_uid), and the four platform-specific sub-objects with their prerequisite lookups. Nothing an agent needs in order to call this correctly 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 92% so the baseline is 3, but the description adds genuine semantics the schema cannot express: the exactly-one-of constraint between scheduled_at and publish_now (there is no oneOf/top-level exclusivity in the schema), the rule that one platform settings object applies to every account of that platform, and that a YouTube post takes exactly one video. It repeats some nested-object descriptions already present in the schema, which keeps it off a 5.

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 and resource ('Create a post on one or more connected social accounts') and immediately distinguishes itself from siblings by naming reschedule_post / cancel_post as the consumers of its return value and by describing its own create-and-schedule dual mode. An agent can separate this from update_post or list_posts without opening a schema.

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?

Explicit prerequisites and exclusions: call list_social_accounts first, use only accounts with can_post: true, copy platform_slug verbatim, never guess. It gives the decision rule between the two modes ('when in doubt, schedule'), requires explicit user consent for publish_now, and adds per-platform preconditions (get_tiktok_creator_info, list_pinterest_boards) plus the Dev.to isolation constraint.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources