OptimoCMSDocs
MCP

AI Workflows

Common AI workflows with example prompts and expected output.

AI Workflows

Ready-to-use prompts for common tasks. Copy them into Cursor, Claude Desktop, or Lovable and adjust the site/page IDs.


1. Build a complete site from a prompt

Prompt:

Build a complete website for a pizzeria called "La Dolce Pizza" with these pages:
1. Homepage with hero, menu highlights, and reviews
2. Menu page with categories (pizza, pasta, desserts)
3. About page with team and history
4. Contact page with form and opening hours
Use a warm, Italian style. Language: English.

Expected output:

{
  "siteId": "site_xyz789",
  "previewUrl": "https://la-dolce-pizza.preview.optimocms.com",
  "pagesCreated": 4,
  "sectionsCreated": 14
}

Tools used: generate_page (4x), publish_site


2. Translate all pages to 3 languages

Prompt:

Get all pages of site site_abc123.
Translate each page to German, French, and Spanish.
Give me a summary when all translations are complete.

Expected output per page:

{
  "pageId": "page_home",
  "translations": {
    "de": { "status": "completed", "blocksTranslated": 8 },
    "fr": { "status": "completed", "blocksTranslated": 8 },
    "es": { "status": "completed", "blocksTranslated": 8 }
  }
}

Tools used: list_pages, translate_page (3x per page)

translate_page is rate limited to 5 calls per minute. With more than 2 pages, the AI tool may insert pauses.


3. Bulk-update design tokens across sites

Prompt:

Get all my active sites.
For each site: update the primary color to #2563EB, heading font to "Inter", and border radius to 12px.

Expected output:

{
  "updatedSites": [
    { "siteId": "site_001", "name": "Restaurant A", "tokensUpdated": true },
    { "siteId": "site_002", "name": "Bakery B", "tokensUpdated": true },
    { "siteId": "site_003", "name": "Salon C", "tokensUpdated": true }
  ],
  "total": 3
}

Tools used: list_sites, get_site, update_page


4. Import a website and optimize

Prompt:

Preview what can be imported from https://example-restaurant.com.
If it looks good, import the full site with HD Import.
Then improve the SEO metadata of each page.

Expected output:

{
  "preview": {
    "sectionsDetected": 12,
    "wpDetected": true,
    "blogPostCount": 8,
    "subPages": ["about", "menu", "contact", "reservations"]
  },
  "import": {
    "siteId": "site_imported_001",
    "pagesCreated": 5,
    "blogPostsImported": 8,
    "hdImport": true
  }
}

Tools used: preview_import, import_website, list_pages, update_page


5. Adjust content tone for an entire site

Prompt:

Get all pages of site site_abc123.
Make the tone of all content more professional and formal.
Add a call-to-action section at the bottom of each page.

Expected output per page:

{
  "pageId": "page_home",
  "instruction": "make the tone more professional",
  "blocksModified": 6,
  "ctaAdded": true
}

Tools used: list_pages, assist_content (per page)


6. Add webshop products

Prompt:

Add these products to the shop of site site_abc123:
1. Sourdough Bread - €4.50 - 100 units - category "Bread"
2. Croissant - €2.20 - 200 units - category "Pastry"
3. Focaccia - €3.80 - 75 units - category "Bread"
4. Apple Pie - €15.00 - 25 units - category "Pastry"

Expected output:

{
  "productsCreated": [
    { "title": "Sourdough Bread", "priceCents": 450, "productId": "prod_001" },
    { "title": "Croissant", "priceCents": 220, "productId": "prod_002" },
    { "title": "Focaccia", "priceCents": 380, "productId": "prod_003" },
    { "title": "Apple Pie", "priceCents": 1500, "productId": "prod_004" }
  ]
}

Tools used: create_product (4x)


7. Manage bookings via AI

Prompt:

Show all available time slots for tomorrow on site site_abc123.
Book an appointment at 14:00 for John Smith (john@email.com).
Then show all bookings for tomorrow.

Expected output:

{
  "availableSlots": ["09:00", "10:00", "11:00", "14:00", "15:00", "16:00"],
  "booking": {
    "bookingId": "bk_789",
    "date": "2026-05-27",
    "startTime": "14:00",
    "customer": "John Smith",
    "status": "confirmed"
  },
  "totalBookingsTomorrow": 4
}

Tools used: get_available_slots, create_booking, list_bookings


8. Create job vacancies via AI

Prompt:

Create vacancies for site site_abc123:
1. Senior Full Stack Developer - Remote - Engineering - Full-time
2. UX Designer - Amsterdam - Design - Full-time
3. Marketing Intern - Amsterdam - Marketing - Internship

Expected output:

{
  "jobsCreated": [
    { "jobId": "job_001", "title": "Senior Full Stack Developer", "status": "draft" },
    { "jobId": "job_002", "title": "UX Designer", "status": "draft" },
    { "jobId": "job_003", "title": "Marketing Intern", "status": "draft" }
  ]
}

Tools used: create_job (3x)


9. Generate analytics report

Prompt:

Get analytics for all my active sites over the last 30 days.
Create a comparison: which site has the most visitors, lowest bounce rate, and longest session duration?

Expected output:

{
  "report": {
    "mostVisitors": { "site": "Restaurant A", "uniqueVisitors": 2450 },
    "lowestBounceRate": { "site": "Bakery B", "bounceRate": 32.1 },
    "longestSession": { "site": "Salon C", "avgSessionSeconds": 245 }
  },
  "sitesAnalyzed": 3
}

Tools used: list_sites, get_analytics (per site)


10. Generate template variants and compare

Prompt:

Generate a pricing table template for site site_abc123 with 3 tiers (Basic, Pro, Enterprise).
Then create 3 variants: dark theme, playful, and minimalist.

Expected output:

{
  "baseTemplate": {
    "templateId": "tmpl_pricing_001",
    "sections": 1,
    "tiers": 3
  },
  "variants": [
    { "variantId": "tmpl_pricing_001_dark", "style": "dark" },
    { "variantId": "tmpl_pricing_001_playful", "style": "playful" },
    { "variantId": "tmpl_pricing_001_minimal", "style": "minimalist" }
  ]
}

Tools used: generate_template, generate_template_variants


11. Search and use media

Prompt:

Search for all logo images on site site_abc123.
Show the URL and dimensions of each logo.

Expected output:

{
  "media": [
    { "filename": "logo-main.png", "url": "https://cdn.optimocms.com/...", "width": 400, "height": 120 },
    { "filename": "logo-white.svg", "url": "https://cdn.optimocms.com/...", "width": 400, "height": 120 }
  ],
  "total": 2
}

Tools used: search_media


12. Award loyalty points after event

Prompt:

Give member mem_456 on site site_abc123 500 bonus points for attending the "Summer Festival 2026" event.
Then show the current points balance.

Expected output:

{
  "pointsAwarded": 500,
  "reason": "Summer Festival 2026 attendance",
  "newBalance": 1750,
  "tier": "Gold"
}

Tools used: earn_points, get_member_status


Tips for effective prompts

  1. Be specific β€” mention site IDs, exact pages, and desired style
  2. Step by step β€” ask for a preview first, then the action
  3. Combine tools β€” the AI automatically chains multiple tools together
  4. Specify language β€” mention the desired language for content generation
  5. Rate limits β€” for bulk operations, the AI automatically respects rate limits

On this page