Skip to main content
Glama

get_clip_info_by_id

Retrieve detailed clip information from Ableton Live by specifying a clip ID. This tool supports real-time interaction with Ableton Copilot MCP for efficient clip operations and workflow management.

Instructions

Get clip info by clip id

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
clip_idYes

Implementation Reference

  • Registration of the tool 'get_clip_properties' via @tool decorator, which matches the function getClipInfoById for getting clip info by ID.
    @tool({ name: 'get_clip_properties', description: 'Get clip properties by clip id. To get specific properties, set the corresponding property name to true in the properties parameter.', paramsSchema: { clip_id: z.string(), properties: ClipGettableProp, } })
  • Handler function that executes the tool logic: retrieves the clip by ID and gets the specified properties.
    async getClipInfoById({ clip_id, properties }: { clip_id: string, properties: z.infer<typeof ClipGettableProp> }) { const clip = getClipById(clip_id) return await getClipProps(clip, properties) }
  • Zod schema definition for ClipGettableProp used in the tool parameters for specifying which clip properties to retrieve.
    export const ClipGettableProp = createZodSchema<ClipGettablePropType>({ available_warp_modes: z.boolean().optional(), color: z.boolean().optional(), color_index: z.boolean().optional(), end_marker: z.boolean().optional(), end_time: z.boolean().optional(), file_path: z.boolean().optional(), gain: z.boolean().optional(), gain_display_string: z.boolean().optional(), has_envelopes: z.boolean().optional(), is_arrangement_clip: z.boolean().optional(), is_audio_clip: z.boolean().optional(), is_midi_clip: z.boolean().optional(), is_overdubbing: z.boolean().optional(), is_playing: z.boolean().optional(), is_recording: z.boolean().optional(), is_triggered: z.boolean().optional(), launch_mode: z.boolean().optional(), launch_quantization: z.boolean().optional(), length: z.boolean().optional(), loop_end: z.boolean().optional(), loop_start: z.boolean().optional(), looping: z.boolean().optional(), muted: z.boolean().optional(), name: z.boolean().optional(), pitch_coarse: z.boolean().optional(), pitch_fine: z.boolean().optional(), playing_position: z.boolean().optional(), position: z.boolean().optional(), ram_mode: z.boolean().optional(), sample_length: z.boolean().optional(), selected_notes: z.boolean().optional(), signature_denominator: z.boolean().optional(), signature_numerator: z.boolean().optional(), start_marker: z.boolean().optional(), start_time: z.boolean().optional(), velocity_amount: z.boolean().optional(), warp_mode: z.boolean().optional(), warp_markers: z.boolean().optional(), warping: z.boolean().optional(), will_record_on_start: z.boolean().optional() }).extend({ notes: z.boolean().optional(), selected_notes: z.boolean().optional(), })
  • Uses helper functions getClipById and getClipProps to implement the logic.
    const clip = getClipById(clip_id) return await getClipProps(clip, properties)
  • src/main.ts:41-41 (registration)
    Class-level registration of ClipTools in the MCP server startup.
    tools: [BrowserTools, ClipTools, DeviceTools, HistoryTools, SongTools, TrackTools, ExtraTools, ApplicationTools]

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/xiaolaa2/ableton-copilot-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server