BrandKarma
generate_image
Generates an AI image for a brand. Two models are available: 'gemini-3.1-flash-image-preview' (Nano Banana 2 — fast, default) and 'gpt-image-2' (GPT Image 2.0 — higher quality). If 'model' or 'aspectRatio' is omitted, the brand's defaults from upsert_visual_style (defaultModel / defaultAspectRatio) are used as fallbacks before the built-in default. The 'prompt' can be plain text OR a JSON object encoded as a string. When using JSON, keys are merged with the brand's visual style — per-image keys take precedence over brand defaults. Use get_visual_style to see what's already configured. Recognized JSON keys (first-class — influence the rendering): 'imageDescription' (the main subject — required if no plain-text prompt), 'altText', 'style', 'colorScheme' / 'colorPalette', 'mood', 'motif', 'lighting', 'composition', 'additionalInstructions', 'constraints' (array of negative prompts). Translatable keys (carried through localization): 'imageDescription', 'altText', 'text', 'title', 'caption', 'description'. Unknown keys pass through verbatim to the image model — useful for one-off experiments, but the brand-level fields above are what flow consistently across calls. Note: 'aspect' is NOT a recognized JSON key — pass aspect ratio via the 'aspectRatio' parameter, not in the JSON body. Example JSON prompt: {"imageDescription":"Cute robots working in a garden","motif":"isolated subjects","lighting":"soft natural daylight"}. Returns the public URL of the generated image.
Remote (network-hosted) · Requires an account with the vendor · OAuth
Other tools also called generate_image?
See providers with this name
Input Schema
{
"type": "object",
"properties": {
"brandId": {
"description": "Brand ID (ObjectId)",
"type": "string"
},
"prompt": {
"description": "Image prompt — plain text or a JSON object. JSON keys merge with the brand's visual style; per-image keys win. See tool description for recognized keys.",
"type": "string"
},
"model": {
"description": "Model: 'gemini-3.1-flash-image-preview' (fast) or 'gpt-image-2' (higher quality). Falls back to the brand's defaultModel, then the built-in default.",
"type": [
"string",
"null"
],
"default": null
},
"aspectRatio": {
"description": "Aspect ratio: '1:1', '3:4', '4:3', '9:16', '16:9', '21:9', '2:3', '3:2', '4:5', '5:4', etc. Falls back to the brand's defaultAspectRatio if omitted.",
"type": [
"string",
"null"
],
"default": null
},
"containsText": {
"description": "Whether the image should contain rendered text (e.g. infographics). Default false.",
"type": "boolean",
"default": false
}
},
"required": [
"brandId",
"prompt"
]
}