Skip to main content
Glama

Set the Navigation Menu

helpcenter_set_template_navigation
DestructiveIdempotent

Replace the help center's navigation menu — the one every Navigation component draws, in the header or elsewhere — with the items given, in order.

It edits the help center's design DRAFT (its v2 template): the draft the dashboard's Template Editor opens, with a live preview. Nothing reaches visitors until helpcenter_publish_template — after editing, give the customer the Template Editor link from the result to review, and publish only when they ask. v2 help centers only (a classic one answers template_migration_required). Ids come from helpcenter_get_template.

The whole menu is replaced: include every item to keep, with its id (helpcenter_get_template, section 'navigation'), so its translations survive; an empty list clears it. Links are '/', '/category/' (ids from helpcenter_list_categories), '/content/', '/contacts', or a full https:// URL with type 'external' to open in a new tab. Items take one level of children, and a cssClass to style one — a button-like "Sign up" — with custom CSS. This is the guide's set_navigation operation.

Args:

  • items (array, up to 30): {label, href, type?, cssClass?, id?, children?}.

  • etag (string, optional): from your last read or edit; refuses (stale_draft) if the draft changed since.

Returns: what each entry did (new ids), warnings worth relaying, and the draft status with its new etag.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "items": "<items>"
    },
    "name": "helpcenter_set_template_navigation"
  }
}

Input Schema

NameRequiredDescriptionDefault
etagNoOptimistic lock: the draft etag from your last read, or the one your last edit returned. When given, the call is refused (stale_draft) if someone changed the draft since — so you never build on a state you have not seen. Omit to apply to the current draft.
itemsYesThe whole menu, in order. An empty array clears it.
site_idNoWhich help center to act on: an id from helpcenter_list_sites. Needed when this connection reaches more than one help center; omit it when it reaches one. Applies to this call only — pass it on every call of a task, and ask the user which help center they mean if their request does not say.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.8/5.0
Behavior5/5

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

Annotations mark this destructive, and the description earns that: it spells out that the WHOLE menu is replaced, that unlisted items are lost, that an empty list clears it, and that reusing ids preserves translations. It adds behavior not in the annotations — draft-only staging, stale_draft refusal via etag, and the template_migration_required failure mode.

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?

Dense but front-loaded — the replace semantics and draft/publish rule come first, with clear Args/Returns blocks. It runs long and repeats some schema-stated rules (href formats, children depth), but nearly every sentence carries decision-relevant information.

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?

No output schema exists, yet the description explains the return value (per-entry results with new ids, warnings, draft status plus new etag). Combined with the publish workflow, error modes, and id/href sourcing rules, an agent has everything needed to call and follow up correctly.

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 is 3, but the description adds practical meaning: how to source ids, why ids matter (translation survival), the allowed href forms, that external type opens a new tab, one level of children, and a concrete styling example ('a button-like Sign up'). It omits site_id entirely, though the schema documents that parameter thoroughly.

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 precise verb and resource — 'Replace the help center's navigation menu ... with the items given, in order' — and scopes it to the specific Navigation component in the template. It is immediately distinguishable from sibling mutation tools like helpcenter_update_template_components or helpcenter_add_template_css.

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?

Explicit when-to-use and when-not-to-publish guidance: edits a draft, nothing reaches visitors until helpcenter_publish_template, give the customer the Template Editor link, publish only when they ask. It also names the prerequisite sources (helpcenter_get_template for ids, helpcenter_list_categories for category hrefs) and states the v2-only constraint with the exact error returned for classic sites.

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