Skip to main content
Glama

mcp-easy-ai__wp_list_patterns

Read-only

Lists the block patterns registered on the site — the ready-made block layouts from core, the active theme and plugins that the editor offers in its Patterns inserter (not synced patterns / reusable blocks, which wp_list_blocks covers). Optional filters, all applied locally: category (a pattern category slug such as featured, text, call-to-action, banner, posts), keyword (case-insensitive match on title, description and keywords), source (where the pattern comes from — core, theme, plugin, pattern-directory/core, pattern-directory/theme, pattern-directory/featured; WordPress records a source only for core and pattern-directory patterns, so for the rest it is derived from the slug prefix: the active theme or its parent → theme, anything else → plugin), per_page (default 20, max 100), page. Returns { patterns: [{ slug, title, description, categories, block_types, post_types, source }], total, total_pages, page, per_page } without the block markup. Pass slug (a pattern `nam… Through Royally: its server marks it read-only, so it runs straight away.

Input Schema

NameRequiredDescriptionDefault
pageNoPage number for pagination.
slugNoA pattern name (e.g. `core/query-standard-posts`, `twentytwentyfour/banner-hero`). Returns that single pattern with its content and required_blocks instead of a list.
sourceNoKeep patterns from this source: `core`, `theme`, `plugin`, `pattern-directory/core`, `pattern-directory/theme` or `pattern-directory/featured`. Derived from the slug prefix for patterns that do not declare one (theme patterns → `theme`, others → `plugin`).
keywordNoCase-insensitive match on title, description and keywords.
site_idNoSite to run this tool on: 8ef2e52b-bd07-4671-a363-ebe8b480b65c (https://demo.royalplugins.com)
categoryNoKeep patterns in this category slug (e.g. `featured`, `text`, `call-to-action`, `banner`, `posts`).
per_pageNoItems per page (1-100).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.4/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Goes well beyond the readOnlyHint/destructiveHint annotations: it discloses that filters are applied locally, explains the non-obvious source-derivation rule (declared source vs. slug-prefix inference), states that block markup is omitted from the response, and notes that `slug` switches to a single-pattern mode returning content and required_blocks.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Core scope and the sibling exclusion are front-loaded and most sentences carry real information. However the final sentence is garbled/truncated ('Pass `slug` (a pattern `nam… Through Royally: its server marks it read-only...'), which costs readability.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema exists, but the description fully specifies the return shape ({ patterns: [{...}], total, total_pages, page, per_page }) and the alternate single-pattern return when `slug` is passed, so an agent knows what to expect.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all seven parameters including the source-derivation caveat and per_page bounds. The description restates these with examples rather than adding meaning beyond the structured fields; baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource ('Lists the block patterns registered on the site') and immediately pins down scope: core/theme/plugin patterns from the editor's inserter, explicitly excluding synced patterns handled by wp_list_blocks. This lets an agent distinguish it from the large set of sibling list tools without opening a schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Names the alternative tool (wp_list_blocks) and the exact condition that selects it (synced patterns / reusable blocks). It does not give explicit guidance on when to use `slug` mode versus list mode or when filters are preferable, but the routing context is clearly stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources