Skip to main content
Glama

Create or update a location display variable

upsert_geo_variable
Idempotent

Create or replace one location-based display variable using the exact plain-text fallback and regional values supplied by the owner. variable is an object with default and rules; rules may select by ISO country, region and city. The result includes the literal marker to place in displayed copy. This changes displayed copy only and never checkout or payment pricing.

Input Schema

NameRequiredDescriptionDefault
nameYesCustom variable name, such as delivery_message
site_idYesThe site, from list_sites
variableYesLocation display variable configuration
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.

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. Added

TDQS

A4/5.0
Behavior4/5

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

With annotations already covering idempotency and non-destructiveness, the description adds real value: it explains the replace semantics, that values must be verbatim plain text from the owner, and that the response carries a literal marker for displayed copy. It says nothing about permissions or how existing rules are merged on replace, which would have earned 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 sentences, front-loaded with the action and scope, followed by the parameter shape and then the boundary condition. No filler or repetition.

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 nested-object mutation with no output schema, the description covers the return marker, the replace semantics, and the blast radius (display copy only). Missing only operational detail such as required permissions or the behavior when a rule overlaps an existing one.

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% and the nested structure of `variable.default` and `variable.rules` is fully documented there. The description restates that shape and the country/region/city selectors, adding the 'plain-text' constraint but no new syntax or format detail, so the baseline 3 applies.

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?

States a specific verb pair (create or replace) and a specific resource (location-based display variable). It is clearly distinct from the read-only sibling list_geo_variables, but it never names an alternative tool explicitly, leaving that inference to the reader.

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?

"using the exact plain-text fallback and regional values supplied by the owner" tells the agent not to invent values, and "changes displayed copy only and never checkout or payment pricing" draws an explicit boundary. It stops short of naming alternatives such as set_runtime_text or list_geo_variables for discovery.

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