Skip to main content
Glama

Save an automation

native.save_automation
DestructiveIdempotent

Create an automation, or change one (give automation_id and its expected_revision). Save only when the creator asked for it to repeat. Always state the time zone and choose finite limits; say what you chose, including the monthly cap. An automation that spends advertising money, publishes, or was requested by an external assistant is saved as a draft until the owner approves that exact definition in Genflick; tell the creator where to approve it. Acceptance is not completion: read the runs.

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": {
      "work_id": "<work_id>",
      "arguments": "<arguments>",
      "expected_catalog_version": "<expected_catalog_version>",
      "read_skills": "<read_skills>",
      "request_key": "<request_key>"
    },
    "name": "native.save_automation"
  }
}

Input Schema

NameRequiredDescriptionDefault
work_idYes
argumentsYes
read_skillsYesExact required native skills and their dependencies, copied from the accepted session bootstrap's skills array. Include only entries in that array. General mcp.* guides and native.{studio}.instructions are guidance, not native skill proofs.
request_keyYes
publication_proposal_idNoFor native Social scheduling, the exact server-approved publication proposal. This identifier cannot confer approval by itself.
expected_catalog_versionYesFor a new session, read a studios/{studio}/native/{pack} child toolset and copy invocation.catalog_version from a native tool descriptor. Do not use the top-level library version. For calls in an existing session, use that session proposal's catalog_version.

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.4/5.0
Behavior5/5

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

Beyond the destructive/openWorld/idempotent annotations, it discloses the draft-until-approved gate for money-spending, publishing, and externally-requested automations, names where approval happens, and warns that 'acceptance is not completion: read the runs.' That is exactly the kind of non-obvious workflow consequence an agent cannot get from structured fields.

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?

Six short sentences, each carrying a distinct operational rule: creation vs update, the repeat requirement, timezone and caps, the approval gate, and the post-save verification step. No restatement of the title or filler, and the most decision-relevant content is front-loaded.

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 complex mutation tool with a rich output schema, the description covers the risky paths (draft approval, budget caps) that matter most. It leaves the session-scaffolding prerequisites (read_skills, expected_catalog_version, request_key) to schema descriptions, which is acceptable but not fully complete for a 5.

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 coverage is only 50% on a heavily nested six-parameter schema, so the description should carry more weight. It does add real intent to the allowance fields ('choose finite limits; say what you chose, including the monthly cap'), but the required work_id, request_key, read_skills, and expected_catalog_version are never addressed in the description text.

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 description opens with a specific verb+resource pair and immediately splits the two modes ('Create an automation, or change one'), telling the agent exactly how to signal an update (automation_id plus expected_revision). It also implicitly separates itself from state/run siblings by scoping this tool to definition saving only.

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?

It gives a clear when-to-use rule ('Save only when the creator asked for it to repeat'), which is a genuine exclusion that prevents creating one-off automations, and it states the prerequisite for updates. It stops short of naming the sibling tools an agent would use instead (set_automation_state, run_automation_now, list_automations), leaving that routing to inference.

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