MCPOutils MCP/Idées de publication/update_post_idea
update_post_idea
Writeideas:write
Update fields of an existing post idea (agency-scoped).
Paramètres
idstringobligatoire
Post idea id (from list_post_ideas or get_post_idea) — accepts either the OS idea id or the claw approval id (externalId).
titlestringfacultatif
contentstringfacultatif
Replacement caption / body. Per-platform caption limits, in characters: google 1500, facebook 30000, instagram 2200, x 280, linkedin 2000, pinterest 500, mastodon 500, bluesky 300, threads 500, tiktok 2200, youtube 5000, reddit 40000, medium 100000, substack 100000, vimeo 100000, dailymotion 100000. IMPORTANT for x: that budget is WEIGHTED, not typed characters — Japanese/Chinese/Korean characters and emoji each cost 2, and any link costs a flat 23 however long it is. A non-Latin caption for x therefore fits roughly 127 typed characters, not 280. Aim for at most 255 weighted for x: a link or an appended CTA costs a further 25 weighted on top of the caption, and that append happens after you write it.
imageUrlstringfacultatif
imagePromptstringfacultatif
type"announcement" | "offer" | "tip" | "showcase" | "story" | "event"facultatif
Idea type.
status"draft" | "published" | "archived"facultatif
Lifecycle status. Not server-validated against this set — an unrecognized value is written as-is rather than rejected, so stick to these.
platformsstring[]facultatif
scheduledDatestringfacultatif
YYYY-MM-DD.
scheduledTimestringfacultatif
HH:mm.
seriesIdfacultatif
Content series to put this idea in (from list_content_series) — moves it out of whichever series it was in. Pass null to take it out of its series. The series must belong to the idea's own client (it may be anchored at another of that client's locations).
whystringfacultatif
One sentence on why this post, on this day. Shown on the card. Rewrite it whenever you rewrite the caption, or the card keeps the reason for the post you replaced.
Exemple de requête
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "update_post_idea",
"arguments": {
"id": "string"
}
}
}Exemple de réponse
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"content": [
{
"type": "text",
"text": "..."
}
]
}
}La forme de la réponse est indicative — le contenu réel dépend de l'outil et de vos données.