Back to .md Directory

Skill: Google Stitch for Content Visuals (MCP-Integrated)

Defines when and how to use Google Stitch via MCP to generate visual concepts like carousels, banners, and email templates from text prompts.

May 2, 2026
0 downloads
10 views
ai agent prompt mcp gemini
View source

What this file does

Defines when and how to use Google Stitch via MCP to generate visual concepts like carousels, banners, and email templates from text prompts.

When to use it

  • Need rapid visual layouts for social media carousels
  • Generating cover images for posts, videos, or articles
  • Creating HTML/CSS scaffolds for email templates
  • Exploring layout variants for A/B testing

Assumes this stack

Google StitchGemini 3 ProGemini 3 FlashMCP

name: google-stitch-content description: Visual content concepts generation via Google Stitch (AI) with MCP — carousels, covers, banners, social media visuals metadata: version: "1.0" last_verified: "2026-04-04" mcp_server: "StitchMCP" adapted_from: ".agents/skills/google-stitch-skill (UX/UI domain, v3.0)"

Skill: Google Stitch for Content Visuals (MCP-Integrated)

Purpose

Describes how and when Visual Concept uses Google Stitch to generate visual concepts for content:

  • Fast generation of visual layouts for social media, banners, carousel slides.
  • Rapid ideation: 2-3 visual variants in minutes.
  • HTML/CSS code generation for email templates and landing pages.

[!IMPORTANT] Stitch is accessible directly via MCP — the agent generates, iterates, and manages screens without manual copying. Stitch is a tool for rapid prototyping of visual concepts, not final design. The output requires brand compliance checking and adaptation to $brand-guidelines.

Adapted from .agents/skills/google-stitch-skill (UX/UI domain) for the content domain.


What is Google Stitch

Google Stitch is an AI tool from Google Labs. It turns text prompts into UI layouts with export to Figma and HTML/CSS/React code.

Engine: Gemini 3 Pro / Gemini 3 Flash. URL: https://stitch.withgoogle.com Access: Google account + StitchMCP server connected to the agent.


When to Use in Content Pipeline

✅ Use for

  • Generating visual layouts for carousel slides (Instagram, LinkedIn PDF).
  • Generating covers for posts, videos, articles.
  • Generating banners and visual blocks for email newsletters.
  • Fast creation of layout variants for A/B testing visuals.
  • Email templates — HTML/CSS scaffold for $email-copywriting.
  • Landing page sections — visual blocks for landing pages.

❌ Do NOT use for

  • Photo content — Stitch generates UI, not photographs. For photos → $image-prompt-engineering (Midjourney/DALL-E).
  • Illustrations and art visuals — Stitch ≠ Midjourney. For art → $image-prompt-engineering.
  • Content requiring a pixel-perfect result — Stitch = concept, not final.
  • Video — Stitch does not support animations and video.

Place in the Pipeline

$content-brief (topic, visual requirements)
       ↓
$moodboard (style, palette, mood)
       ↓
$visual-brief (detailed spec)
       ↓
[STITCH MCP: Rapid Visual Ideation]    ← this skill
  generate_screen_from_text → edit_screens → generate_variants
       ↓
$brand-compliance (visual check)
       ↓
$content-review-checklist → $content-release-gate

StitchMCP — API Reference (brief)

ToolPurposeWhen
create_projectCreate a projectNew campaign / series of visuals
list_projects / get_projectFind existingIteration of an existing campaign
list_screens / get_screenGet screens / codeViewing results
generate_screen_from_text🎯 Generate visual from promptMain tool
edit_screensEditingRefining after initial generation
generate_variantsGenerate variantsA/B visuals, layout exploration

Models

IDWhen
GEMINI_3_FLASHFirst iterations, exploring variants (faster)
GEMINI_3_PROFinal variants, complex layouts (higher quality)

Device Types for Content

DeviceTypeContent Usage
MOBILEInstagram Stories/Reels (9:16), mobile banners
DESKTOPLinkedIn carousel (16:9), email templates, landing sections
AGNOSTICSquare visuals (1:1), OG images, universal

Input

