Publish Now
publish_postPublishes an approved post (status ready or scheduled) to its platform (LinkedIn, X or Threads) immediately. The post goes live publicly and cannot be deleted through this server afterwards. A draft is refused with approval_required. The platform is read from the post itself. Retries are idempotent: they replay the cached response instead of publishing twice. dry_run=true validates without publishing. Every response carries status_before, status_after and approval_required.
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": {
"post_id": "<post_id>"
},
"name": "publish_post"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| dry_run | No | When true, the call validates without calling the platform and returns what would happen. | |
| post_id | Yes | The ID of the post to publish immediately | |
| idempotency_key | No | Optional client key for retry-safe publishes. Same key + post = cached response replay. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| kind | Yes | ||
| quota | No | ||
| title | No | ||
| health | No | ||
| status | Yes | ||
| content | Yes | ||
| dry_run | No | ||
| draft_id | Yes | ||
| platform | Yes | ||
| timezone | No | ||
| char_count | Yes | ||
| server_now | No | ||
| time_input | No | ||
| status_after | No | ||
| dashboard_url | No | ||
| status_before | No | ||
| would_publish | No | ||
| approval_reset | No | ||
| scheduled_date | No | ||
| scheduled_local | No | ||
| timezone_source | No | ||
| already_published | No | ||
| approval_required | No |