ThemesFree + Pro
WordPress block theme MCP: find each template's source, then edit through review
For any active block theme, GoBuildWP's WordPress block theme MCP support answers the question that decides every Site Editor change: is this template a database copy, or does it exist only as a file in the theme? GoBuildWP Free has a block-theme kit that works through WordPress's own Site Editor endpoints: it reads and writes templates and template parts, Global Styles, the site's patterns and navigation menus. A first edit to a theme-file template creates the database copy, as a save in the Site Editor would, and the theme file itself is never changed. GoBuildWP Pro adds the theme bridge this page also covers: an asset inventory, registered Customizer theme mods and template edits through the Gutenberg review queue.
Add a one-line accessibility statement link to the footer on every page of our block theme site.
wppilot/theme-bridge-check-setupReadReturns adapter block-theme and confirms block templates can be read and content goes through the Gutenberg queue.
wppilot/theme-bridge-list-block-assetsReadFiltered to template parts matching footer; the footer row shows a wp_id, so it is a database copy.
wppilot/gutenberg-get-contentReadReads that post's block tree so the new paragraph is added without disturbing the rest.
wppilot/gutenberg-add-pending-changeConfirm firstQueues the updated footer part with the extra paragraph block.
wppilot/gutenberg-enable-batch-finalizationConfirm firstMarks it ready for the queue page to validate and save.
- Edition
- Free 11 + Pro 4
- Abilities
- 15
- Requires
- WordPress 6.9+, PHP 8.0+
Data model
Theme files, forked copies and a global-styles post
WordPress's theme handbook describes block theme templates as HTML files under templates and parts. The first time someone edits one in the Site Editor, the file stays and a customised copy is saved as a wp_template or wp_template_part post, which then takes precedence over the file. Global styles changes are held in a wp_global_styles post, layered over the theme's theme.json, which is layered over WordPress's own defaults.
The inventory GoBuildWP returns reflects that split. Each row carries a slug, type, area, source and origin, whether a theme file exists, and a wp_id. A row with a wp_id above zero is a real post the Gutenberg abilities can open. A row with wp_id zero is a file-only template: there is no post to edit, and the bridge will not invent one or write into the theme folder.
Limits
Hard lines for block themes
- Theme files are never written. Free's update-template saves a database copy; its first save of a theme-file template creates that copy, and revert-template (confirmed) goes back to the file.
- The Pro bridge does not write template content itself; its edits go through the Gutenberg queue and are finalised in the browser.
- The theme's theme.json file is never edited. Free's get-global-styles and update-global-styles read and change the user layer the Styles panel saves, and report any keys WordPress did not keep. The Pro bridge does not touch Global Styles.
- Through the Pro bridge, a theme-file template with no database copy stays discovery-only; Free's update-template is the route that creates the copy.
- Customizer writes accept only registered theme_mod settings: at most 50 per call, values up to 8 KiB, arrays up to 100 items and four levels deep. Undo restores the theme mods row.
- Credential, licence, tracking, analytics, custom CSS and code settings are redacted and never writable.
Abilities
What each bridge call does on a block theme
| Ability | What it does here | Undo and limits |
|---|---|---|
theme-bridge-check-setupPro | Reports the active theme with the block-theme adapter, whether the template API and Gutenberg queue are available, and a notice that template changes must use the queue. | Read-only. Every capability it reports as false is treated as a hard stop. |
theme-bridge-list-block-assetsPro | Lists templates and parts by type, source and search term without their markup, paged at up to 100 rows, with wp_id marking which are database posts. | Read-only. Returns theme_bridge_not_block_theme on a classic theme. |
theme-bridge-list-customizer-settingstheme-bridge-update-customizer-settingsPro | Inventory and patch whatever theme_mod settings the block theme still registers with the Customizer, through each setting's own validate and sanitise. | Block themes often register few or none; the bridge never falls back to guessed option names. |
gutenberg-get-contentgutenberg-add-pending-changeFree | Read and queue edits to a database-backed template or part by its wp_id. | The finalised template has no ledger before-image; the previous content is gone once saved unless you kept a copy. |
Reference: /docs/reference/block-themes Reference: /docs/reference/theme-bridge
Shared theme bridge; do not add this count across themes. 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
Adding a notice strip to a customised footer part
Expected outcome to verify on the installed stack; this sequence has not been recorded as a runtime test.
Every page that includes the footer part shows the link. Had the footer been file-only, the agent would report it instead of editing: someone first customises the footer once in the Site Editor, which creates the database copy.
Export the footer and review its site-wide impact before queueing. Use the Gutenberg browser finalization flow, then inspect the rendered footer; finalization has no change-ledger before-image.
theme-bridge-check-setupReturns adapter block-theme and confirms block templates can be read and content goes through the Gutenberg queue.
theme-bridge-list-block-assetsFiltered to template parts matching footer; the footer row shows a wp_id, so it is a database copy.
gutenberg-get-contentReads that post's block tree so the new paragraph is added without disturbing the rest.
gutenberg-add-pending-changeQueues the updated footer part with the extra paragraph block.
gutenberg-enable-batch-finalizationMarks it ready for the queue page to validate and save.
Questions
WordPress Block Themes questions
Can an AI edit block theme templates without the Site Editor?
Yes, with GoBuildWP Free. update-template saves new block markup for a template or template part through WordPress's own templates endpoint; a theme-file template gets its database copy on that first save, and the change can be undone from the change log. The Pro bridge's queue route still finalises in a browser page.
Will it change my theme's files?
No. Free saves database copies the way the Site Editor does, and the Pro bridge treats theme files as read-only and refuses to substitute a file edit or direct database query for a missing ability.
How do I restyle a block theme's colours with AI, then?
With GoBuildWP Free: get-global-styles reads the current palette and styles, and update-global-styles merges the change into the user layer the Styles panel saves. Palettes are replaced whole, so send the complete list. Check the result on a few pages afterwards; the change can be undone from the change log.
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.
WordPress Block Themes is a separate product; no partnership or endorsement is implied.