Skip to main content
Glama

Update post

postfjord_update_post
DestructiveIdempotent

Modify one existing draft or scheduled social post by sending only the fields to change. Use it to update text, media, channel targets, or scheduling without touching other posts.

Instructions

Changes one existing draft or scheduled post; for the same change on many posts use postfjord_bulk_update_posts, and for a new post postfjord_create_draft. Only send the fields to change. scheduledAt: an ISO date-time schedules, null turns it back into a draft. bioLink alone, or videoPage alone, also works on a published post. Send targets..aspect and fit to change how a channel shows its pictures. Pictures: every channel sends its own shape. Before scheduling, call postfjord_preview_post and show the person the picture of each channel. Where a crop would cut off a person (a head, hands, feet) or words in the picture (a poster, a menu, a quote), set that picture's fit to { mode: "whole" } in targets, or move focus to what must stay, then preview again.

Input Schema

NameRequiredDescriptionDefault
linkNo
intentNogive or ask; null clears the label.
pillarNo
postIdYes
bioLinkNoWhere a tap on this post on your link in bio page goes. Never added to the post. On update, send it alone to change it on a published post (needs a key that may publish). An empty string removes it.
targetsNo
baseTextNo
mediaIdsNo
videoPageNoThe video page switch. Send it alone to switch the page of a published video on or off (needs a key that may publish). Turning it on for a published video without a page makes one, which counts toward the plan's video pages for the month.
channelIdsNo
scheduledAtNoISO 8601 date-time with its time zone offset, e.g. 2026-09-10T08:00:00-04:00 (a time without one is refused). null turns a scheduled post back into a draft.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true and idempotentHint=true, so the description's job is to explain the mutation surface. It does this well for scheduling (scheduledAt null reverts to draft), published-post edits, and the fact that 'fit' replaces the channel's whole fit. It's less clear on whether other nested fields (targets, mediaIds, settings) merge or replace, which matters under destructiveHint.

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-loads the one-vs-many scope and the sibling alternatives before diving into details. It is dense and the crop/picture paragraph is long relative to the rest, but nearly every sentence conveys actionable guidance rather than filler.

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

Completeness3/5

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

With 11 parameters, a nested targets object, no output schema, and a destructive annotation, the description should explain the full update surface. It covers the risky scheduling/publishing paths and the preview workflow, but leaves half the parameter set undocumented anywhere, so an agent must rely on the schema alone for fields like intent, pillar, hashtags and settings.

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 only 36%, so the description needs to compensate, but it only elaborates on scheduledAt, bioLink, videoPage, aspect and fit. Parameters like intent, pillar, link, baseText, channelIds, hashtags still carry little meaning from the description, and merge-vs-replace semantics for top-level fields are not addressed.

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 ('Changes one existing draft or scheduled post') and immediately scopes it to a single post. Explicitly names the two nearest siblings (postfjord_bulk_update_posts for many, postfjord_create_draft for new), so it's distinguishable 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?

Gives routing rules with conditions: use bulk_update for many posts, create_draft for a new one. Also gives workflow guidance ('Only send the fields to change', 'Before scheduling, call postfjord_preview_post and show the person the picture of each channel') and the special-case that bioLink alone or videoPage alone works on a published post.

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