mcp-easy-ai__wp_list_pages
Lists WordPress pages. Optional: status (publish/draft/pending/private/future/trash/any — default publish), search, parent (filter by parent page ID; use 0 for top-level only), parent_exclude (parent page IDs to leave out; not with parent), include or exclude (page IDs; not both), slug (list of slugs), author (user ID), author_exclude (array of user IDs to exclude), after / before (ISO 8601 date-time range on publish date), has_password (true/false), date_query / tax_query / meta_query (WP_Query clause lists, at most 10 clauses, 3 levels; tax_query only on taxonomies registered for pages and shown in the REST API; meta_query only on meta keys registered with show_in_rest for pages, needs edit_posts, never on plugin-integration SEO keys, and with a status other than publish also edit_others_pages (private: read_private_pages; any: both)), per_page (default 10, max 100), page, offset (skip N pages; replaces page), orderby (date/id/title/slug/modified/menu_order/parent/… Through Royally: its server marks it read-only, so it runs straight away.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination. | |
| slug | No | Only items with one of these slugs (post_name). | |
| after | No | Only pages published on or after this ISO 8601 date-time (e.g. "2026-01-01T00:00:00"). | |
| order | No | Order direction. | desc |
| author | No | Author user ID to filter by. | |
| before | No | Only pages published on or before this ISO 8601 date-time (e.g. "2026-12-31T23:59:59"). | |
| offset | No | Skip this many matching items. Replaces page: send one or the other. | |
| parent | No | Parent page ID to filter by. | |
| search | No | Search query to filter pages. | |
| status | No | Page status filter (e.g. publish, draft, pending, private, future). | |
| context | No | view (default): pages you can read. edit: only pages you can edit (needs edit_pages). | view |
| exclude | No | IDs to leave out. Not with include: WordPress ignores an exclusion when include is given. | |
| include | No | Only these IDs (non-empty). With orderby "include", results keep this order. | |
| orderby | No | Field to order results by. include keeps the order of include; meta_value / meta_value_num sort by the first meta_query clause's key and need meta_query. | date |
| site_id | No | Site to run this tool on: 8ef2e52b-bd07-4671-a363-ebe8b480b65c (https://demo.royalplugins.com) | |
| per_page | No | Number of pages per page (1-100). | |
| tax_query | No | WP_Query taxonomy clauses (at most 10, nested 3 levels), joined with AND, e.g. [{"taxonomy": "genre", "field": "slug", "terms": ["drama"]}]. Clause keys: taxonomy (registered for this post type and shown in the REST API), field (term_id, slug, name; default term_id), terms, operator (IN, NOT IN, AND, EXISTS, NOT EXISTS), include_children. For OR, put clauses in one item with "relation": "OR". | |
| date_query | No | WP_Query date clauses (at most 10, nested 3 levels), joined with AND, e.g. [{"after": "2026-01-01", "before": {"year": 2026, "month": 6}}]. Clause keys: after, before, year, month, monthnum, week, w, dayofyear, day, dayofweek, dayofweek_iso, hour, minute, second, inclusive, compare, column (post_date, post_date_gmt, post_modified, post_modified_gmt). For OR, put clauses in one item: {"relation": "OR", "0": {...}, "1": {...}}. | |
| meta_query | No | WP_Query meta clauses (at most 10, nested 3 levels), joined with AND, e.g. [{"key": "price", "value": 10, "compare": ">", "type": "NUMERIC"}]. Clause keys: key (required; a meta key registered with show_in_rest for this post type, the keys wp_get_post_meta shows; plugin-integration SEO keys are refused), value, compare, type. Needs the edit_posts capability, and with a status other than publish also the type's edit_others_posts (private: read_private_posts; any: both). For OR, put clauses in one item with "relation": "OR". | |
| raw_columns | No | Edit context only. Each item also carries raw: every database column as WordPress stores it (ID, post_author, post_date, post_date_gmt — 0000-00-00 00:00:00 for an unscheduled draft —, post_content, post_title, post_excerpt, post_status, comment_status, ping_status, post_password, post_name, to_ping, pinged, post_modified, post_modified_gmt, post_content_filtered, post_parent, guid, menu_order, post_type, post_mime_type, comment_count, filter). Default false. | |
| has_password | No | true: only password-protected items; false: only items without a password. | |
| author_exclude | No | Array of author user IDs to EXCLUDE from results. | |
| parent_exclude | No | Leave out items whose parent is one of these IDs (0 = top-level items). Hierarchical types only; not with parent, which WordPress lets override it. |