Custom dataPro
Meta Box MCP across the core plugin and its extensions
Meta Box is a core plugin plus a set of extensions, and the Meta Box MCP abilities in GoBuildWP Pro follow that shape. Values on posts work with the core alone; creating field groups needs MB Builder; post types need MB Custom Post Type; relationships, settings pages, and user or term values each need their own extension. The setup check reports which are loaded, so the agent can say what is missing rather than fail halfway.
Link customer 123 to company 45 through our customer-to-company relationship, unless they are already linked.
wppilot/metabox-check-setupReadrelationships_active must be true; it also says whether the builder is present.
wppilot/metabox-list-relationshipsReadFinds customer_company and its from and to object types.
wppilot/metabox-list-connected-objectsReadWith both from_id and to_id, answers whether this pair is already connected.
wppilot/metabox-connect-objectsWriteWrites one row to mb_relationships and fires Meta Box's mbr_add action.
- Edition
- Pro
- Abilities
- 32
- Requires
- WordPress 6.9+, PHP 8.0+, Meta Box 5.11.2+
Abilities
Meta Box abilities by effect
Inspect14
metabox-check-setupCheck Meta Box Setupmetabox-get-field-group-schemaGet Meta Box Field Group Schemametabox-get-field-type-schemaGet Meta Box Field Type Schemametabox-get-post-typeGet Meta Box Post Typemetabox-get-relationshipGet Meta Box Relationshipmetabox-get-settings-pageGet Meta Box Settings Pagemetabox-get-taxonomyGet Meta Box Taxonomymetabox-list-connected-objectsList Meta Box Connected Objectsmetabox-list-field-groupsList Meta Box Field Groupsmetabox-list-post-typesList Meta Box Post Typesmetabox-list-relationshipsList Meta Box Relationshipsmetabox-list-settings-pagesList Meta Box Settings Pagesmetabox-list-taxonomiesList Meta Box Taxonomiesmetabox-read-valuesRead Meta Box Values
Create and change10
metabox-connect-objectsConnect Meta Box Objectsmetabox-create-field-groupCreate Meta Box Field Groupmetabox-create-post-typeCreate Meta Box Post Typemetabox-create-relationshipCreate Meta Box Relationshipmetabox-create-settings-pageCreate Meta Box Settings Pagemetabox-create-taxonomyCreate Meta Box Taxonomymetabox-edit-post-typeEdit Meta Box Post Typemetabox-edit-relationshipEdit Meta Box Relationshipmetabox-edit-settings-pageEdit Meta Box Settings Pagemetabox-edit-taxonomyEdit Meta Box Taxonomy
Destructive8
metabox-delete-field-groupDelete Meta Box Field Groupmetabox-delete-post-typeDelete Meta Box Post Typemetabox-delete-relationshipDelete Meta Box Relationshipmetabox-delete-settings-pageDelete Meta Box Settings Pagemetabox-delete-taxonomyDelete Meta Box Taxonomymetabox-disconnect-objectsDisconnect Meta Box Objectsmetabox-edit-field-groupEdit Meta Box Field Groupmetabox-write-valuesWrite Meta Box Values
Reference: /docs/reference/metabox
Documented source abilities; live registration can be narrower. Edition and effect labels describe the source catalogue. The installed schema, dependency versions, licence, WordPress capability, safety profile and per-ability policy determine availability; labels alone do not prove confirmation or recovery.
Worked example
Connecting two records through a relationship
Expected outcome to verify on the installed stack; this sequence has not been recorded as a runtime test.
Customer 123 lists company 45 wherever the relationship is displayed. The connection cannot be undone from the change log; metabox-disconnect-objects removes it, and returns disconnected=false if the pair was not linked.
Check storage before any value write: custom-table storage and recovery are unsupported by these value operations. For PHP-to-database migration, review deduplication and the required Meta Box extensions. Verify relationships on a later request, not only the request that registered them.
metabox-check-setuprelationships_active must be true; it also says whether the builder is present.
metabox-list-relationshipsFinds customer_company and its from and to object types.
metabox-list-connected-objectsWith both from_id and to_id, answers whether this pair is already connected.
metabox-connect-objectsWrites one row to mb_relationships and fires Meta Box's mbr_add action.
Data model
What each Meta Box extension stores, and where
Field groups built in the admin are meta-box posts; MB Custom Post Type saves mb-post-type and mb-taxonomy posts; MB Settings Page saves mb-settings-page posts; with the relationships builder, a relationship is an mb-relationship post. Anything registered from code through the rwmb_meta_boxes filter or the extensions' equivalents is read-only at runtime and lists with source php.
Values go through rwmb_set_meta into post, term, user or comment meta, and a settings page keeps all its values in a single wp_options row. Relationship connections are rows in the mb_relationships table, which Meta Box documents with from, to, type and order columns. MB Custom Table can move a group's values into a table of its own; the abilities report that the extension is active but do not read or write those tables.
Values are keyed by field id in the object's meta namespace rather than by group. Passing field_group_key is optional, but on a write it checks every key against that group first, so a typo fails the call instead of creating a stray meta key.
Limits
Extension gates and undo coverage
- Field group writes return metabox_builder_not_active without MB Builder; term, comment and user targets need MB Term Meta, MB Comment Meta and MB User Meta respectively.
- Without the relationships builder, creating a relationship only registers it for the current request and returns a persistence warning with the settings to register in code; the connections persist, the definition does not.
- Value writes to a post can be rolled back, except while MB Custom Table is active, when every value write is logged without an undo because the ledger cannot tell which storage a field uses.
- Connections, disconnections and every delete are irreversible. Deleting a settings page leaves its option row behind as an orphan.
Other plugins
Free core, bundles and extensions out of scope
- On the WordPress.org core alone, MB Custom Post Type and MB Relationships can be added free from WordPress.org, which unlocks the post type, taxonomy and relationship abilities.
- MB Blocks, MB Frontend Submission, MB Views, MB Geolocation and MB Revision are not covered: they are code, templating or runtime features with no data for the abilities to manage.
- fields-bulk-update-values writes Meta Box values on many posts at once through the same rwmb_set_meta path.
Meta Box in practice
Auditing a Meta Box site you have inherited
Sites built on Meta Box often mix field groups a developer registered in code with groups someone later added in MB Builder, and the builder screen only manages the second kind. A Meta Box MCP session can map both without changing anything. metabox-check-setup lists which extensions are loaded and counts field groups by source, php against db, so the first answer already tells you how much of the model lives in theme or plugin files.
From there, metabox-list-field-groups gives each group's key, source, post types and field count, and metabox-get-field-group-schema with include_fields returns the full definition for PHP and database groups alike. Ask the agent for a table of every group, where it is defined and which post types it applies to. On most inherited sites that table is the documentation nobody wrote, and it is all reads, so the Read Only profile is enough.
Taking over a group that was registered in PHP
The edit abilities refuse PHP groups with metabox_php_registered, so a client who wants to manage a coded group in MB Builder needs a database copy. Because Meta Box keys values by field id in the object's meta, not by group, a copy that keeps every field id reads the values already stored. Read the PHP group's schema, create a database group from it under a new group key with the same field ids and types, then remove the PHP registration in code.
Do the swap on staging. Until the code registration is gone, both groups describe the same fields, and how the editor presents that duplication is something to check on the actual site rather than assume. Open a post that already has values and confirm they appear once, in the new group, before the change reaches production.
- Check the field types first with metabox-get-field-type-schema; Meta Box types such as single_image, image_upload, key_value and fieldset_text each carry their own options.
- Keep field ids exactly as they were. A renamed id starts empty and leaves the old value behind as an orphaned meta key.
- If the group stores into a custom table through MB Custom Table, stop: the value abilities do not read or write those tables.
Settings pages and partial writes
A settings page created through MB Settings Page keeps all its values in one wp_options row named after the page id unless an option_name overrides it. metabox-write-values with target type settings merges the fields you send into that row, so writing a new phone number does not wipe the opening hours stored next to it. Use the page id from metabox-list-settings-pages as the target id.
Writes report per field. A batch of five values where one field id is wrong can save the other four, so the agent should read the results array, not just the call status. Passing field_group_key makes the ability check every key against that group first, which turns a typo into an early failure instead of a stray meta key on the post.
Questions
Meta Box questions
Why doesn't a Meta Box value written by the agent show up on the page?
Most often the group stores its values in a custom table through MB Custom Table. The abilities write to meta, not to that table, so the template never sees them.
Will a relationship my agent created still exist tomorrow?
With the relationships builder active it is saved as an mb-relationship post and persists. On the code-only build it lasts for one request, and the response includes the settings to add to MB_Relationships_API::register().
Can the agent edit a field group my developer registered in PHP?
No, it returns metabox_php_registered. It can read the schema and create a database copy under a new key if you want to take the group over.
Which Meta Box extensions does an AI agent need?
None for reading and writing post values. Add MB Builder to create field groups, MB Custom Post Type for types and taxonomies, MB Relationships for links, and MB Settings Page for settings pages.
Meta Box publishes its own abilities. GoBuildWP's integration reference distinguishes field groups, values, settings and relationships, including any extension or edition dependency. Meta Box abilities documentation
Where these facts come from
GoBuildWP behaviour is taken from the plugin source and the ability reference; third-party details from the vendor documentation below, checked by the GoBuildWP team.
Meta Box is a separate product; no partnership or endorsement is implied.