crop_clip
Trim audio clips in Ableton Live by removing regions outside loop boundaries or start/end markers. Simplifies clip editing within the Ableton Copilot MCP server for precise audio control.
Instructions
Crops the clip. The region that is cropped depends on whether the clip is looped or not. If looped, the region outside of the loop is removed. If not looped, the region outside the start and end markers is removed.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| clip_id | Yes |
Implementation Reference
- src/tools/clip-tools.ts:184-188 (handler)Handler function that executes the crop_clip tool: retrieves the clip by ID and invokes its crop() method.async cropClip({ clip_id }: { clip_id: string }) { const clip = getClipById(clip_id) await clip.crop() return Result.ok() }
- src/tools/clip-tools.ts:175-183 (registration)@tool decorator registers the 'crop_clip' tool with its description and input schema (clip_id: string).@tool({ name: 'crop_clip', description: `Crops the clip. The region that is cropped depends on whether the clip is looped or not. If looped, the region outside of the loop is removed. If not looped, the region outside the start and end markers is removed.`, paramsSchema: { clip_id: z.string(), } })
- src/main.ts:39-42 (registration)ClipTools class containing crop_clip is registered to the MCP server in the tools array passed to startMcp.await startMcp({ // Register tool classes, make decorators available tools: [BrowserTools, ClipTools, DeviceTools, HistoryTools, SongTools, TrackTools, ExtraTools, ApplicationTools] })