Skip to main content
Glama
ntworm

Ableton MCP Server

create_clip

Create an empty MIDI clip in an empty Session slot on an Ableton MIDI track; specify track, slot, and beat length, with dry_run to validate before committing.

Instructions

Create an empty MIDI clip in an empty Session slot.

Side effects: creates a clip in one undo step. Example: create_clip(0, 1, 4.0) creates a four-beat clip. Edge cases: only empty slots on MIDI tracks accept this operation. With dry_run=True, the change is validated but not committed.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
dry_runNo
clip_indexYes
track_indexYes
length_beatsYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.7.0

TDQS

A4.1/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 well: it discloses the undo footprint (one undo step), the dry_run semantics, and the failure condition. It stops short of stating permission prerequisites or what the call returns on success.

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?

Front-loaded purpose sentence, then labeled Side effects / Example / Edge cases blocks, each earning its place. The labeled structure is slightly heavier than needed but nothing is wasted.

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 mutation tool with no annotations and no output schema, it covers side effects, undo scope, dry-run, and the key edge case. Remaining gaps are the return value and the meaning/range of track_index and clip_index, both of which the schema leaves undocumented.

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, and it partially does: it explains dry_run and the example create_clip(0, 1, 4.0) implies positional order with length_beats in beats. However, track_index and clip_index semantics (what a Session slot index means, valid ranges) are never explained.

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?

States a specific verb (Create) and resource (empty MIDI clip in an empty Session slot), including the scoping constraint that distinguishes it from siblings like add_notes_to_clip, delete_clip, or create_clip_automation. An agent can tell what this tool does without opening the schema.

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?

Gives a clear precondition (only empty slots on MIDI tracks accept this) and explains the dry_run validation path, which tells the agent when the call will succeed or is a rehearsal. It does not name a sibling alternative for the non-empty-slot case, so it stops short of explicit routing.

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