GoBuildWP

Blocks and site designPro

Kadence Blocks MCP: insert Design Library sections that keep their CSS

Most requests that reach Kadence Blocks MCP tooling are some version of 'put that hero from the Design Library on this page'. GoBuildWP does that directly: it lists the free sections, inserts one after a chosen block, renames any Kadence uniqueID the post already uses so styles do not collide, and loads the published page as a visitor to check every block rendered. Hand-built layouts use the block schemas and the Gutenberg review queue instead.

GoBuildWP Pro is required for these calls. Licensed Kadence patterns are optional companion content, not part of the GoBuildWP licence.

AI clientyour-site.comVerify site policy

Find a free hero section in the Kadence Design Library and put it straight after the first block on the About page.

  1. wppilot/kadenceblocks-check-setupRead

    Confirms Kadence Blocks is active and whether Pro is present; Pro is not needed for free sections.

  2. wppilot/kadence-list-patternsRead

    Searches the cloud library for hero sections and drops any marked requires_licence from the shortlist.

  3. wppilot/kadence-insert-patternWrite

    Inserts the chosen section with after_index 0, renames any uniqueID the About page already used, and reports the pattern's remote image URLs.

  4. wppilot/verify-rendered-pageRead

    Optional second look at the served HTML for missing alt text or empty containers once the images are replaced.

Proposed sequence from source declarations; not a recorded task or proof of client compatibility. Inspect saved state and browser or provider results separately.
Edition
Pro
Abilities
5
Requires
WordPress 6.9+, PHP 8.0+

Worked example

A Design Library hero under the first block

Expected outcome to verify on the installed stack; this sequence has not been recorded as a runtime test.

The About page has a working Kadence hero with its own CSS, published or draft as it was, and one ledger entry that puts the old content back. It is refused if the page was built with Elementor or another builder, and its pictures still point at Kadence until you replace them.

Compare the insertion point before and after the change, whether it was a direct pattern insertion or a queued composition. Inspect the returned external-image list, approve any downloads and check the completed layout at desktop and mobile widths.

  1. kadenceblocks-check-setup

    Confirms Kadence Blocks is active and whether Pro is present; Pro is not needed for free sections.

  2. kadence-list-patterns

    Searches the cloud library for hero sections and drops any marked requires_licence from the shortlist.

  3. kadence-insert-pattern

    Inserts the chosen section with after_index 0, renames any uniqueID the About page already used, and reports the pattern's remote image URLs.

  4. verify-rendered-page

    Optional second look at the served HTML for missing alt text or empty containers once the images are replaced.

Abilities

Pattern insertion plus schema lookups

AbilityWhat it does hereUndo and limits
kadence-list-patternsLists local patterns and cloud Design Library sections with categories, searchable and paged, and flags the ones that need a Kadence licence.Read-only. Licensed sections are shown so you know they exist, but they cannot be inserted.
kadence-insert-patternAdds one pattern at the start, the end or after a top-level block, leaves existing blocks byte for byte, renames clashing uniqueIDs, and for a published post checks that every block rendered and Kadence produced its CSS.Refuses builder-laid-out posts, classic-editor content, licensed sections and patterns that bring their own posts. rollback-change restores post_content only.
kadenceblocks-check-setupkadenceblocks-list-blockskadenceblocks-get-block-schemaReport free and Pro presence, list the kadence/ catalogue with nesting hints, and return one block's attribute map for hand-composed specs sent through the Gutenberg queue.Read-only. Attribute types come back without allowed values, so a wrong string falls back to the block's default at render rather than failing.

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.

Read example: wppilot/kadenceblocks-get-block-schema

Discover this ability and its live schema first. The input below illustrates a bounded read from the source declaration; replace the example ID or name with an object returned by your site. It is not a recorded execution result.

ParameterType and meaning
name requiredstring. Full block name, e.g. "kadence/rowlayout" or "kadence/postgrid". Must be in the `kadence/*` namespace.
{
  "name": "replace-with-a-block-name-from-list-blocks"
}
Input and output schema from the plugin source

1 input field. Required: name. Optional parameters can affect response size and object selection.

