WordPress Content
The first step beyond Elementor. These tools manage general WordPress content (posts, pages, and any custom post type) built entirely on WordPress core (wp_insert_post, WP_Query, wp_set_object_terms, …). They never touch _elementor_data. Every post returned carries an is_elementor flag so an agent knows to switch to the Elementor tools for builder pages.
All eight are enabled by default and capability-gated. Featured image and custom-field meta are parameters of create/update, not separate tools.
emcp-tools/list-post-types
Section titled “emcp-tools/list-post-types”Lists registered public post types. Discovery tool: call it to learn what post_type values the other content tools accept.
Input: none.
Returns: array of { name, label, hierarchical, supports }.
Capability: edit_posts. Read-only.
emcp-tools/list-taxonomies
Section titled “emcp-tools/list-taxonomies”Lists registered taxonomies and the object types they attach to.
Input: none.
Returns: array of { name, label, object_types, hierarchical }.
Capability: edit_posts. Read-only.
emcp-tools/create-post
Section titled “emcp-tools/create-post”Creates a post, page, or any custom post type.
Input:
title(required)post_type: defaults topostcontent: classic HTML or block markupstatus:publish,draft,pending,private(defaults todraft)slug,author,excerptterms: taxonomy → term IDs/slugs mapmeta: custom-field key/value mapfeatured_image: attachment ID or image URL (sideloaded if a URL)
Returns: { post_id, edit_url, view_url, is_elementor }.
Capability: publish_posts (or edit_posts for drafts).
emcp-tools/get-post
Section titled “emcp-tools/get-post”Reads a single post by ID.
Input: post_id.
Returns: the post’s fields, terms, meta, and an is_elementor flag.
Capability: edit_posts. Read-only.
emcp-tools/update-post
Section titled “emcp-tools/update-post”Updates an existing post’s fields, terms, custom fields, and featured image. Only the fields you pass change.
Input: post_id plus any of the create-post fields.
Returns: { post_id, updated: true }.
Capability: edit_post on the target.
emcp-tools/list-posts
Section titled “emcp-tools/list-posts”Lists/queries posts of any type with filters (status, author, taxonomy, search, pagination, order).
Input: post_type, status, search, author, terms, per_page, page, orderby, order.
Returns: array of posts (each with is_elementor) plus pagination info.
Capability: edit_posts. Read-only.
emcp-tools/delete-post
Section titled “emcp-tools/delete-post”Deletes a post. Trashes by default. Pass force: true to permanently delete.
Input: post_id, force (optional).
Returns: { post_id, deleted: true, forced }.
Capability: delete_post on the target. Destructive.
emcp-tools/set-post-terms
Section titled “emcp-tools/set-post-terms”Assigns taxonomy terms to a post (append or replace).
Input: post_id, taxonomy, terms (IDs or slugs), append (optional).
Returns: { post_id, taxonomy, term_ids }.
Capability: edit_post on the target.
Surfaced WordPress core abilities
Section titled “Surfaced WordPress core abilities”WordPress core’s three read-only context abilities are also exposed on the EMCP server, so an agent can read site/user/environment context without a separate connection:
core/get-site-infocore/get-user-infocore/get-environment-info