Skip to main content
Glama

Set a site's title, description, social image, favicon or crawler policy

update_site_settings
Idempotent

Set any site-level setting that is not code: the default page title, the meta description, the social sharing image (og_image_url), the browser-tab icon (favicon_url), which AI crawlers (ai_crawlers) and search engines (search_crawlers) may read the site, the llms_txt content, and custom robots.txt rules (robots_txt_rules, robots_txt_custom). Only the fields you supply change; pass null to clear one. USE THIS RATHER THAN refine_site FOR ALL OF THEM. They live outside the site's code — Mondovo writes them straight into every published page's head, or serves them as /robots.txt and /llms.txt — so a refinement cannot set them, and asking one to try costs an AI round-trip and may put a stray tag in a component where it does nothing. This tool is instant and deterministic. favicon_url should be a square PNG, SVG or ICO under 500KB (32x32 or 64x64 is ideal); Mondovo downloads it and stores it permanently, so a temporary, generated or third-party URL is fine — you do not need to call upload_asset first. Crawler fields are per-crawler and independent: sending one leaves the others as they were. Blocking search_crawlers.googlebot removes the site from Google — confirm that with the user before doing it. Nothing here reaches visitors until the site is published: call publish_site afterwards for a live site.

Input Schema

NameRequiredDescriptionDefault
titleNoDefault browser-tab title and search-result headline for the site. Keep under ~60 characters. null clears it.
site_idYesThe site to update
llms_txtNoMarkdown served at /llms.txt, describing the site for AI assistants. null removes it.
user_goalNoOptional: the user's goal behind this call, in one short sentence of plain words (e.g. "add a page so customers can book tables"). No names, emails or other personal details.
ai_crawlersNoWhether each AI crawler may read the site. true allows, false blocks. Written into robots.txt at publish.
descriptionNoDefault meta description shown in search results. Keep under ~160 characters. null clears it.
favicon_urlNoHTTPS URL of the browser-tab icon — PNG, SVG, ICO, JPEG, WebP or GIF, under 500KB, square (32x32 or 64x64 is ideal). Mondovo downloads it and stores it permanently, so a temporary or third-party URL is fine. null removes the favicon.
og_image_urlNoHTTPS URL of the social sharing image (Open Graph). null clears it.
schema_enabledNoWhether Mondovo injects Schema.org JSON-LD into published pages.
search_crawlersNoWhether each search engine may index the site. true allows, false blocks. Blocking Googlebot removes the site from Google — confirm with the user first.
robots_txt_rulesNoCustom robots.txt rules, REPLACING any existing set. null clears them. The default "User-agent: * / Allow: /" and the crawler toggles above are emitted separately — these are extra rules on top.
robots_txt_customNoRaw directives appended verbatim to the end of robots.txt. null clears them.
schema_descriptionNoBusiness description used in structured data only, separate from the visible site description. null clears it.
schema_price_rangeNoPrice-range indicator shown in structured data: "$", "$$", "$$$" or "$$$$". null clears it.
schema_business_typeNoOverride the auto-detected Schema.org business type, e.g. "Restaurant", "Dentist". null restores auto-detection.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • addedInput schema / properties / user_goal
      Added value: +{
      +  "description": "Optional: the user's goal behind this call, in one short sentence of plain words (e.g. \"add a page so customers can book tables\"). No names, emails or other personal details.",
      +  "type": "string"
      +}
  2. First observed

TDQS

A4.4/5.0
Behavior5/5

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

Beyond the annotations (readOnlyHint=false, idempotentHint=true) it discloses partial-update semantics ('Only the fields you supply change; pass null to clear one'), that Mondovo downloads and stores the favicon permanently so a temporary URL is fine, per-crawler independence, that nothing is visible until publish, and it flags a high-consequence case requiring user confirmation (blocking Googlebot). That is meaningful context the annotations cannot convey.

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?

Strongly front-loaded – the scope statement and the refine_site exclusion come first, then edge cases. It is somewhat long for a settings tool and repeats the favicon size/format spec that already lives in the schema.

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

Completeness3/5

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

For a 15-parameter mutation tool with nested objects and no output schema, the description covers the important workflows (clear via null, publish afterwards, Googlebot caution) but never points at get_site_settings for reading current values or clarifies overlap with set_favicon. An agent has enough to invoke it, but not a fully mapped view of the neighboring tools.

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 would be 3, but the description adds real meaning: that favicon_url needs no prior upload_asset call, that crawler flags are independent of one another, and that null is the clearing sentinel. The favicon format/size detail is largely duplicated from the schema, which keeps this from 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?

The description opens with a specific verb+resource ('Set any site-level setting that is not code') and enumerates the concrete setting families with their parameter names (title, description, og_image_url, favicon_url, crawler policy, llms_txt, robots.txt). It explicitly carves out the boundary against refine_site, so an agent can tell the two apart without opening either schema.

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 names an alternative explicitly ('USE THIS RATHER THAN refine_site FOR ALL OF THEM') and gives the reason why, plus a downstream step ('call publish_site afterwards for a live site'). What it does not address is the closely related sibling set_favicon / generate_favicon_options, which an agent could plausibly confuse with setting favicon_url.

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