Skip to main content
Glama

instruments

Named instrument library, so a sound is picked by name instead of by plugin index. list/show: read-only; each entry has role, library, note maps (guitar/bass/drums map names the generators use), playable range, tags, and the saved chain…

Instructions

Named instrument library, so a sound is picked by name instead of by plugin index. list/show: read-only; each entry has role, library, note maps (guitar/bass/drums map names the generators use), playable range, tags, and the saved chain name or none. save: the user has loaded a sound by hand on 'track' (any Kontakt library or Serum preset); this saves that track's FX chain, plugin state included, as FXChains/instrument- and registers it. load: splice a saved instrument onto an EMPTY track (refused if the track has FX unless allow_existing_fx) and verify the FX landed; use the entry's maps when writing notes. remove: drop a user entry (shipped catalog entries stay). save_rig: for a multi-output instrument (a Kontakt kit feeding Kick/Snare/room tracks), save the instrument track plus every track its sends and folders reach as a track template; load of a rig adds all those tracks and returns play_track_guid, where the MIDI goes. Errors name the problem; nothing is half-registered.

Input Schema

NameRequiredDescriptionDefault
tagNolist: filter by one tag
mapsNosave: {guitar|bass|drums: map name}
nameNolowercase name, e.g. dark-pad
roleNo
tagsNo
notesNo
rangeNosave: [low, high] MIDI notes
trackNoexact track name (save: source, load: destination)
actionYes
libraryNosave: what the sound is, e.g. 'Serum 2: PD - Dark Matter'
overwriteNosave: replace an existing saved chain
articulationsNosave: {articulation: keyswitch MIDI note}
allow_existing_fxNoload: append to a track that has FX

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv3.23.1

TDQS

A3.9/5.0
Behavior4/5

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

No annotations are provided, so the description carries the full burden and does well: it discloses that list/show are read-only, that remove cannot delete shipped catalog entries, that load verifies the FX actually landed, and that errors name the problem with nothing half-registered. Missing are permission/auth expectations and what the successful return payload looks like for save/load.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Purpose is front-loaded, but the body is a single semicolon-chained paragraph mixing six actions, making it harder to scan than a per-action list. Every clause is substantive, yet the run-on density works against quick lookup during a tool call.

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 13-parameter, six-action tool with no annotations and no output schema, the description covers the mutation contracts, refusal rules and cross-action workflow reasonably well. Gaps remain on the 'show' action's behavior, the 'overwrite' path, and what load/save_rig return (beyond play_track_guid for rigs).

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?

With 69% schema coverage the description adds real meaning beyond the schema: it explains that 'maps' are the note-map names the generators consume, that range is the playable range and library is the source preset string, and that allow_existing_fx controls the FX-present refusal. Unexplained are 'notes', 'overwrite' semantics, and how 'tag' interacts with 'tags' on save.

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 opening clause names a concrete resource ('named instrument library') and the reason it exists ('so a sound is picked by name instead of by plugin index'), then enumerates each action's verb. It is clearly distinguishable from generic FX tools, though it never explicitly contrasts with the nearby instrument_inventory sibling.

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?

Per-action conditions are stated: save is for a sound the user already loaded by hand on 'track', load is for an EMPTY track and refused when FX exist unless allow_existing_fx, save_rig is for multi-output instruments whose sends/folders must come along. It also tells the agent to use the entry's note maps when writing notes. It stops short of naming which sibling to prefer (e.g. instrument_inventory).

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