FieldRequiredDescription
Visual brief✅From $visual-brief — what to depict, composition, mood
Brand guidelines✅From $brand-guidelines — palette (HEX), fonts, style
Platform + dimensions✅From $platform-visual-specs — to select deviceType
Text for visual⬚Headline, CTA — if there is text on the visual
Moodboard⬚From $moodboard — style, references

Operating Protocol

Step 1 — Project Preparation

IF campaign/series → create_project(title: "[Brand] — [Campaign]")
IF single visual → use existing project or create a new one
→ remember projectId

Step 2 — Prompt Formulation

Prompt structure for content visuals:

[Visual Type] + [Platform/Dimensions] + [Content Elements] + [Brand Style] + [Constraints]

Content Prompt Checklist

  • Type: Carousel slide / Banner / Email block / Post cover / OG image / Landing section
  • Dimensions: Exact px or ratio (1080×1080, 1080×1350, 1200×627)
  • Content Elements: Headline (text), subheadline, CTA button, icons, placeholder image
  • Brand: Colors (HEX), font, logo (position), style (minimal / bold / editorial)
  • Mood: From $moodboard or $visual-brief
  • Constraints: "No stock photos", "No illustrations", "Text only", safe zones

Prompt Examples for Content

Instagram carousel (slide):

Social media carousel slide, 1080×1080px.
Bold headline "5 Email Marketing Mistakes" in white, 48px, Inter Bold.
Background: solid dark navy (#1A1A2E). Accent: teal (#00C9A7).
Subtext: "Mistake #1: No segmentation" in 20px, light gray.
Bottom: page indicator dots (5 dots, first active).
Minimal style, no illustrations, no stock photos.
Logo small bottom-right corner.

Email banner:

Email header banner, 600×200px, desktop.
Left: headline "Your Weekly Digest" in 24px Inter Bold, dark text (#1A1A2E).
Right: abstract geometric shape, teal (#00C9A7) accent.
Background: light gray (#F5F5F5). Bottom border: 2px teal line.
Clean, minimal, SaaS-style. No photos.

LinkedIn post image:

Social media post image, 1200×627px, desktop.
Center: large stat "340%" in bold 72px, accent color (#4361EE).
Below: "Growth in AI-generated content in 2026" in 18px, dark gray.
Background: white with subtle grid pattern.
Bottom-left: small logo. Bottom-right: source attribution "McKinsey, 2026" in 12px gray.
Data visualization style, minimal, professional.

Step 3 — Generation

generate_screen_from_text(
  projectId: "<id>",
  prompt: "<prompt>",
  deviceType: "MOBILE" | "DESKTOP" | "AGNOSTIC",
  modelId: "GEMINI_3_FLASH"  // Flash for first iterations
)
→ remember screenId

⚠️ Generation can take up to a few minutes. DO NOT repeat the call — wait for the response.

Step 4 — Iteration (edit_screens)

2-3 iterations for refinement:

edit_screens(
  projectId: "<id>",
  selectedScreenIds: ["<screenId>"],
  prompt: "Change headline color to #00C9A7, move CTA button to bottom-center",
  modelId: "GEMINI_3_FLASH"
)

Types of edits for content visuals:

  • Color: "Change [element] color to [HEX]"
  • Text: "Replace headline with '[new text]'"
  • Position: "Move [element] to [position]"
  • Size: "Make headline larger, 56px"
  • Remove: "Remove [element]"
  • Add: "Add CTA button '[text]' at bottom-center, teal background"

Step 5 — Variants for A/B

generate_variants(
  projectId: "<id>",
  selectedScreenIds: ["<screenId>"],
  prompt: "Generate layout variations with different text placement",
  variantOptions: { numberOfVariants: 3 }
)

Step 6 — Result Retrieval

get_screen(projectId, screenId, name)
→ code / metadata
→ for carousel: repeat for each slide

Carousels — Special Workflow

For Instagram / LinkedIn carousels (multiple slides):

1. create_project(title: "[Brand] — Carousel: [topic]")
2. For each slide:
   generate_screen_from_text(prompt: "Slide [N] of [total]: [slide content]")
3. Important: specify a consistent style in every prompt:
   "Same style as previous: [colors, font, size, style]"
4. edit_screens for each slide → brand consistency
5. get_screen for each → save

⚠️ Stitch struggles with consistency > 3 screens. For long carousels (10 slides) — generate in batches of 2-3, explicitly repeating the style parameters.


Brand Compliance After Stitch

Stitch does not know your brand. After generation — mandatory check:

ElementCheckAction if it does not match
ColorsDo HEX match $brand-guidelines?edit_screens → fix colors
FontCorrect font?Stitch often uses system fonts. Mark for replacement
LogoCorrect variant, position?edit_screens → add/move
StyleMatches $moodboard?Iterate or re-generate
TextFree of errors? Correct CTA?edit_screens → fix
Safe zoneIs key content out of the safe zone?edit_screens → move

Validation (Quality Gate)

A Stitch visual is considered ready for handoff if:

  • Passed ≥ 2 iterations via edit_screens
  • Colors conform to $brand-guidelines (HEX verified)
  • Text on visual is error-free
  • Dimensions conform to $platform-visual-specs
  • Safe zones are respected
  • For carousel: style is consistent across slides
  • Screen ID documented
  • Prompt saved (for reproducibility)
  • A/B variants generated (if needed)

Stitch Limitations for Content

LimitationImpactWorkaround
Does not generate photosOnly UI/layout, not photo-realistic imagesFor photos → $image-prompt-engineering (Midjourney/DALL-E)
Consistency > 3 screens is low10-slide carousels — varying stylesExplicitly repeat style in each prompt
No animationsCannot make animated Stories/ReelsOnly static visuals
Fonts are system defaultDoesn't know your brand fontsMark for replacement, specify font in prompt
Doesn't know the brandNo auto-apply brand guidelinesExplicitly state HEX, font, style in each prompt
MCP generation is slowUp to a few minutes per screenDo not repeat call, wait
Copy to Figma — UI onlyMCP doesn't support Figma exportManual step via browser

Anti-patterns

MistakeWhy it's badHow to do it right
Prompt "beautiful banner for Instagram"Stitch won't guess the style, colors, contentSpecific prompt: size + text + HEX colors + style
Accepting first generation without iterationsFirst result is rarely perfectMinimum 2 iterations via edit_screens
Using Stitch for photosStitch generates UI, not photos$image-prompt-engineering for photos
Failing to check brand complianceColors, fonts, logos may flagrantly failCheck after every generation
Repeating call when "stuck"Duplication of generations, budget lossWait. Check via get_screen
10 edits in one edit_screensStitch loses contextMaximum 3-5 edits at a time
Stitch-output as final visualNot brand-compliant, system fontsStitch = concept. Final = after brand check
Carousel without unified styleEvery slide looks differentRepeat style parameters in every prompt

Integration with other skills

SkillInteraction
$visual-briefSource: Spec for generation → Stitch prompt
$brand-guidelinesSource: colors, fonts, style → prompt parameters
$moodboardSource: mood, style → style parameters of the prompt
$platform-visual-specsSource: dimensions, ratio → deviceType and size
$image-prompt-engineeringComplement: Stitch = UI/layout, image_prompt = photo/art
$brand-complianceConsumer: checking Stitch-output for brand alignment
$email-copywritingConsumer: HTML-scaffold from Stitch for email templates

Output (Deliverables)

### Stitch Output — [Content / Campaign]

**Project ID:** [id]
**Screen IDs:** [list]
**Prompt (saved):** [for reproducibility]
**Iterations:** [list of edit_screens]
**Brand Check:** [✅ colors / ✅ style / ⚠️ font — mark for replacement]
**Variants:** [A/B — which ones, for what]

→ Handoff to `$brand-compliance` → `$content-review-checklist` → `$content-release-gate`

What's inside

14 sections covering purpose, use cases, MCP API reference, prompt structure, step-by-step protocol, carousel workflow, brand compliance, and anti-patterns

Change this for your project

  • Replace $brand-guidelines with your brand guidelines reference
  • Replace $visual-brief with your visual brief document name
  • Replace $moodboard with your moodboard reference
  • Replace $platform-visual-specs with your platform specs document

Where it goes

Save as SKILL.md inside a skill folder. Loaded when the agent selects that skill.

Worth borrowing

  • Prompt checklist with explicit HEX colors, font names, and constraints for reproducible results
  • Structured iteration workflow: generate → edit → variant → brand check before handoff
  • Carousel batch strategy to work around Stitch's consistency limit of 3 screens

Related Documents