wp_create_post
ACTION on the WordPress site. Creates a blog post. content is HTML (WordPress blocks optional). Default status is draft (not visible to readers); use publish only if the user explicitly asks, or future with date (ISO 8601) to schedule. In safe mode the first call returns a PREVIEW with confirm_id: show it and call again with confirm_id only after the user approves. Not retried on network errors (no duplicates): if it times out, check with wp_list_posts before retrying.
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": {
"site_id": "<site_id>",
"title": "<title>",
"content": "<content>"
},
"name": "wp_create_post"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| date | No | ISO 8601 publish date (required for future) | |
| slug | No | Slug URL dell'articolo, minuscolo con trattini, es. come-scegliere-il-prezzo. | |
| tags | No | Tag ids from wp_list_terms | |
| title | Yes | Titolo dell'articolo. | |
| status | No | Default draft | |
| content | Yes | Post body, HTML | |
| excerpt | No | Estratto dell'articolo, testo semplice. | |
| site_id | Yes | Id sito WordPress (da wp_list_sites). | |
| categories | No | Category ids from wp_list_terms | |
| confirm_id | No | Token di conferma ritornato dall'anteprima. Ripassa lo STESSO payload + confirm_id per eseguire davvero la scrittura. | |
| featured_media | No | Media id already in the WordPress library |