Change Design Settings
helpcenter_update_template_settingsChange document-level design settings in the draft: theme colours (light and dark), fonts, corner radius and density; the brand (name, logo, favicon); meta and SEO; and per-page settings such as a page's layout or how a category page lists its articles.
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.
Each entry is a path and its new value — 'theme.colors.primary' → '#635bff' — or a whole group at once: 'theme.colors' → {primary, accent, …}. The paths and the values each accepts are in helpcenter_get_template_guide (topic 'settings'); anything else is refused with the list of what is accepted. Colours take hex, rgb() or hsl() (stored as hex); set theme.darkColors alongside theme.colors so dark mode stays readable. An image setting (brand.logoAssetId, brand.faviconAssetId) takes {source_url: 'https://…'}: the image is copied onto this help center. Region styling has its own tool (helpcenter_update_template_region). This is the guide's set operation.
Args:
settings (array, 1-50): {path, value}; null clears a nullable setting.
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": {
"settings": "<settings>"
},
"name": "helpcenter_update_template_settings"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| etag | No | Optimistic 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. | |
| site_id | No | Which 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. | |
| settings | Yes | The settings to change. Applied in order, all-or-nothing: if one is refused, nothing from this call is saved and the error names it by position (operation 0 is the first entry). |