Publish Post
publish_postPublish a post to the public blog, then act on its distribution.
Makes the post publicly reachable and eligible for search indexing, the RSS feed and llms.txt — and delivers it wherever its distribution is selected: every selected Republish destination (dev.to) receives the post, and is updated in place on a later publish; every selected Announce destination (X, LinkedIn, Bluesky, Mastodon) that has not announced this post yet posts its text and the post's link, once; and a selected newsletter is emailed to the list, once. Publishing again never announces or mails twice. A third-party failure never fails the publish — it is recorded on that destination instead — and a newsletter blocker (no sending domain, no From address, no public address) means the email is not sent, so each delivery is attempted, not guaranteed.
get_post_distribution reports exactly where this will go. Those posts and that email go out in the user's name and cannot be recalled.
The post publishes with the fields it has: without a Description the search snippet publishes empty; without a Summary themed blogs render no lede; without an Author the structured data credits the GoodSender organisation instead of a person; AuthorAvatarURL is the byline photo (optional; a URL returned by upload_post_image, or the photo of the most recent post by the same author). get_post shows all of them.
The public date comes from PublishedAt: this stamps the current time only when that field is still empty, and keeps a value already set, so a back-dated draft publishes with its own date.
broadcast_post emails the list after publishing without requiring the newsletter to be selected in the distribution — also at most once per post.
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": {
"PostID": "<PostID>"
},
"name": "publish_post"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| PostID | Yes | Id of the draft to publish, from create_post or list_posts. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| Plan | Yes | Exactly where this publish goes and what it sends, one line each, with WARNING lines for what will fail. | |
| Post | Yes | The published post, once published. | |
| Title | Yes | On a local server with action guards on, the pending-confirmation notice while the publish awaits approval; empty otherwise. | |
| Distribution | Yes | The distribution: as reviewed while awaiting confirmation, re-read once published. |