Skip to main content
Glama

apply_automation_transaction

Atomically write multiple FX-parameter envelopes in one REAPER undo block. If any write fails, restore all envelopes from snapshots and verify the rollback.

Instructions

Atomically write several FX-parameter envelopes (e.g. a stereo pair) in one undo block. Every envelope is snapshotted before mutation; any failure restores all of them and rereads the restoration before reporting.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
writesYes[{target_track_guid|target_track_name|target_track_index, fx_guid|fx_name_contains|fx_index, param_index, points, ranges}]
dry_runNoPreview: return what would run without changing the project.
transaction_idNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.8/5.0
Behavior4/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 substantial work: it discloses the snapshot-before-mutation behavior, full rollback on any failure, and re-read verification of the restoration before reporting. It omits permission/auth requirements and the meaning of transaction_id, but the destructive-operation lifecycle is unusually well disclosed.

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 tight sentences, zero filler. The atomic scope is front-loaded and the rollback guarantee follows immediately, so the most decision-relevant information comes first.

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 destructive multi-write tool with no annotations and no output schema, the description covers the critical safety behavior (atomicity, snapshot, rollback, verification). It falls short on transaction_id semantics and any indication of what is returned on success, which an agent invoking a transaction tool would benefit from.

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 67% with three parameters. The description only refers generically to 'envelopes' and adds nothing about the writes item shape beyond what the schema sketch shows, and transaction_id is undocumented in both schema and description. Baseline 3 is appropriate since the schema does most of the work.

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?

States a specific verb and resource: 'Atomically write several FX-parameter envelopes ... in one undo block.' The plural-plus-atomic framing implicitly separates it from the single-write siblings (write_automation, set_fx_param), but it never names an alternative explicitly, so the differentiation is left to inference.

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

Usage Guidelines3/5

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

The mention of 'several ... e.g. a stereo pair' and 'one undo block' implies the batch/atomic case is the reason to pick this tool, but there is no explicit when-to-use or when-not-to-use statement and no named alternative such as write_automation for single envelopes.

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