submit_image
Read image-gen Skill first. Submit an image generation job and create image, GIF or SVG asset(s) in the project library. Requires ChatCut Pro and consumes credits for every model. This tool does not place generated images on the timeline; after the job completes, use track_progress to get asset ids and edit_item to place them. See the image-gen skill for model, reference, aspect-ratio, and quality guidance.
External MCP spend rule: this tool costs ChatCut credits and starts an async generation job. Only call it when the user's request or confirmation clearly covers this exact generation; do not silently create extra variants, longer durations, higher quality, or additional outputs.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"prompt": "<prompt>"
},
"name": "submit_image"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | Asset name shown in the library. Defaults to a truncated form of the prompt. | |
| count | No | Number of images to generate. Each becomes a separate job. | |
| model | No | Image model. Defaults to gpt-image-2.6-flare for everyday generation and edits. gpt-image-2.6-sunburst for demanding detail, layout or edit accuracy. gpt-image-2.5-flare, gpt-image-2.5-sunburst and gpt-image-2 remain available. nano-banana is Nano Banana Pro (Gemini 3 Pro Image); nano-banana-2.1 is Nano Banana 2.1, Google's update to nano-banana-2 (Gemini 3.1 Flash Image). All three support up to 14 combined references. Honor the image model attached to the prompt. | gpt-image-2.6-flare |
| prompt | Yes | Description of the image. Mention text content in quotes when text rendering is needed. | |
| quality | No | OpenAI models only. Defaults to high. xhigh and max require Image 2.5 or later. | |
| imageSize | No | Output size. Defaults to 1K. 512 is available for nano-banana-2 only. Only pass 2K or 4K when the user asks for it, directly or by approving a plan that names it. They are EXPERIMENTAL and may take longer and cost more. | |
| projectId | No | Full project UUID. Required for external browser work; internal agents may omit. Execution/explicit-timeline calls never change later calls' target. | |
| background | No | Image 2.5 or later. Use transparent for a cutout, sticker or logo; defaults to auto. | |
| complexity | No | Image 2.6 and nano-banana-2.1. How much the model plans before rendering. Use low for focused edits or fast drafts, high for dense text or complex layouts. Defaults to high on Image 2.6, where it does not change the price, and medium on nano-banana-2.1, where low costs about 18% less and is about 40% faster. | |
| frameCount | No | GIF only. Number of frames, from 2 to 16; defaults to 9. Any count up to 8 costs the same, so prefer 8, 9, 12 or 16. More frames means a smaller frame size. | |
| timelineId | No | Full timeline UUID, not a prefix. Required for browser work, even unplaced assets. Get it from read_project or manage_timelines action="list". Never switches visible timeline. | |
| aspectRatio | No | Output aspect ratio. Defaults to 16:9. 1:4, 4:1, 1:8 and 8:1 require nano-banana-2.1 or nano-banana-2. Match how the image will be used (the project composition for full-frame use, or the ratio the user asked for); ask only when that is unclear. | |
| outputFormat | No | Image 2.6 only; default png. gif creates a short loop (stickers, animated icons, reactions); svg creates an editable vector (logos, icons, flat illustrations). Both accept references and require imageSize 1K. Use submit_video for real motion or footage. | |
| referenceUrls | No | Public HTTPS or s3:// image resource URLs, in order after referenceAssetIds. Used directly as generation references without importing them into the user's asset library. Do not download and push_asset merely to reference an image. | |
| idempotencyKey | No | Stable key for this browser execution. Reuse only with identical scope and parameters after a lost acknowledgement; applies only to this call. | |
| frameDurationMs | No | GIF only. Milliseconds per frame, from 20 to 2000; defaults to 200. frameCount times this is the loop length. | |
| browserProfileId | No | Optional browser profile override. Omit to select automatically; do not ask the user to choose. | |
| referenceAssetIds | No | Project asset ids to reference. Pass when the user @-references an image asset; the runtime resolves the image bytes. |