Skip to main content
Glama
newsbubbles

ismail: agent DAW (MCP server)

Fx Stack Save

fx_stack_save

Save a named effect chain for reuse in any song or set, either in the shared library or a specific project folder, with an optional speed test to check playback viability.

Instructions

Save an effect chain under a name, so any set or song can use it: live_track(fx='stack:'), or fx_stack_load for the chain itself. chain: a list of effect dicts (fx_help). notes: what it is for and what the person said about it ("dirty P-bass: 'it's dirty'"). project= keeps it in that song (/fx_stacks); without it, in the library for every song. A 10 s test then measures how fast it runs on this machine (measure_cost=False skips it); live_track and live_load name a chain that may not keep up.

Input Schema

NameRequiredDescriptionDefault
nameYes
chainYes
notesNo
projectNo
measure_costNo

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.4.0

TDQS

A4.5/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 behavioral burden and does well: it explains project scoping, the library fallback, the 10-second measurement test, and how to skip it. It omits what happens when a name already exists, such as overwrite versus error, which is a meaningful gap for a save operation.

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?

The description is dense but front-loaded: the main action and usage syntax come first, then parameter explanations and the cost-test caveat. Every sentence adds relevant information without padding.

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?

Given the output schema exists and need not be explained, the definition covers storage location, reuse mechanism, test cost, and opt-out behavior well. The main missing piece is collision/overwrite semantics when saving under an existing name.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/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, and it does: it explains chain as a list of effect dicts with fx_help as reference, notes as free-form purpose plus quoted person input, project as song-folder scoping, and measure_cost as skipping the performance test. Every parameter gets meaningful usage context beyond the bare schema.

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 states a specific verb and resource: save an effect chain under a name. It also distinguishes the saved stack's two uses, via live_track(fx='stack:<name>') and fx_stack_load, so an agent can tell what this tool does versus its load counterpart.

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 explains the intended use, making a chain reusable across sets or songs, and names the alternative fx_stack_load for retrieving the chain itself. It lacks an explicit 'do not use this when...' clause, but the save-versus-load distinction is clear.

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