Skip to main content
Glama

Update site email

update_site_email
DestructiveIdempotent

Save a site email's subject, preheader, Liquid source, or reset: true. Rejects unknown objects, a missing required part and elements inboxes can't show.

Input Schema

NameRequiredDescriptionDefault
idNoSite id.
kindYesSee list_site_emails.
resetNoRestore the default email.
sourceNoWhole Liquid source.
subjectNo≤200 chars; empty = default.
preheaderNoInbox preview text, ≤200 chars; empty = default.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changed
    • changedInput schema / properties / kind / description
      Previous value: -"Email kind from list_site_emails."New value: +"See list_site_emails."
    • changedInput schema / properties / kind / enum
      Previous value: -[
      -  "order_receipt",
      -  "subscription_welcome",
      -  "order_shipped",
      -  "gift_card_gifted",
      -  "gift_card_self",
      -  "customer_login",
      -  "download_delivery",
      -  "download_update"
      -]New value: +[
      +  "order_receipt",
      +  "subscription_welcome",
      +  "order_shipped",
      +  "booking_confirmed",
      +  "booking_requested",
      +  "booking_declined",
      +  "booking_balance",
      +  "booking_deposit",
      +  "booking_deposit_link",
      +  "booking_agreement",
      +  "booking_agreement_sign",
      +  "booking_abandoned",
      +  "gift_card_gifted",
      +  "gift_card_self",
      +  "customer_login",
      +  "download_delivery",
      +  "download_update"
      +]
    • changedInput schema / properties / source / description
      Previous value: -"The whole Liquid source, as get_site_email returns it."New value: +"Whole Liquid source."
  2. Changed2 schema fields changed
    • removedInput schema / properties / nodes
      Removed value: -{
      -  "description": "Full flat node map (ROOT + every node).",
      -  "type": "object"
      -}
    • addedInput schema / properties / source
      Added value: +{
      +  "description": "The whole Liquid source, as get_site_email returns it.",
      +  "maxLength": 200000,
      +  "type": "string"
      +}
  3. Changed1 schema field changed
    • changedInput schema / properties / kind / enum
      Previous value: -[
      -  "order_receipt",
      -  "subscription_welcome",
      -  "gift_card_gifted",
      -  "gift_card_self",
      -  "customer_login",
      -  "download_delivery",
      -  "download_update"
      -]New value: +[
      +  "order_receipt",
      +  "subscription_welcome",
      +  "order_shipped",
      +  "gift_card_gifted",
      +  "gift_card_self",
      +  "customer_login",
      +  "download_delivery",
      +  "download_update"
      +]
  4. Changed1 schema field changed
    • changedInput schema / properties / id / description
      Previous value: -"Site id. Pass it on every call."New value: +"Site id."
  5. First observed

TDQS

B3.4/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true, idempotentHint=true and readOnlyHint=false, so the safety profile is covered. The description adds real value beyond that by disclosing failure modes — unknown objects, missing required parts, and markup inboxes can't render are rejected — plus the default-restoring semantics of empty subject/preheader. It stops short of saying what state reset destroys or what a successful call returns.

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?

A single front-loaded sentence with the writable fields listed before the validation caveat, so no sentence is wasted. The phrasing 'or reset: true' is slightly compressed and reads as schema leakage rather than prose.

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 destructive six-parameter mutation with no output schema, the definition covers inputs and rejection cases but omits what a successful call returns and whether partial updates are permitted (omitted fields untouched vs. cleared). Adjacent tools like preview_site_email, which a careful agent would want to know about, go unmentioned.

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 all six parameters are already documented, including the enum's pointer to list_site_emails and the 200-char limits. The description reinforces which fields are the writable surface and that reset is a boolean toggle, but adds no syntax or precedence detail (e.g. what happens if reset and source are sent together). Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Names a specific verb (Save) and resource (site email) and enumerates the mutable surface: subject, preheader, Liquid source, or reset. An agent can distinguish it from get_site_email, preview_site_email and list_site_emails without opening a schema, though it doesn't name those siblings explicitly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use guidance: nothing says to call get_site_email or list_site_emails first, or when reset is preferable to supplying a new source. The only usage-adjacent content is a list of rejection conditions, which constrains the call rather than explaining when to make 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.

Resources