Skip to main content
Glama

update_template

Idempotent

Change an email, SMS or Telegram template that exists: its name, its text (and for email the subject, from, reply_to). Read its current text first: list_templates with kind and template_id returns it in full. A record template: update_record_template.

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": {
      "app_id": "<app_id>",
      "kind": "<kind>",
      "template_id": "<template_id>"
    },
    "name": "update_template"
  }
}

Input Schema

NameRequiredDescriptionDefault
bodyNoThe whole new text (field html_names without brackets, as in the create tool)
fromNoemail only
kindYesemail | sms | telegram
app_idYesProject ID (from list_projects)
subjectNoemail only
new_nameNo
reply_toNoemail only
template_idYesFrom list_templates

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A3.9/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false, destructiveHint=false, and idempotentHint=true, so the safety profile is covered. The description adds useful context by noting the read-before-write step and that subject/from/reply_to apply to email only, but says nothing about partial-update semantics or what happens to unspecified fields.

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?

Three short sentences with no padding; the core verb+fields come first and the read-first instruction and alternative follow. Efficient, though slightly terse phrasing ('its name, its text') leaves a little to interpretation.

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 mutation tool whose annotations already cover safety and whose params are 88% documented with no output schema, the description supplies the key extras: what it changes, the read-before-write step, and the record-template alternative. Minor gaps remain around partial-update behavior.

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 88%, so the schema already documents nearly all eight parameters, including the 'email only' notes and 'The whole new text' for body. The description largely restates those fields (name, text, subject, from, reply_to) without adding syntax or format details, so baseline 3 is appropriate.

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 (change) and resource (email, SMS or Telegram template) plus the exact fields it can alter. It explicitly routes the record-template case to the sibling update_record_template, so an agent can distinguish it without opening either schema.

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?

Gives a concrete prerequisite workflow ('Read its current text first: list_templates with kind and template_id returns it in full') and names the alternative for record templates. Clear context, but it stops short of explicit when-not/edge-case conditions.

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