Skip to main content
Glama

create_scale_chord_progression_clip

Generate a scale-degree chord progression into an empty Session clip, with optional bass, articulation, and voice-leading controls for verified note output.

Instructions

Plan or create a functional scale-degree chord progression in one exact empty Session clip. Native execution independently rederives the signed harmony and verifies every generated note.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameYesNew clip name.
clipIdYesStable clip ID: track-N:clip-M from list_clips, or track-N:arrangement-clip-M from list_arrangement_clips for tools that support Arrangement clips.
dryRunNoOmit or true to return a plan; false requires a valid confirmationToken.
degreesYesOrdered one-based scale degrees.
trackIdYesStable track ID returned by list_tracks.
maxPitchYes
minPitchYes
planHashNoHash returned by the matching dry run.
velocityYes
chordBeatsYesDuration and spacing of each chord in beats.
startBeatsYesFirst chord start in beats.
bassDegreesNoOptional Live scale degree for an added bass voice below each ordered chord; null leaves that chord unchanged.
articulationNo
chordRecipesNoOptional exact recipe for each ordered degree.
voiceLeadingYes
notesPerChordYes
confirmationTokenNoShort-lived, single-use token returned by the matching dry run.
harmonicFunctionsNoOptional harmonic function for each ordered degree; secondary-dominant degrees name tonicized targets.
expectedStateVersionYesExact stateVersion observed immediately before planning.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

C2.8/5.0
Behavior2/5

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

Annotations only declare readOnlyHint=false and destructiveHint=false, so the description carries most of the behavioral burden. It does add useful context ('one exact empty Session clip' precondition, 'verifies every generated note'), but it omits the critical two-phase commit: that dryRun=true returns a plan, that committing requires a confirmationToken, and that execution rederives harmony. The 'Plan or create' phrase is a weak stand-in for describing the actual dry-run-then-confirm behavior an agent must follow. No contradiction with annotations—'create' is consistent with readOnlyHint=false.

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?

The description is short at two sentences and front-loads the primary verb ('Plan or create'), which is structurally sound. However, the second sentence is dense with undefined jargon ('independently rederives the signed harmony') that consumes space without adding actionable clarity, so it is not maximally economical.

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

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

This is a high-complexity tool—19 parameters, 12 required, a nested articulation object, a two-phase dry-run/commit flow, and no output schema—but the description gives relatively little of the operational context an agent needs. It mentions the empty-clip precondition and verification behavior, but does not explain the return values (no output schema to fall back on) or the mechanics of the dry-run-to-confirmation flow. For a tool this intricate, the description should carry significantly more weight.

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 68%, so the schema already documents most parameters (degrees, trackId, clipId, chordBeats, startBeats, articulation, etc.) with adequate descriptions, justifying the 3 baseline. The description's phrases 'functional' and 'signed harmony' add a hint about the harmonicFunctions parameter (diatonic, secondary_dominant, borrowed_parallel_minor) beyond the bare schema, but it does not systematically clarify the dryRun/planHash/confirmationToken interaction—arguably the most semantically charged parameter group.

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 states a specific verb-plus-resource ('Plan or create... chord progression in one exact empty Session clip') and scopes it to functional scale-degree chord progressions, which distinguishes it from sibling creation tools like create_scale_bassline_clip and create_scale_melody_clip. It loses a point for the opaque 'signed harmony' jargon in the second sentence and because the dual plan-or-create nature is only gestured at rather than spelled out.

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?

No guidance is given on when to use this tool versus its counterpart plan_scale_chord_progression, and the dryRun/confirmationToken workflow—which is arguably the tool's defining usage pattern—is not explained. The schema hints at the two-phase commit through dryRun and planHash, but the description never tells the agent to first run a dry run or to prefer this over the separate planner sibling.

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