Skip to main content
Glama

editor_save

Saves every open scene and all modified content assets in the live Flax Editor, including API changes not marked modified. It refuses saves during play mode to avoid writing runtime scene data.

Instructions

Saves every open scene (including changes made through the API, which the editor does not mark as modified) and all modified content assets in the live Flax Editor. Refused during play mode: a save then would write the play-time scene, with every actor scripts created at run time.

Input Schema

NameRequiredDescriptionDefault

No arguments

Output Schema

NameRequiredDescriptionDefault
savedYes
savedScenesYes
mainThreadIdYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.1.1

TDQS

A4.1/5.0
Behavior4/5

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

With no annotations to lean on, the description carries the load well: it discloses that API-made changes the editor does not mark as modified are still saved, that all modified content assets are included, and that play mode causes a refusal with a concrete reason (writing play-time scene state and runtime-created actor scripts). It does not cover edge cases like an empty scene list or permission/disk-error behavior, keeping it below 5.

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?

Two sentences, both front-loaded with the important information: the scope of the save first, the play-mode refusal second. Every clause earns its place—the parenthetical about unmarked API changes and the play-mode rationale are both non-obvious and actionable.

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?

An output schema exists, so return values need not be explained, and with zero parameters the schema imposes no burden. The description covers scope, side effects, and the one blocking precondition (play mode) thoroughly; only minor operational details (e.g., behavior with no open scenes) are absent.

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?

The tool takes zero parameters, so the baseline is 4 and there is no parameter semantics to add or omit.

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?

The description opens with a specific verb and resource ("Saves every open scene ... and all modified content assets") and scopes it to the live Flax Editor, so an agent immediately knows this is a persistence operation. It does not explicitly contrast itself with any sibling (e.g., scene_list, editor_open_scene, or build tools), so it falls short of the 5 bar for sibling differentiation.

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 clearly states the context of use (persist changes across open scenes and modified content assets) and gives an explicit exclusion: the tool is refused during play mode. It stops short of naming an alternative workflow (e.g., exit play mode first, or that in-editor edits must be marked modified), so there is no full when/when-not/alternative triad.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.