Skip to main content
Glama
newsbubbles

ismail: agent DAW (MCP server)

Stage Batch

stage_batch

Run multiple stage operations in one ordered call on a single scene, with optional stop-on-error rollback for changed scene JSON files. Batch sequential stage actions and get one reply line per op.

Instructions

Many stage ops in one call, in order, on one scene (scene is implied): ops = [{"op": "stage_follow_anchor", "person": ..., "joint": "hips", "to": "stool_3"}, {"op": "stage_perform", "action": "mark", "label": "legs"}, ...]. Ops that are page commands go to the page together as one command and run back to back there (the ones that answer at once land in the same frame); an op that runs here (stage_world, stage_events, stage_performance, ...) first sends the page commands before it, so the order holds. With stop_on_error (default) the first failure stops the batch: the scene folder's top-level .json files that the ops here changed (world.json and the like) go back to what they were; takes, performances and voice files are not put back, and what the page already did stays (the page cannot roll back; the reply says what ran). Not in a batch: stage_batch, stage_start, stage_stop, stage_restart, stage_listen, stage_busy, stage_scene_export, stage_scene_new, stage_scene_go. Replies one line per op: [i] op: its answer.

Input Schema

NameRequiredDescriptionDefault
opsYes
sceneYes
stop_on_errorNo

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.4.0

TDQS

A4.3/5.0
Behavior5/5

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

With no annotations, the description carries the full burden and does: it explains the page-vs-host execution split and why ordering holds, states stop_on_error defaults to true, and precisely enumerates rollback semantics — top-level scene .json files are restored, but takes, performances and voice files are not, and page-side effects cannot be rolled back. That is exactly the kind of non-obvious consequence disclosure agents need before a mutating multi-op call.

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-loaded with the core purpose and an inline example, and most of the length is load-bearing (ordering, exclusions, rollback). The prose is a single dense run-on paragraph with nested parentheticals, so the rollback and ordering rules would scan far better as separate sentences or bullets.

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 multi-op orchestration tool with an output schema, the description covers ordering, error policy, rollback scope, exclusions and reply format ('one line per op'), which is nearly everything an agent needs. The remaining gap is the unresolvable 'scene is implied' versus required-scene conflict and the undefined universe of valid op names.

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 description coverage is 0% and the ops array items are untyped ({}), so the description must compensate; it does partially by demonstrating the op object shape and naming stop_on_error's default and effect. However it never enumerates which op names or per-op fields are legal (only two examples), and the claim 'scene is implied' contradicts the schema, which requires an explicit scene string — leaving the most important parameter ambiguous.

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 ('Many stage ops in one call, in order, on one scene') and immediately shows the concrete op-array shape, so an agent knows exactly what the tool does. It also carves itself out from siblings by naming the ops that cannot be batched (stage_batch, stage_start, stage_stop, stage_scene_export, etc.), which is unusually strong differentiation in a 250-tool namespace.

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?

Gives a clear when-to-use signal (aggregate ordered stage ops instead of many calls) and an explicit exclusion list of tools that must not appear inside a batch. It does not spell out a direct either/or against a single alternative the way the highest-scoring examples do, but the exclusions plus the ordering rule are enough for correct selection.

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

Deploy Server

Other Tools