{
  "input": {
    "type": "object",
    "properties": {
      "name": {
        "type": "string",
        "description": "Full block name, e.g. \"kadence/rowlayout\" or \"kadence/postgrid\". Must be in the `kadence/*` namespace."
      }
    },
    "required": [
      "name"
    ],
    "additionalProperties": false
  },
  "output": {
    "type": "object",
    "properties": {
      "name": {
        "type": "string"
      },
      "title": {
        "type": "string"
      },
      "family": {
        "type": "string",
        "enum": [
          "free",
          "pro"
        ]
      },
      "category": {
        "type": "string"
      },
      "is_dynamic": {
        "type": "boolean"
      },
      "attributes": {
        "type": "object",
        "description": "Map of attribute name -> JSON Schema as declared by the block. Pass the values you want under this key when building the `attributes` field of a block_spec for gutenberg-add-pending-change."
      },
      "parent": {
        "type": "array",
        "items": {
          "type": "string"
        }
      },
      "ancestor": {
        "type": "array",
        "items": {
          "type": "string"
        }
      },
      "uses_context": {
        "type": "array",
        "items": {
          "type": "string"
        }
      },
      "provides_context": {
        "type": "object"
      },
      "supports": {
        "type": "object"
      },
      "error": {
        "type": "string"
      }
    },
    "required": [
      "name",
      "title",
      "family",
      "category",
      "is_dynamic",
      "attributes"
    ]
  }
}

Source: wppilot-pro/includes/wppilot-abilities/wppilot-kadenceblocks/wppilot-get-block-schema.php

A successful read should identify the requested object and expose the structure described by the output schema. Compare it with the native editor before proposing a change. Troubleshoot missing or refused operations.

Data model

One namespace, uniqueIDs, and a cloud library

Every Kadence block, free or Pro, registers under kadence/. Pro does not add its own namespace, so the setup check tells the editions apart by inspecting each block's render callback class and reports a count per family. The blocks live in post_content, and each instance carries a uniqueID that Kadence uses to key the CSS it generates for that block. Two blocks sharing an ID on one page means one of them is styled by the other's rules, which is the reason the insert renames clashes rather than copying markup verbatim.

The Design Library is remote. GoBuildWP fetches Kadence's section index without sending the site's domain, licence key or email, caches it for 12 hours, and falls back to the copy Kadence's own editor cached when the library cannot be reached. Local patterns come from the theme, other plugins and the site's saved wp_block patterns that use Kadence blocks. Pattern images are not downloaded; they stay on Kadence's server and are listed so you can swap them.

Other plugins

Next to the Kadence theme and page builders

  • Kadence Blocks runs under any theme. With the Kadence theme active, block colour attributes such as colorClass expect palette1 to palette9, not the theme.json slugs core blocks use; the Kadence theme page covers that split.
  • A page whose layout belongs to Elementor, Beaver Builder, Divi, Bricks, WPBakery, Oxygen or Breakdance is refused, so pattern markup never lands underneath a builder's own data.

Limits

Boundaries on the Kadence Blocks side

  • Pattern availability and licence gates are inspected on the live library; no handwritten library totals establish current availability. verify-rendered-page is a server-side rendered check, followed by actual browser layout and interaction checks.
  • Some library sections are licence-gated; those sections are listed but never inserted, because inserting would need the site's Kadence licence.
  • Patterns that create their own posts, such as Kadence forms, are refused rather than half-installed.
  • Undo covers the post's content alone. It does not remove images you uploaded afterwards or settings changed elsewhere.
  • Hand-composed blocks go through browser finalisation; the server does not check them against the block registry.

Finishing an inserted section

Swapping Design Library images before a page goes live

A Kadence Design Library section arrives with placeholder photography that still loads from Kadence's servers. That is fine on a draft and wrong on a live page: the pictures are not the client's, they depend on a server the site does not control, and they carry no meaningful alt text. kadence-insert-pattern lists those remote image URLs in its result, which turns the clean-up into a checklist rather than a hunt through markup.

For each listed image, the client's own photo goes into the Media Library first, through upload in wp-admin or import-media-url when the image already sits at a URL the owner provided, with alt text written for what the picture shows. The swap itself happens in the block editor, where the Kadence block's image control keeps its own sizing and focal settings intact. Downloading the Kadence placeholder itself only makes sense when its licence allows that use, so the default should be replacing it.

  • Insert into a draft when the page is published and busy; the ledger can restore content, but visitors still see the interim state.
  • After swapping, verify-rendered-page or a browser check confirms no image still points at Kadence's host.
  • audit-media-alt reports newly uploaded images whose alt text is missing or just a file name.

Questions

Kadence Blocks questions

Can an AI insert Kadence Pro Design Library patterns?

No. They appear in the list with requires_licence set, but GoBuildWP fetches the library anonymously and will not insert anything that needs your licence.

Why does it rename uniqueIDs?

Kadence generates each block's CSS against its uniqueID. Reusing an ID the page already has makes two blocks share one set of rules, so a clash is renamed before saving.

Does anything about my site get sent to Kadence?

The library request goes out without your domain, licence key or email, and the index is cached for 12 hours so repeated searches do not refetch it.

Can it build Kadence Advanced Forms?

Not by pattern insert. A form is a kadence_form post referenced from the page block, and the skill builds it as two posts through the Gutenberg queue, never giving the form's root block its own id.

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.

Kadence Blocks is a separate product; no partnership or endorsement is implied.

Try it on Kadence Blocks in Read Only first