WP Adapter · the editor zip

Landings, copy, CSS. The canvas stays. You hit publish.

This is not WP Adapter Forms. Install WP Adapter. Claude runs the bureau inside Gutenberg, Elementor, Divi, Bricks, and the rest. Theme PHP is never touched.

Install

  1. WordPress 7.1.3+, PHP 8.1+, HTTPS.
  2. Upload the editor zip. Activate.
  3. WP Adapter → Connect → Connect this site (or paste wpa_site_…).
  4. Point the AI at https://wpadapter.com/mcp. Full ritual.

On activate the plugin creates user wp-adapter-agent with role WP Adapter Editor: edit posts and pages, no publish, no delete, no upload. Never promote that user. Never give the AI Administrator.

WordPress screens

MenuWhat it is
ConnectPair this origin. After it is linked: copy the MCP URL and open Connect Claude.
ToolsEach ability on or off. Dangerous ones default off.
PolicyDraft-only, publish, trash, media, site chrome, flatten, max length. Lite cannot loosen this.
ActivityOrigin audit: when, actor, ability, object, result.
SnapshotsLoad a post id. Restore a snapshot. Same as the rollback tool.
LicenseCloud pairing sets this. Manual key is the older path.
HelpWhat this plugin is — and is not.

Setup

On activate, and any time under WP Adapter → Setup, pick the canvas Claude should write to: Divi, Elementor, Gutenberg/plain, Bricks, Beaver, WPBakery, Breakdance, Oxygen. Then pick the job: rewrite copy, build new pages, or both.

get-site returns preferred_editor, job, create_hint, and playbooks. The model should read those before create-post. Setup does not turn on publish.

Playbooks

Four jobs. Read them before you improvise. The public slug 404s until a human publishes — use preview-post for a signed visitor URL (24h).

  • new-landing — native Divi [et_pb_section] in content_divi, or the canvas you pinned. Then preview-post and inspect-front.
  • rewrite-copy — update-post mode=patch. Do not send a full layout.
  • css-fight — search-css (Additional CSS, Divi Custom CSS, page CSS, HFCM, Divi globals). Then update-site-css and purge-cache if LiteSpeed is on. Both on by default. Never write PHP.
  • ship — inspect-front the preview. Set slug, then set-status publish. Stop if Policy turned publish off.

First edit

  1. In Claude: list-sites, then get-site. Read playbooks and create_hint.
  2. get-post returns editor: gutenberg, classic, elementor, divi, divi5, bricks, beaver, wpbakery, breakdance, oxygen, or unknown.
  3. Ask for the job. Default is a draft. Copy is mode=patch. A new Divi page is native shortcodes.
  4. preview-post if you need a visitor URL. Set slug before set-status publish.

Editing an already-published post is allowed while Allow publish is on. If you turned Draft-only back on, duplicate to draft or turn Allow publish on again.

Canvases

Markdown update-post patches text nodes in place. It does not rebuild the page unless you pass mode=replace and Policy → Allow replace is on (Pro).

  • Gutenberg and Classic — blocks or post content.
  • Elementor, Divi 4, Divi 5, Bricks, Beaver Builder, WPBakery, Breakdance, Oxygen — node-level copy.
  • Unknown builders (Cornerstone, Themify, …) — detected, not flattened. Copy tools may refuse rather than wreck the page.

Theme Builder / headers / footers: list-templates / update-template. Needs Pro + Allow site chrome. Theme PHP is never edited.

New page on Divi

Patching copy and landing a new layout are different jobs. get-site returns default_editor and a create_hint. On Divi, that default is divi, not Gutenberg.

  • Default: native Divi 4 shortcodes — [et_pb_section]…[/et_pb_section] — in content_divi or content_html. We turn Visual Builder on and write them as the canvas. Not wrapped in a text module. Not escaped. Styling lives on the modules (background_color, button_bg_color, fonts). Still a draft.
  • Plain HTML with no shortcodes still lands in a fullwidth Code module plus optional custom_css.
  • Do not send Gutenberg content_blocks to Divi. allow_options is blogname/description, not CSS.
  • The theme header and footer stay. A blank Theme Builder template needs Allow site chrome. You still hit publish.
  • Existing Divi pages: content_markdown + mode=patch rewrites copy. Native shortcodes on a draft replace the canvas without Allow replace. Plain HTML on an existing Divi canvas still needs mode=replace.

Policy (Pro)

After activate, Allow publish is on (Pro). Cloud MCP cannot override origin policy. Tick Draft-only to lock it again. Lite stays draft-only.

  • Draft-only writes — off by default. Tick to reject publish / future / private.
  • Allow publish — on by default. set-status can go live. Uncheck to lock.
  • Allow trash — trash only. No force-delete, ever.
  • Allow media upload — jpeg, png, gif, webp, pdf, ≤ 8MB, from URL or base64.
  • Allow blogname / blogdescription — only those two options.
  • Allow site chrome — headers, footers, Theme Builder.
  • Allow mode=replace — flatten a canvas. Off unless you mean it.
  • Allow site CSS — update-site-css on Additional CSS, Divi Custom CSS, or page CSS. On by default.
  • Allow cache purge — purge-cache (LiteSpeed, Super Cache, Rocket, Autoptimize, Fastest Cache, object cache). On by default.
  • Allow order status — WooCommerce set-order-status. Does not refund the payment.
  • Allow plugin updates — wordpress.org slugs only. update-plugin and install-plugin.
  • Allow WordPress core updates — update-core. Own flag.
  • Max content length — default 100,000 characters.

Lite (no plan on this origin) stays draft-only and only the read/write-draft abilities. Tool list, including Lite.

Dangerous abilities, default off

WP Adapter → Tools. These stay unchecked until you tick them:

trash-post, upload-media, update-menu, delete-block, rollback, update-template, set-product-status, trash-product, set-order-status, update-plugin, install-plugin, update-core.

Undo

Every mutate snapshots first. Restore from Snapshots in wp-admin or ask Claude to list-snapshots then rollback. Restores title, content, excerpt, status, slug, taxonomies, featured image, and wp_adapter_* meta. Not a dump of every ACF field. Safety chapter.

All editor tools · WooCommerce · Hand a client a key · It refused the write

The WordPress® trademark is the intellectual property of the WordPress Foundation. Uses of the WordPress® names in this website are for identification purposes only and do not imply an endorsement by WordPress Foundation. WP Adapter is not endorsed or owned by, or affiliated with, the WordPress Foundation.