AI End Card Maker
An AI end card maker for mobile game ads. Drop in your game's logo, a few reference images, and a call-to-action and it pulls the characters, colors, and mood from your art into a polished, install-driving end card creative — in the placement size UA networks need (9:16 by default, or 1:1 / 16:9).
Run it free in the playground, then call it from your app.
No inputs handy? Try one of these
For developers
Run it from your own stack.
This skill is an API. One call runs the whole pipeline server-side as a long-running job and returns the result — from Python, plain HTTP, or an MCP-connected coding agent.
API access — MCP · Python SDK · cURL · JSON schemas
claude mcp add --transport http puras https://mcp.puras.co/mcpOAuth on first call — no key to paste. Then ask the agent to run end-card-generator from skill puras/game-ad-studio.
pip install puras
puras login # or set PURAS_API_KEY
puras run puras/game-ad-studio/end-card-generator -i key=valueimport puras
client = puras.Client() # PURAS_API_KEY from env
result = client.run("puras/game-ad-studio/end-card-generator", {"logo":"https://uozfqcfhlhugotnevscg.supabase.co/storage/v1/object/public/puras-public-skills/coc_logo.webp","style":"playful","cta_text":"Play Free","headline":"Build a village!","references":["https://uozfqcfhlhugotnevscg.supabase.co/storage/v1/object/public/puras-public-skills/coc_ss1.webp","https://uozfqcfhlhugotnevscg.supabase.co/storage/v1/object/public/puras-public-skills/coc_ss2.webp","https://uozfqcfhlhugotnevscg.supabase.co/storage/v1/object/public/puras-public-skills/coc_ss3.webp"],"aspect_ratio":"9:16"})curl -X POST "https://api.puras.co/v1/jobs?skillpack=puras/game-ad-studio&wait=true" \
-H "Authorization: Bearer $PURAS_API_KEY" \
-H "Content-Type: application/json" \
-d '{"skill":"end-card-generator","inputs":{"logo":"https://uozfqcfhlhugotnevscg.supabase.co/storage/v1/object/public/puras-public-skills/coc_logo.webp","style":"playful","cta_text":"Play Free","headline":"Build a village!","references":["https://uozfqcfhlhugotnevscg.supabase.co/storage/v1/object/public/puras-public-skills/coc_ss1.webp","https://uozfqcfhlhugotnevscg.supabase.co/storage/v1/object/public/puras-public-skills/coc_ss2.webp","https://uozfqcfhlhugotnevscg.supabase.co/storage/v1/object/public/puras-public-skills/coc_ss3.webp"],"aspect_ratio":"9:16"}}'Input schema (JSON Schema)
{
"type": "object",
"required": [
"logo",
"references",
"cta_text"
],
"properties": {
"logo": {
"type": "image",
"description": "The game's logo (transparent PNG preferred)."
},
"style": {
"enum": [
"auto",
"bold",
"playful",
"minimal",
"premium"
],
"type": "string",
"description": "Visual tone. `auto` decides based on the game's genre."
},
"cta_text": {
"type": "string",
"maxLength": 24,
"minLength": 2,
"description": "Button text, e.g. \"Play Now\", \"Install\"."
},
"headline": {
"type": "string",
"maxLength": 40,
"description": "Short hook (2–5 words). Auto-written if empty."
},
"references": {
"type": "array",
"items": {
"type": "image"
},
"maxItems": 5,
"minItems": 1,
"description": "Game reference images — key art, screenshots, characters, icons."
},
"brand_color": {
"type": "color",
"description": "Accent color for the CTA button. Derived from logo if empty."
},
"aspect_ratio": {
"enum": [
"9:16",
"1:1",
"16:9"
],
"type": "string",
"default": "9:16",
"description": "Which placement to render. Defaults to vertical 9:16."
},
"social_proof": {
"type": "string",
"maxLength": 40,
"description": "Optional social proof, e.g. \"4.8★ · 10M+ players\". Never fabricated."
}
}
}Output schema (JSON Schema)
{
"type": "object",
"properties": {
"end_card": {
"type": "image",
"description": "The finished end-card image."
}
}
}Call AI End Card Maker from your app.
Run it free in the playground above, then wire it in with one call — from Python, TypeScript, or your coding agent over MCP. Every run returns an exact cost receipt.
Every run is billed to the cent — see pricing.