Skip to main content
Glama

Update page metadata

update_page_meta
Destructive

Update a page's SEO metadata: title, description, image (Open Graph image URL), index (whether search engines may index it), and jsonLD structured data. Partial update: fields you provide are changed, omitted fields are preserved. For JSON-LD prefer jsonLDPatch for surgical edits (changing one key cannot drop the rest of the document); use jsonLD only to replace or clear the whole document. Both are validated before saving: the document must be a schema.org node (object with @context and @type), an array of such nodes, or an object with @context and @graph. Does NOT change page content (use save_page_content or save_section_content for that). Metadata has no draft and no history: on a published page the change is live at once, including index=false, which marks the live page noindex.

Input Schema

NameRequiredDescriptionDefault
imageNoOpen Graph image URL
indexNoWhether search engines should index this page
titleNoPage title / meta title
jsonLDNoComplete JSON-LD document as a JSON string. REPLACES the page's existing structured data. Pass "" to clear it. Mutually exclusive with jsonLDPatch.
pageIdYesThe page ID
projectIdYesThe project ID
descriptionNoMeta description
jsonLDPatchNoJSON object (as a string) merged into the page's current JSON-LD document (RFC 7396): matching keys are replaced, null deletes a key, arrays are replaced wholesale. Use for surgical edits, e.g. {"image":"https://…"}. Mutually exclusive with jsonLD.

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?

Annotations only flag destructive=true/openWorld=true; the description goes well beyond by disclosing that metadata has no draft and no history, that changes are live immediately on a published page, and that index=false marks the live page noindex. It also states the validation contract (schema.org node / array / @graph) applied before saving, which is essential risk context for a destructive write.

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?

Front-loads the purpose and field list, then layers partial-update semantics, the jsonLD guidance, validation rules, and the no-content/no-draft caveats. Dense and well ordered, though the middle sentences are long enough that a reader must work through them carefully.

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?

For an 8-parameter destructive mutation with no output schema, the description covers everything an agent needs: scope, partial-update behavior, the jsonLD vs jsonLDPatch decision, validation requirements, irreversibility (no draft/history), and sibling routing. No return-value explanation is required since no output schema exists.

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, but the description adds real meaning: it explains the jsonLD/jsonLDPatch mutual exclusivity and the failure mode motivating the choice ('changing one key cannot drop the rest of the document'), plus the accepted JSON-LD shapes. It adds little for title/description/image beyond the schema, keeping it short of 5.

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?

Opens with a specific verb+resource ('Update a page's SEO metadata') and enumerates the exact fields touched (title, description, image, index, jsonLD). It explicitly carves out what it does not do ('Does NOT change page content'), routing that to save_page_content/save_section_content, so an agent can separate it from siblings like update_entry or save_page_content.

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 when-to-use guidance for the ambiguous jsonLD vs jsonLDPatch choice ('prefer jsonLDPatch for surgical edits… use jsonLD only to replace or clear the whole document'), states partial-update semantics (provided fields change, omitted preserved), and names the alternative tools for content edits. Nothing is left to inference.

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