Skip to main content
Glama

dForms

Edit a notification email

update_notification
DestructiveIdempotent

Change the workspace setting of one response email: only the fields you pass change, and the copy they replace is lost. Subject and body are plain text with {{token}} markers: {{formName}}, {{respondentName}}, {{respondentEmail}}, {{score}}, {{outcomeLabel}}, {{formLink}}, {{answers}}. Any other marker is saved but reaches the inbox as written; warnings lists it. Forms with their own override (list_form_notifications) keep it. Destructive: it deletes or replaces data, so it is best confirmed with the user first, naming exactly what will change. After an error or a timeout, a read shows whether the change went through, so a blind retry is not needed. Owners and admins only.

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": {
      "email_key": "<email_key>"
    },
    "name": "update_notification"
  }
}

Input Schema

NameRequiredDescriptionDefault
bodyNoThe body as plain text, with {{token}} markers. null puts the default back.
enabledNoWhether the email is sent.
subjectNoThe subject, with {{token}} markers. null puts the default back.
email_keyYessubmission_received: the notice to the team. submission_confirmed: the receipt to the person who answered.
recipientsNoWho gets the notice to the team. Not accepted on submission_confirmed, which goes to the person who answered.
workspace_idNoThe workspace this call acts in: an id from list_my_workspaces. Required for a person signed in with several workspaces and for staff of this deployment; optional with an API key or with only one workspace.

Output Schema

NameRequiredDescriptionDefault
settingYes
warningsNoWhat was saved but will not work as written (a {{token}} the emails do not know stays literal in the email), for the user to know.
workspaceYesThe workspace this call acted in, to compare with the one the user means.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.6/5.0
Behavior5/5

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

Beyond the annotations (destructive, idempotent, not read-only), the description discloses that replaced copy is lost, that unknown {{markers}} are persisted but delivered literally and surfaced in warnings, that per-form overrides take precedence, and that retries are risky so a read should confirm state. It also states the permission model. This is exactly the extra context annotations cannot carry.

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 and each subsequent sentence adds a distinct rule (partial update, token behavior, override precedence, destructive confirmation, retry recovery, permissions). It is a dense single paragraph with some run-on feel, but no sentence is filler.

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?

An output schema exists and the description defers return details to it while naming the 'warnings' field that matters. For a destructive partial-update tool with six parameters, the description covers preconditions, data loss, token semantics, override interaction, and failure recovery — nothing an agent needs to call it safely is missing.

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 the baseline is 3; the description still adds value by enumerating the supported {{token}} set and clarifying that non-listed markers pass through literally with a warning, plus that forms with their own override keep it (relevant to recipients/enabled effects). It does not restate the null-restores-default semantics already in the schema, which is fine.

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?

The opening clause names a specific verb and resource ('Change the workspace setting of one response email') and immediately qualifies the update as partial ('only the fields you pass change'). It also distinguishes itself from the form-level override path by naming list_form_notifications and stating that overridden forms 'keep it', so an agent can separate this from update_form_notification.

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?

Guidance is explicit on preconditions and safety: owners and admins only, confirm with the user naming exactly what changes, and do a read after an error or timeout instead of a blind retry. The form-override note implies when this tool is the wrong level to edit, though it stops short of naming update_form_notification as the alternative to use instead.

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