create_project
Initiate a new Adobe Premiere Pro project by defining a project name and saving location, enabling users to start video editing tasks efficiently.
Instructions
Creates a new Adobe Premiere Pro project. Use this when the user wants to start a new video editing project from scratch.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| location | Yes | The absolute directory path where the project file should be saved, e.g., "/Users/user/Documents/Videos" | |
| name | Yes | The name for the new project, e.g., "My Summer Vacation" |
Implementation Reference
- src/bridge/index.ts:179-197 (handler)Core handler implementation that executes ExtendScript to create a new Premiere Pro project using app.newProject() and returns project info.async createProject(name: string, location: string): Promise<PremiereProProject> { const script = ` // Create new project app.newProject("${name}", "${location}"); var project = app.project; // Return project info JSON.stringify({ id: project.documentID, name: project.name, path: project.path, isOpen: true, sequences: [], projectItems: [] }); `; return await this.executeScript(script); }
- src/tools/index.ts:58-64 (schema)Input schema definition for the create_project tool using Zod validation.name: 'create_project', description: 'Creates a new Adobe Premiere Pro project. Use this when the user wants to start a new video editing project from scratch.', inputSchema: z.object({ name: z.string().describe('The name for the new project, e.g., "My Summer Vacation"'), location: z.string().describe('The absolute directory path where the project file should be saved, e.g., "/Users/user/Documents/Videos"') }) },
- src/tools/index.ts:437-438 (registration)Tool registration and dispatch in the executeTool method's switch statement.return await this.createProject(args.name, args.location); case 'open_project':
- src/tools/index.ts:743-758 (helper)Wrapper helper method in PremiereProTools class that calls the bridge and formats the response.private async createProject(name: string, location: string): Promise<any> { try { const result = await this.bridge.createProject(name, location); return { success: true, message: `Project "${name}" created successfully`, projectPath: `${location}/${name}.prproj`, ...result }; } catch (error) { return { success: false, error: `Failed to create project: ${error instanceof Error ? error.message : String(error)}` }; } }