Skip to main content
Glama
vuluu2k

WebCake Landing MCP

by vuluu2k

update_page

Destructive

Validate edited page sources, preview changes with a dry run, and save updates only when confirmed. Prevents overwriting concurrent edits by checking versions before commit.

Instructions

Overwrites an EXISTING page's source with an edited tree (source-only; re-render in the editor for preview/publish). Validates first. DEFAULTS to dry_run=true (validates, caches the source as draft_id, previews the request, token masked); dry_run=false to actually save. Accepts draft_id from a previous call (dry_run, or a timed-out/failed update) — re-runs from the cached source without re-sending the full JSON. Needs WEBCAKE_API_BASE + WEBCAKE_JWT.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
forceNoDefault false. true = save even when the page changed outside this session, discarding those changes. Only pass it after the user has said to.
sourceNoThe edited page source { page, popup, settings, options, cartConfigs } (object or JSON string). Required unless draft_id is given. The compacted tree from get_page can be edited and sent back AS-IS — sparse nodes are re-hydrated from factory defaults (a full tree also works).
dry_runNoDefault TRUE — validate, cache the source as draft_id, and preview without sending. Set false to actually save.
page_idNoThe page id to update (must be owned by the account). Required unless draft_id is given (the page_id is stored in the draft).
draft_idNoA draft_id from a previous update_page call (dry_run=true or a timed-out/failed update). Loads the cached source — no need to re-send the full JSON. Use for dry-run → real call transitions and retrying after a timeout.
base_versionNoThe source_version get_page returned for this page. When it no longer matches the live page the save is REJECTED instead of reverting whatever was edited in the Webcake editor meanwhile. Optional — omit it and the server uses the version it recorded on your last read/write of this page.

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. Changed2 schema fields changedv1.5.2
    • addedInput schema / properties / base_version
      Added value: +{
      +  "description": "The source_version get_page returned for this page. When it no longer matches the live page the save is REJECTED instead of reverting whatever was edited in the Webcake editor meanwhile. Optional — omit it and the server uses the version it recorded on your last read/write of this page.",
      +  "type": "string"
      +}
    • addedInput schema / properties / force
      Added value: +{
      +  "description": "Default false. true = save even when the page changed outside this session, discarding those changes. Only pass it after the user has said to.",
      +  "type": "boolean"
      +}
  2. First observedv1.5.0

TDQS

A4.3/5.0
Behavior5/5

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

Beyond the destructiveHint annotation, it reveals validation-first behavior, the default dry_run=true mode with draft caching and token masking, retry semantics for timed-out/failed updates, and the required WEBCAKE_API_BASE + WEBCAKE_JWT context. No contradiction with the annotations.

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?

The description is dense and front-loaded, starting with the core overwrite operation, then validation, dry-run behavior, draft_id retry, and credentials. The draft_id explanation is somewhat redundant with the schema field description, and the paragraph could be split into scannable points.

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

Completeness4/5

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

For a destructive, credential-requiring update tool with no output schema, it covers validation, dry-run default, draft_id retries, and authentication. However, it leaves the exact response shape unspecified and does not resolve how dry_run=false is actually passed given the schema.

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 baseline is 3. The description adds useful context for draft_id reuse and the dry-run default, but the described dry_run=true/false switch has no corresponding schema property while additionalProperties is false, and the draft_id sentence largely mirrors the schema's own description.

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?

The description states a specific verb and resource: 'Overwrites an EXISTING page's source.' The parenthetical 'source-only; re-render in the editor for preview/publish' clearly distinguishes this tool from preview/publish workflows and from partial-edit or create sibling tools.

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?

It gives clear context that this is the full source-overwrite operation, defaults to a validating dry run, and requires an explicit dry_run=false to actually save. It does not explicitly name alternatives like patch_page or validate_page, so it misses the explicit when-not-to-use bar for a 5.

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

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/vuluu2k/webcake-landing-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server