get_sequence_details
Retrieve comprehensive details about a Premiere Pro sequence, including tracks, effects, and markers, to analyze or automate video editing workflows.
Instructions
Get detailed information about a specific sequence including tracks, effects, and markers
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| sequence_name | Yes | Name of the sequence to get details for |
Implementation Reference
- mcp-server.js:432-477 (handler)Executes the tool logic by fetching sequence details from localhost:3001/api/sequence-details, processing video/audio tracks, effects, and markers, and returning a formatted text response.async getSequenceDetails(sequenceName) { try { const response = await fetch(`http://localhost:3001/api/sequence-details?name=${encodeURIComponent(sequenceName)}`); if (!response.ok) throw new Error(`HTTP ${response.status}: ${response.statusText}`); const data = await response.json(); if (data.error) { return { content: [ { type: 'text', text: `⚠️ ${data.error}`, }, ], }; } const videoTracks = data.tracks.video_tracks.map(track => ` • Track ${track.track_number}: ${track.track_name} (${track.clip_count} clips) ${track.is_locked ? '🔒' : ''} ${track.is_visible ? '👁️' : '🙈'}` ).join('\n'); const audioTracks = data.tracks.audio_tracks.map(track => ` • Track ${track.track_number}: ${track.track_name} (${track.clip_count} clips) ${track.is_locked ? '🔒' : ''} ${track.is_muted ? '🔇' : '🔊'} ${track.is_solo ? '🎯' : ''}` ).join('\n'); return { content: [ { type: 'text', text: `🎬 **Sequence Details: ${data.sequence_name}**\n\n**Settings:**\n• Resolution: ${data.settings.resolution.width}x${data.settings.resolution.height}\n• Frame Rate: ${data.settings.frame_rate} fps\n• Audio: ${data.settings.audio_sample_rate} Hz\n\n**Video Tracks:**\n${videoTracks}\n\n**Audio Tracks:**\n${audioTracks}\n\n**Applied Effects:** ${data.effects_applied.join(', ')}\n**Markers:** ${data.markers.length}`, }, ], }; } catch (error) { return { content: [ { type: 'text', text: `❌ **Failed to get sequence details**\n\nError: ${error.message}`, }, ], isError: true, }; } }
- mcp-server.js:60-73 (schema)Defines the tool schema with input requiring 'sequence_name' string.{ name: "get_sequence_details", description: "Get detailed information about a specific sequence including tracks, effects, and markers", inputSchema: { type: "object", properties: { sequence_name: { type: "string", description: "Name of the sequence to get details for" } }, required: ["sequence_name"] } },
- mcp-server.js:231-233 (registration)Registers the handler dispatch in the CallToolRequest switch statement.case 'get_sequence_details': return await this.getSequenceDetails(args.sequence_name);
- mcp-server.js:31-214 (registration)Registers the tool in the ListToolsRequestHandler by including it in the tools array.this.server.setRequestHandler(ListToolsRequestSchema, async () => { const tools = [ { name: "get_project_info", description: "Get basic information about the current Premiere Pro project", inputSchema: { type: "object", properties: {}, required: [] } }, { name: "get_active_sequence_info", description: "Get detailed information about the currently active sequence", inputSchema: { type: "object", properties: {}, required: [] } }, { name: "list_all_sequences", description: "List all sequences in the current project with basic info", inputSchema: { type: "object", properties: {}, required: [] } }, { name: "get_sequence_details", description: "Get detailed information about a specific sequence including tracks, effects, and markers", inputSchema: { type: "object", properties: { sequence_name: { type: "string", description: "Name of the sequence to get details for" } }, required: ["sequence_name"] } }, { name: "get_timeline_structure", description: "Get the track structure of the active sequence", inputSchema: { type: "object", properties: {}, required: [] } }, { name: "get_timeline_clips", description: "Get all clips in the active sequence with detailed information", inputSchema: { type: "object", properties: {}, required: [] } }, { name: "get_project_media", description: "Get all media items in the project browser with file information", inputSchema: { type: "object", properties: {}, required: [] } }, { name: "get_project_bins", description: "Get project bin structure and organization", inputSchema: { type: "object", properties: {}, required: [] } }, { name: "get_playhead_info", description: "Get current playhead position and playback state", inputSchema: { type: "object", properties: {}, required: [] } }, { name: "get_selection_info", description: "Get information about currently selected clips or time range", inputSchema: { type: "object", properties: {}, required: [] } }, { name: "get_export_presets", description: "Get available export presets and their settings", inputSchema: { type: "object", properties: {}, required: [] } }, { name: "get_render_queue", description: "Get current render queue status and items", inputSchema: { type: "object", properties: {}, required: [] } }, { name: "trim_clip_by_frames", description: "Trim or extend the in/out point of a video or audio clip by a number of frames.", inputSchema: { type: "object", properties: { sequenceId: { type: "number", description: "Index of the sequence (0-based)" }, clipId: { type: "string", description: "ID of the clip to trim" }, framesDelta: { type: "number", description: "Number of frames to trim (positive or negative)" }, direction: { type: "string", enum: ["in", "out"], description: "Which edit point to trim ('in' or 'out')" }, trackType: { type: "string", enum: ["video", "audio"], description: "Track type ('video' or 'audio')" } }, required: ["sequenceId", "clipId", "framesDelta", "direction", "trackType"] } }, { name: 'create_sequence', description: 'Create a new sequence in Premiere Pro', inputSchema: { type: 'object', properties: { name: { type: 'string', description: 'Name of the new sequence', }, width: { type: 'number', description: 'Width in pixels (default: 1920)', }, height: { type: 'number', description: 'Height in pixels (default: 1080)', }, framerate: { type: 'number', description: 'Frame rate (default: 23.976)', }, }, required: ['name'], }, }, { name: 'export_project', description: 'Export the current project or sequence', inputSchema: { type: 'object', properties: { output_path: { type: 'string', description: 'Output file path', }, preset_name: { type: 'string', description: 'Export preset name (default: H.264 High Quality)', }, include_audio: { type: 'boolean', description: 'Include audio in export (default: true)', }, }, required: ['output_path'], }, }, ]; return { tools, }; });