Post Toolswordpress_list_posts

wordpress_list_posts

List WordPress blog posts with optional filtering and pagination.

wordpress_list_posts

List all blog posts with optional filtering.

Parameters

5 parameters, none required.

NameTypeRequiredWhat it is
statusstringnoFilter by status
searchstringnoSearch term
pagenumbernoPage number
per_pagenumbernoItems per page
includestringnoOptional v2 include CSV

Example call

No parameter is required, so the smallest valid call is empty:

{
  "name": "wordpress_list_posts",
  "arguments": {}
}

Response

{
  "success": true,
  "posts": [
    {
      "id": 101,
      "title": "Hello World",
      "status": "publish",
      "slug": "hello-world"
    }
  ],
  "page": 1,
  "perPage": 20
}

What it changes

Nothing. It only reads, so there is nothing to approve and nothing to undo.

When it fails

The failures seen most often on real sites in the last 30 days, most common first:

  • respira_unknown_include: The include parameter asked for a part this tool does not return. The error lists the supported values. Use those.
  • respira_site_id_not_found: No connected site has that ID. Call respira_list_sites and use an ID from the result.
  • rest_no_route: The WordPress site has no such endpoint. Almost always an old plugin version, or a security plugin blocking the REST API. Update Respira for WordPress on the site and try again.

How long it takes

A typical call takes about 1.9 seconds. 19 in 20 finish within 4.2 seconds. Measured on real sites over the last week, so it includes the site's own hosting.

Availability

Works on any WordPress site, whichever page builder it uses. Available since Respira 1.0.0.

Example Prompts

  • "List my latest blog posts"
  • "List draft posts"
  • "Search posts for 'seo'"