Docs
generate_asset MCP tool
Start or poll hosted generation.
MCP name generate_asset dispatches to renderer generateAsset.
Image generation uses your image-generation allowance. Speech is included with a usage quota.
Start or poll hosted generation. kind image uses prompt, aspectRatio, imageSize. kind music uses prompt and durationSeconds. kind speech uses text and voice. kind video uses prompt, durationSeconds, aspectRatio, resolution, negativePrompt. kind status polls jobId from those jobs or from asset transcribe. Editor must be open. Image generation uses your image-generation allowance. Speech is included with a usage quota.
Advertised MCP input
This tool is registered with passthrough. The fields below are what listTools advertises. The renderer still validates the child fields for the chosen action or kind. Extra advertised-only values are documented under Reachable behavior.
| Field | Type | Required | Constraints | Default | Description |
|---|---|---|---|---|---|
kind | enum("image", "music", "speech", "video", "status") | yes | — | — | kind for generate_asset |
resultStart | integer | no | min 0; max 9007199254740991 | 0 | First character offset to return. Use 0 for the first call. |
resultEnd | integer | no | min 1; max 9007199254740991 | 8000 | Exclusive end offset. resultEnd - resultStart must be at most 8000. Increment resultStart by 8000 to page through large results. |
Reachable behavior
MCP advertisement and the renderer child map are not the same. Call only what the renderer wires.
Advertised but not reachable: music, video. The MCP wrapper lists these values. The renderer does not register a child for them, so the call fails.
Renderer child fields
These are the authoritative fields for each kind. Send them on the same MCP call. Grouped MCP tools use passthrough, so these fields are not all listed in the advertised schema.
kind=image
Renderer tool: generateImage.
Start generating an image from a text prompt. Returns a job ID immediately; poll generationStatus with that job ID until the job is completed to get the resulting image asset.
| Field | Type | Required | Constraints | Default | Description |
|---|---|---|---|---|---|
prompt | string | yes | minLength 1 | — | — |
aspectRatio | enum("1:1", "16:9", "9:16") | no | — | "1:1" | — |
imageSize | enum("1K", "2K", "4K") | no | — | "1K" | — |
kind=speech
Renderer tool: generateSpeech.
Start generating speech from text. Included with a usage quota. Returns a job ID immediately; poll generationStatus with that job ID until it is completed to get the audio asset.
| Field | Type | Required | Constraints | Default | Description |
|---|---|---|---|---|---|
text | string | yes | minLength 2; maxLength 5000 | — | — |
voice | enum("asteria", "luna", "stella", "athena", "hera", "orion", "arcas", "perseus", "angus", "orpheus", "helios", "zeus") | no | — | "asteria" | — |
kind=status
Renderer tool: generationStatus.
Check the status of an image, speech, or transcription job by its job ID. Returns the result when the job is completed, or the error if it failed. After a transcription job completes, call asset action captions to read the captions.
| Field | Type | Required | Constraints | Default | Description |
|---|---|---|---|---|---|
jobId | string | yes | minLength 1 | — | — |
Result window
Every local MCP tool accepts resultStart and resultEnd so large payloads can be paged.
resultStart— first character offset. Default0.resultEnd— exclusive end offset. Default8000.resultEnd - resultStartmust be at most 8000 characters.- Increment
resultStartby 8000 to read the next window.
