Skip to main content
Glama

Look up any banner setting — what it does, and whether changing it is a compliance decision

help.explainConfigKey
Read-only

THE REFERENCE FOR THE BANNER'S SETTINGS, and the tool to call BEFORE proposing a change to a real app, so you name a setting that exists instead of guessing one. Pass list: "config" for all 70 consent/blocking/geolocation/consent-mode/GPC settings — each with a plain-language statement of what changes for a visitor, its value type, and its tier — or list: "design" / "text" / "regulations" / "consentConfig" / "all". Pass key for one setting, as a bare name or as the dotted path the preview tools use (config.blocking, config.regulations.gdpr, text.bodyText). It tells you WHICH pair of account.* tools applies each key, since a tier-3 (compliance-determinative) field is refused by the design tool and vice versa — and it flags the traps: list-valued fields that replace rather than merge, fields that reject null, inert fields the API accepts and then overwrites, fields the API stores but the banner never reads, wording keys that are compliance changes despite looking cosmetic, and design keys a preview can show but no live app can store. Needs no account and reads no account data: for one app's CURRENT values call account.getDesign (authenticated — see help.explainTokenSetup).

Input Schema

NameRequiredDescriptionDefault
keyNoOne key to explain. Accepts a bare name (`blocking`, `bodyText`, `bannerBackground`) or a dotted path exactly as the preview tools take it (`config.blocking`, `config.regulations.gdpr`, `design.primaryColor`, `text.bodyText`, `consentConfig.*`). Every match is returned when a bare name exists in more than one vocabulary.
listNoEnumerate a whole vocabulary instead of explaining one key: `config` (the 70 BannerConfigJSON settings, each with its tier and consequence), `regulations`, `consentConfig`, `design`, `text`, `snippet` (the huOptions keys that go in the page, including `blocking`, plus preview-only keys that must never go in the page), or `all`. Use this to find out WHICH setting does what you want before naming one — start with `config` for anything about consent categories, geolocation, consent mode or GPC.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / properties / list / description
      Previous value: -"Enumerate a whole vocabulary instead of explaining one key: `config` (the 70 BannerConfigJSON settings, each with its tier and consequence), `regulations`, `consentConfig`, `design`, `text`, `snippet` (the huOptions keys that go in the page, including `blocking`), or `all`. Use this to find out WHICH setting does what you want before naming one — start with `config` for anything about consent categories, geolocation, consent mode or GPC."New value: +"Enumerate a whole vocabulary instead of explaining one key: `config` (the 70 BannerConfigJSON settings, each with its tier and consequence), `regulations`, `consentConfig`, `design`, `text`, `snippet` (the huOptions keys that go in the page, including `blocking`, plus preview-only keys that must never go in the page), or `all`. Use this to find out WHICH setting does what you want before naming one — start with `config` for anything about consent categories, geolocation, consent mode or GPC."
  2. Changed1 schema field changed
    • changedInput schema / properties / list / description
      Previous value: -"Enumerate a whole vocabulary instead of explaining one key: `config` (the 69 BannerConfigJSON settings, each with its tier and consequence), `regulations`, `consentConfig`, `design`, `text`, `snippet` (the huOptions keys that go in the page, including `blocking`), or `all`. Use this to find out WHICH setting does what you want before naming one — start with `config` for anything about consent categories, geolocation, consent mode or GPC."New value: +"Enumerate a whole vocabulary instead of explaining one key: `config` (the 70 BannerConfigJSON settings, each with its tier and consequence), `regulations`, `consentConfig`, `design`, `text`, `snippet` (the huOptions keys that go in the page, including `blocking`), or `all`. Use this to find out WHICH setting does what you want before naming one — start with `config` for anything about consent categories, geolocation, consent mode or GPC."
  3. Added

TDQS

A4.8/5.0
Behavior5/5

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

Annotations only supply readOnlyHint, but the description adds substantial behavioral context: it reads no account data and needs no account, it reports which account.* tool pair applies each key, and it flags concrete traps (list-valued fields that replace rather than merge, null-rejecting fields, inert fields the API overwrites, stored-but-unread fields, preview-only design keys). That is real disclosure beyond the annotation.

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?

Purpose is front-loaded in the first clause, but the delivery is essentially two very long sentences, the second of which packs the tier-routing rule and a seven-item trap list into one run-on. Every clause carries information, but the structure could be broken up for faster scanning.

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?

With no output schema and only two optional params, the description fully covers what a caller needs: what each mode returns (key vs whole vocabulary), the key-path formats, the compliance tier caveat, and the hand-off to account.getDesign for live values. Nothing material is missing for correct invocation.

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 description coverage is 100%, so baseline is 3; the description adds meaning on top by explaining the tier-3 vs design-tool refusal relationship and that bare names may match across vocabularies, and it names most of the list enum values. It omits 'snippet' from its own enumeration, which the schema covers, so it is additive but not exhaustive.

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+resource: it is 'THE REFERENCE FOR THE BANNER'S SETTINGS', explaining one key or enumerating a whole vocabulary. It distinguishes itself from the sibling demo.explainConfigKey (no account) and from account.getDesign (current values for one app), so an agent can route without opening a schema.

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?

Gives explicit timing and alternatives: call it BEFORE proposing a change so you name a setting that exists, start with list: "config" to find the right setting, and use account.getDesign (authenticated) when you need one app's current values. When/when-not and the alternative 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.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources