Register Custom Post Type is a WordPress ability from Advanced Custom Fields — usable via Easy MCP AI, which connects Claude, ChatGPT, and any AI assistant to your site.

Install Free Plugin →

Register Custom Post Type

Write
Advanced Custom Fields Content & Tools acf/register-custom-post-type

Register a brand-new custom post type (e.g. "Book", "Event") in WordPress.

Requires Advanced Custom Fields (ACF) 6.8.0+ on a WordPress install where the Abilities API is available (native from WordPress 6.9, or via a compatible Abilities/Feature API polyfill). ACF's global 'Allow AI Access' setting (enable_acf_ai) must be turned on, and each individual field group, custom post type, or custom taxonomy must also have its own 'Allow AI Access' toggle enabled and be exposed in the REST API (show_in_rest) before its abilities are registered. Most abilities additionally require the current user to hold ACF's configured management capability (acf_get_setting('capability'), default manage_options) or the matching WordPress post-type/taxonomy capability (create_posts, edit_posts, delete_posts, manage_terms, edit_terms, delete_terms).

What it does

This ability creates a new post type definition using ACF's post type registration system, including its labels, visibility, supported features, REST API exposure, and menu placement. It only defines the post type schema itself, not individual posts; once registered (and if AI access and REST exposure are enabled), ACF automatically registers a matching set of query, create, view, update, and delete abilities for that post type. It fails with an error if a post type with the same key already exists, preventing accidental overwrites.

See it in action

You ask your AI assistant

"Register a new custom post type called "Event" with the plural label "Events", make it public, and give it an archive page."

Inputs

Name Type Required Description
post_type string Yes The post type key (slug), lowercase letters, numbers, underscores, and hyphens only, up to 20 characters.
label string Yes The singular label for the post type.
plural_label string Yes The plural label for the post type.
description string No Description of the post type.
public boolean No Whether the post type is public.
hierarchical boolean No Whether the post type is hierarchical.
supports array No Features the post type supports, e.g. title, editor, author, thumbnail, excerpt, comments, trackbacks, revisions, page-attributes, custom-fields, post-formats.
show_in_rest boolean No Whether to show this post type in the REST API. Required for its AI abilities to be registered.
rest_base string No Custom REST API base path (defaults to the post type key).
allow_ai_access boolean No Whether to allow AI access to this post type.
ai_description string No Description to help AI understand the purpose of this post type.
menu_icon string No Menu icon: a dashicon class, a URL, or an object with type and value.
menu_position integer No Position in the admin menu (5-100).
has_archive boolean No Whether the post type has an archive page.
has_archive_slug string No Custom slug for the archive page.
taxonomies array No Array of taxonomy names to associate with this post type.

Returns

An object with a success boolean, the newly registered post_type object, and a confirmation message.

Permission

The current user must hold ACF's configured management capability, from acf_get_setting('capability') (defaults to 'manage_options').

Newsletter

The AI + WordPress space moves fast. Keep up.

New tools, workflow ideas, and product updates — be the first to know what's next.

No spam, unsubscribe anytime.