Skip to main content
Glama

royal-mcp__wp_validate_blocks

Read-onlyIdempotent

Check block markup before writing it: unknown block types, unbalanced block comments, HTML outside blocks, and whether it survives a parse and re-save. A structural check; only the block editor runs each block's own save() function. Read-only. (site: demo.royalplugins.com) Through Royally: read-only, runs straight away.

Input Schema

NameRequiredDescriptionDefault
markupYesSerialized block markup, e.g. <!-- wp:paragraph --><p>Text</p><!-- /wp:paragraph -->. Copy existing markup from wp_get_post or wp_get_synced_pattern as a model.
site_idNoSite to run this tool on: 8ef2e52b-bd07-4671-a363-ebe8b480b65c (https://demo.royalplugins.com)

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint and destructiveHint=false, so the safety profile is covered; the description still adds real value by disclosing the limitation that this is a structural check only and that per-block save() execution happens solely in the editor. That caveat materially affects how much confidence an agent should place in a pass result. It stops short of describing the findings/severity format returned.

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

Conciseness3/5

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

The check list is front-loaded and the important save() caveat appears early, which is good. But the read-only claim is stated twice ('Read-only.' and 'Through Royally: read-only, runs straight away') and the site name repeats the site_id enum description, so a meaningful share of the text is redundant.

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

Completeness3/5

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

Input side is fully covered by the schema and the description's enumeration of checks. With no output schema, however, the description should say what a validation result looks like (per-issue findings? a boolean? severity?), and it does not — an agent cannot tell how to interpret a pass or fail.

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%, and the markup parameter already ships an example and a pointer to wp_get_post / wp_get_synced_pattern for sourcing markup. The description contributes no additional parameter meaning, so the baseline 3 applies.

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

Purpose4/5

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

States a concrete verb and resource ('Check block markup') and enumerates the specific failure classes it detects: unknown block types, unbalanced block comments, HTML outside blocks, and parse/re-save survival. That is far more specific than its sibling block tools, though it never names an alternative (e.g. wp_insert_blocks, wp_update_block_attributes) to explicitly anchor the distinction.

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?

'Check block markup before writing it' gives a clear triggering context — pre-write validation ahead of insert/update operations. It does not state exclusions or name the write tools it should precede, so the routing is implied rather than explicit.

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