Skip to main content
Glama

WebZum - The Hosting Layer for AI-Generated Web Content

update_contact

Update a WebZum site's universal contact fields — phone, email, WhatsApp, the primary contact channel, address, hours — OR the business/brand name. Use this (NOT update_site_html) for these fields: it updates the canonical business record AND sweeps every page, so contact-form delivery, tel:/mailto:/wa.me links, header, footer, page titles, and body copy all stay in sync.

WhatsApp: pass an instruction like "add my WhatsApp +966 55 123 4567" (keep the country code) to render a wa.me click-to-chat button site-wide, or "make WhatsApp the main way to reach us" to set it as the primary CTA.

Required: businessId, versionId, and a conversationHistory containing at least one user turn describing the change verbatim. Do NOT use for general copy/layout edits (use update_site_html) — this tool only touches contact fields + the business name.

Returns { versionId, status: 'completed' | 'in_progress', ...extra }. If status is 'in_progress', poll get_site_status with the returned versionId every 5-10s until isComplete is true.

Concurrency: edits on the same businessId MUST be serial.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
versionIdYesThe versionId to base this edit on.
businessIdYesThe site's businessId.
conversationHistoryYesRecent chat turns describing the contact/name change. Must include at least one user turn with the verbatim request (e.g. 'add my WhatsApp +966551234567 and make it the main contact').

Schema Changelog

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

  1. Added

TDQS

A5/5.0
Behavior5/5

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

Annotations only indicate non-read-only and non-destructive, but the description adds substantial behavioral context: it updates the canonical record and every page, syncs contact links/header/footer, requires verbatim conversationHistory, may return in_progress requiring polling, and mandates serial concurrency. This far exceeds the annotation baseline.

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?

The description is well-structured and every sentence provides necessary operational detail: scope, sibling distinction, WhatsApp examples, required params, return/polling behavior, and concurrency rule. It is long but appropriately so for a tool with async behavior and cross-page side effects.

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?

Given the tool's complexity and lack of output schema, the description provides complete operational context: return shape, polling instructions, concurrency constraints, and explicit scope boundaries. This is sufficient for an agent to correctly select and invoke the tool without further detail.

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

Parameters5/5

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

Although the schema already has 100% coverage, the description enriches parameter meaning with concrete examples for WhatsApp instructions and clarifies that conversationHistory must contain a verbatim user turn. It also explicitly names the required triple (businessId, versionId, conversationHistory) in prose, reinforcing 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?

The description clearly states the tool updates a WebZum site's universal contact fields or business name, listing specific fields (phone, email, WhatsApp, channel, address, hours). It explicitly differentiates from the sibling tool update_site_html, making the purpose unambiguous.

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?

The description gives explicit usage guidance: use this tool for contact fields and business name, NOT for general copy/layout edits (use update_site_html). It also explains the sweeping behavior and includes specific WhatsApp instruction patterns, leaving no ambiguity about when to invoke it.

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.

TDQS

A4/5.0
Disambiguation4/5

Most tools have clear, distinct purposes: cloning, creating, hosting, editing, and regenerating different site parts. The main ambiguity is between create_lead_gen_site and generate_geo_page, which both create lead-gen pages but differ in targeting and workflow; however, their descriptions clarify the use cases sufficiently.

Naming Consistency4/5

Tool names follow a consistent lowercase verb_noun pattern (e.g., clone_site, host_file, update_site_html). Minor inconsistencies exist: create vs. generate for similar actions (create_site vs. generate_geo_page) and get vs. list for retrieval (get_hosted_files vs. list_user_sites), but these are predictable and readable.

Tool Count3/5

With 17 tools, the count is slightly heavy for a hosting service, but the variety of operations (creation, cloning, file hosting, editing, regeneration, status, search) justifies most of them. A few tools (e.g., four regenerate_* tools) could potentially be consolidated, but the scope still feels reasonable.

Completeness4/5

The toolset covers the full lifecycle: create, clone, host, list, edit, update, and regenerate site components. Notable gaps include no delete operation for sites or files and no explicit version rollback, but agents can work around these by using host_file to overwrite and relying on site status for progress.

Resources