Skip to main content
Glama

Dutify

pm_create_automation

Create an automation rule. Exactly ONE scope must be set — listIdentifier OR folderIdentifier OR spaceIdentifier. triggers and actions are arrays; conditionNodes is the flattened condition tree (omit for "always-true"). All parameters fields on triggers/actions/conditions are JSON-encoded strings, not nested objects. Before crafting, call pm_list_reference_data to learn the valid action/condition/trigger types. API-key scope: automations:write.

Input Schema

NameRequiredDescriptionDefault
nameYesDisplay name (max 200 chars)
activeNoStart enabled or disabled. Default true on backend.
accountNoMulti-account auth only: name of the account from X-Dutify-Accounts to use for this call. Ignored in single-account mode (X-API-Key header). When multiple accounts are configured and this is omitted, the call fails with ACCOUNT_REQUIRED listing the available names. list_accounts never requires a selection.
actionsYesActions executed in order on trigger
triggersYesOne or more triggers (OR-ed)
workspaceNoWorkspace identifier or exact name for this call. Overrides the configured workspace. For personal keys, discover candidates with list_workspaces and select explicitly. Does not change other calls or expand a workspace key's access.
descriptionNoOptional description (max 2000 chars)
conditionNodesNoOptional flat condition tree (AND/OR groups + leaf predicates)
listIdentifierNoScope: a list (use exactly one of list/folder/space)
spaceIdentifierNoScope: a space
folderIdentifierNoScope: a folder

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare this is a non-destructive, non-idempotent write, but the description adds real operational context: the required `automations:write` API-key scope, the JSON-encoded-string quirk for all `parameters` fields, and the "omit conditionNodes for always-true" default. It does not say what is returned (e.g., new automation id) or how duplicate/invalid payloads fail, which would complete the picture.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Five short sentences, each carrying a distinct constraint or prerequisite, with the mandatory scope rule front-loaded ahead of the encoding and reference-lookup notes. No filler.

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 an 11-parameter creation tool with full schema coverage and annotations present, the definition covers the hard parts: scope exclusivity, encoded strings, condition-tree flattening, and the reference-data prerequisite. Only the post-call behavior (what identifier is returned, whether the rule activates immediately) is left implicit, and no output schema exists to cover it.

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 a cross-parameter constraint the schema cannot express: exactly ONE of listIdentifier/folderIdentifier/spaceIdentifier. It also clarifies that triggers/actions are arrays and that conditionNodes is a flattened tree, which reduces misuse of nested structure.

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 and resource ("Create an automation rule") and immediately scopes it with the exactly-one-of list/folder/space constraint. An agent can distinguish this from pm_update_automation or pm_get_automation without opening the 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?

Explicitly directs the agent to call pm_list_reference_data before crafting the payload, and states the exactly-one scope rule. It gives no guidance on when to prefer pm_update_automation over creating a new rule, so the alternative-selection path is only implied.

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