Skip to main content
Glama

Batch

batch

Run multiple DAW operations in order atomically; if one fails, the project restores to its prior state and each op's output is returned.

Instructions

Run many ops in order: ops = [{"op": "notes_write", "track": ..., ...}, ...] (project is implied). Mutations are atomic: if one fails the project is restored to its state before the batch. Returns each op's output.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
opsYes
projectYes
stop_on_errorNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.3.0

TDQS

B3.2/5.0
Behavior3/5

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

With no annotations, the description carries the full burden, and it does disclose a meaningful trait: mutations are atomic with rollback to the pre-batch state on failure, plus ordered execution and per-op output. However it says nothing about error surfacing, permissions, or how the stop_on_error parameter changes behavior relative to the always-atomic guarantee.

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?

Two tight sentences, with the call format and atomicity guarantee front-loaded. The example earns its place by showing the op object shape; nothing is redundant, though the prose is quite compressed.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/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 spelled out, and atomicity is covered. The remaining gap is the undocumented stop_on_error parameter and the unresolved question of how it interacts with the unconditional rollback described — an agent cannot predict behavior when an op fails.

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 0%, so the description must compensate. It partially does: the ops array format is illustrated with a concrete example and 'project is implied' clarifies the project parameter. But stop_on_error (default true) is never explained, leaving one of three parameters undocumented in both schema and description.

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 gives a clear verb and resource ('Run many ops in order'), and the inline example of an op object makes the nature of the tool concrete. It does not name any sibling or explicitly contrast with the many single-op tools (notes_write, track_set, etc.), so an agent must infer that this is the batching alternative.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no statement of when to prefer batching over calling individual op tools repeatedly, nor any exclusion or prerequisite. The only guidance is implicit in the format example, which shows how ops are shaped but not why or when to use this tool.

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