Skip to main content
Glama

publish_content_brief

Create a WordPress DRAFT from the brief's markdown (Gutenberg blocks; never live). Uses the brand's verified WordPress connection — the caller's own or a teammate's under the org model — and the normal WordPress write gates. Use dry_run=true first to show the user the title, post type, a block preview and any writing blockers (would_refuse). The user reviews and publishes from wp-admin. WRITING BLOCKERS (placeholders, figures or superlatives with no source) refuse the publish. You cannot waive them: fix them (suggest_sources + accept_source for sources, assist_writing_fix for wording), or give the user the dashboard_url from the error — only a person can choose 'Publish anyway', with a reason, in the XeoRank dashboard. For non-WordPress platforms, hand the user the markdown from get_content_brief, then record the live URL with update_content_brief(published_url=...).

Input Schema

NameRequiredDescriptionDefault
dry_runNoPreview without creating anything
brief_idYesThe brief ID
post_typeNopost (default) | page
wp_site_idNoA specific WordPress connection ID (defaults to the brand's verified one)

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.8/5.0
Behavior5/5

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

Goes well beyond the annotations by disclosing the writing-blocker refusal mechanism, that blockers cannot be waived by the agent, the escape hatch (dashboard_url + human 'Publish anyway' with reason), and the connection/auth model (caller's own or teammate's under org model). These are behavioral traits the annotations cannot express.

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?

Long but front-loaded with the core action first, then preview guidance, then the blocker policy, then the non-WordPress fallback. Dense and mostly justified, though the blocker paragraph is verbose enough to slightly dilute the primary instruction.

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?

Complete for a mutation tool with no output schema: it covers the safety profile, the preview affordance, failure modes and recovery, and the alternative workflow for other platforms. Nothing an agent needs to invoke or recover from errors is missing.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3; the description nonetheless adds real meaning by explaining what dry_run returns (title, post type, block preview, would_refuse blockers) and clarifying wp_site_id's default ('the brand's verified one'). post_type ('post | page') is left to the schema.

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 (Create), resource (WordPress DRAFT from the brief's markdown), and format (Gutenberg blocks), with an explicit scope qualifier ('never live'). An agent can immediately distinguish this from wp_create_page or get_content_brief.

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

Usage Guidelines5/5

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

Gives explicit sequencing ('use dry_run=true first'), names who publishes ('The user reviews and publishes from wp-admin'), states the alternative path for non-WordPress platforms, and prescribes the follow-up (update_content_brief(published_url=...)). Both when-to-use and when-to-route-elsewhere are covered.

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