Skip to main content
Glama

Update an automation

update_automation
DestructiveIdempotent

Edit a flow: name, trigger, target accounts or the whole node graph. Fields you omit stay as they are. The graph is validated before saving. A flow can send messages to the people who trigger it, tag and update those contacts, enroll them in sequences and notify the team; steps that call external services are not available here. Editing an ACTIVE flow changes what it does from that moment on: confirm the change with the user first.

Input Schema

NameRequiredDescriptionDefault
nameNo
graphNo
activeNo
flowIdYes
triggerNoWhat starts it: {"type":"keyword","keywords":["price"]} | {"type":"comment","keywords":[…],"scope":"any"|"next"|"existing","postIds":[…]} | {"type":"story"} | {"type":"welcome"} | {"type":"manual"}. On a comment trigger, `scope` picks the posts it watches: "any" = every post; "next" = the next post that gets PUBLISHED after this is saved (drafts and scheduled posts do not claim it; needs accountIds); "existing" = the posts in `postIds` (post URLs or native ids). Add `"oncePerContact":true` to any trigger except welcome so a person who already went through the flow never gets it again (repeating the keyword or commenting again does nothing). On a comment trigger, add `"onceScope":"post"` to make it once per person PER POST instead (commenting on another post does get it). Omitting `scope` keeps the posts it watches now.
accountIdsNo
idempotencyKeyNoOptional. A unique id for this action (16-128 chars: letters, digits, _ : . -). If you are unsure whether a call went through (timeout, network error), repeat it with the SAME idempotencyKey and the same arguments: you get the original result and nothing is done twice.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4/5.0
Behavior4/5

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

Adds substantive context beyond the annotations: omitted fields persist, the graph is validated before saving, certain external-service steps are unsupported, and editing an active flow changes live behavior. This aligns with (and elaborates on) destructiveHint=true and idempotentHint=true rather than contradicting them.

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?

Front-loads the core verb and fields, then layers semantics and the active-flow warning. The mid-sentence catalog of what a flow can do ('send messages... tag... enroll... notify') is somewhat expansive but supports the capability limits, so mostly every sentence earns its place.

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 with nested objects, no output schema, and sparse schema coverage, the description covers partial-update semantics, validation, capability bounds, and the active-flow risk. Together with annotations and the schema's trigger/idempotencyKey docs, an agent has enough to invoke it 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 low (29%), so the description must compensate, and it does by naming name, trigger, target accounts, graph, and implicitly 'active'. The trigger and idempotencyKey parameters are well documented in the schema itself. It does not, however, clarify graph structure or how accountIds interacts with triggers.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource ('Edit a flow') and enumerates the editable surfaces (name, trigger, target accounts, node graph), so the agent knows exactly what this does. It doesn't explicitly differentiate from siblings like create_automation, delete_automation, or set_automation_active, but the verb makes the purpose unmistakable.

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?

Provides clear guidance: omitted fields are preserved (partial update), and editing an ACTIVE flow takes effect immediately so the agent should confirm with the user first. It doesn't name alternative tools (e.g. set_automation_active for toggling active state), so it stops short of full when/versus guidance.

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