Skip to main content
Glama

qrtap_update_page

Publish a new version of an existing public page by slug while keeping its public URL and printed QR code valid; send full replacement content.

Instructions

Publish a new version of an existing public page, identified by its slug. The slug and public_url do not change, so printed QR codes stay valid. IMPORTANT: content REPLACES the previous content wholesale — any field you omit is erased, not kept. To change one field, first read the current content with qrtap_get_page, merge your change into it, and send the whole object back.

Input Schema

NameRequiredDescriptionDefault
slugYesPage slug as returned by qrtap_list_pages / qrtap_create_page.
contentYesPage content. `name` is required and becomes the page heading; at least one contact (phone, whatsapp, instagram or bookingUrl) is required. Everything is sanitised server-side: unknown keys are dropped, phone numbers are normalised, only http/https links survive.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.4

TDQS

A4.6/5.0
Behavior4/5

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

With no annotations, the description carries the burden and does it well: it discloses that content is replaced wholesale with omitted fields erased, and that slug/public_url are immutable so printed QR codes stay valid. It does not state whether publishing is immediate/live, whether auth or ownership is required, or what confirming response comes back, which keeps it short of a 5.

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

Conciseness5/5

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

Three tight sentences: identity, consequence of immutability, then the destructive-replace warning with the remedy. The most dangerous fact is capitalised and placed before the recipe.

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 2-parameter mutation with no output schema, the definition covers identity, mutation semantics and correct usage pattern. The remaining gap is the return value and the meaning of 'new version' (numbering, rollback availability), which an agent calling it blind would want to know.

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 genuine semantics the schema lacks: it warns that `content` is a full replacement object rather than a patch, which changes how the agent must construct the parameter. It says nothing extra about `slug` beyond the schema, hence not a 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?

States a specific verb and resource ('Publish a new version of an existing public page') plus the identifier ('by its slug'), which cleanly separates it from the sibling qrtap_create_page and from qrtap_get_page.

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?

Explicitly routes the agent to qrtap_get_page with a read-merge-write recipe for the partial-update case, and the framing of 'existing public page' implicitly excludes creation. The when and how are both spelled out.

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