Skip to main content
Glama

update_post

Destructive

Update a post. Edit a draft, scheduled or failed post (409 not_editable otherwise). Send only what changes; tiktok merges field by field; other arrays and objects replace. scheduled_at set moves or schedules it (post.scheduled fires); scheduled_at null turns a scheduled post back into a draft.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "id": "<id>"
    },
    "name": "update_post"
  }
}

Input Schema

NameRequiredDescriptionDefault
idYesNumeric id.
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 observed

TDQS

A4.3/5.0
Behavior5/5

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

Goes well beyond the annotations (destructiveHint=true, idempotentHint=false) by disclosing the merge model — 'tiktok merges field by field; other arrays and objects replace' — which is the single most consequential behavior for a PATCH-style call. It also names a side effect ('post.scheduled fires') and the state transition caused by null, which annotations cannot express.

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?

Four short clauses, front-loaded with the core action, then preconditions, then the sending convention, then field-specific behavior. No filler and nothing buried at the end that should have led.

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 an 11-parameter tool with nested objects and no output schema, the description covers editability, payload semantics, and scheduling side effects — the highest-risk unknowns. It leaves some gaps implied by the schema (per-platform field applicability, permission requirements when changing targets), but the essentials for a correct call are present.

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?

With schema coverage at 82% the baseline is 3, and the description earns above it by explaining that partial payloads merge for the tiktok object but that arrays and objects elsewhere are replaced wholesale. It also clarifies the dual meaning of scheduled_at. It does not address platform/target switching semantics, which remain schema-only.

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?

States a specific verb and resource ('Update a post') and immediately scopes it to the editable lifecycle states ('draft, scheduled or failed post'). An agent can tell this apart from create_post or delete_post, though the overlap with schedule_post/unschedule_post implied by 'scheduled_at set moves or schedules it' is never explicitly reconciled.

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?

Gives a clear precondition for use and the failure mode when it doesn't hold ('409 not_editable otherwise'), plus the key calling convention 'Send only what changes'. It stops short of naming alternative tools for published posts (publish_post, schedule_post, unschedule_post).

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