Cloudflare dropped EmDash CMS on April 2, 2026 — and it’s not just another WordPress alternative. Built on Astro and TypeScript, running on Cloudflare Workers, EmDash is what happens when you design a CMS for AI agents first and humans second. Every instance ships with a built-in MCP (Model Context Protocol) server, sandboxed plugins, and an AI Playground that can spin up a full site from a single prompt.
If you’re a developer or AI tool enthusiast, here’s how to actually use it — with 10 proven EmDash prompts you can copy and paste right now.
What Makes EmDash Different for Prompting
Unlike WordPress where themes and plugins can do anything, EmDash themes cannot perform database operations. This architectural constraint means your prompts need to be more explicit about structure and content — but it also means the AI can generate more reliably, because the output is constrained to what’s actually possible.
The other key difference: EmDash’s AI Playground doesn’t just generate text. It generates full site scaffolding — theme files, content structure, sample data, and component architecture — all from a single natural language prompt.
1. Spin Up a Full Site from Scratch
Generate a complete EmDash site for a SaaS landing page. Include: a hero section with headline and CTA, three feature blocks, a pricing table with 3 tiers, testimonials section, and footer. Use a dark theme with blue accents. Site name: “NexusFlow.”
This is the most powerful EmDash prompt. The Playground interprets the request and generates actual TypeScript/Astro files, complete with component structure. You can iterate by adding constraints (“make it lighter”, “add a blog section”) and it refines the output.
2. Create a Content Type
Add a new content collection called “case_studies” to my EmDash site. Each entry should have: title (text), client_name (text), results (rich text), metrics (array of {label, value} objects), and hero_image (media). Generate sample data for 3 case studies in the SaaS and fintech space.
EmDash uses Astro’s content collections. This prompt creates the schema definition and populates it with realistic sample data — much faster than building it manually.
3. Build a Sandboxed Plugin
Create an EmDash plugin that adds a read-time estimate to every blog post. The plugin should: calculate words per minute (set to 238), display “X min read” below the title, and gracefully fall back if the content is empty. Use the sandboxed Dynamic Worker format.
EmDash plugins run in isolated v8 contexts — meaning no more WordPress-style plugin security nightmares. This prompt scaffolds the plugin structure and the developer just fills in the logic.
4. Set Up MCP for AI Content Management
Enable the built-in MCP server on my EmDash instance and create a connection string I can use with Claude Desktop. Show me the exact JSON config needed to manage blog posts, pages, and media via AI agents.
Every EmDash instance exposes an MCP endpoint. This prompt gets you the actual connection config so you can manage content through any MCP-compatible AI assistant.
5. Generate a Blog Post with SEO Structure
Create a new blog post via the MCP API: title “Why EmDash Changes Everything for AI-First Web Development,” slug “emdash-ai-first-web-development,” excerpt (under 155 chars), and full HTML body covering: why WordPress is showing its age, how EmDash’s sandboxed architecture solves plugin security, and why AI-native design matters. Include proper heading hierarchy and at least one code block.
With the MCP server enabled, you can create full posts with proper SEO structure directly through prompts. The agent handles the schema requirements automatically.
6. Migrate Content from WordPress
Run the EmDash WordPress import tool to migrate my existing posts, pages, categories, and featured images from a WordPress XML export file. Map WordPress categories to EmDash collections and preserve all slugs. Flag any content that needs manual review after migration.
EmDash includes official WordPress migration tooling. This prompt generates the migration command with proper flag explanations, making the process faster to execute.
7. Deploy to Cloudflare Workers
Generate the deployment configuration to push my EmDash site to Cloudflare Workers. Include: wrangler.toml settings for a Workers Site, environment variables needed (noting that sandboxed plugins require a paid Cloudflare plan), and the exact deploy command. Also show how to set up a custom domain.
EmDash is built for Cloudflare’s edge. This prompt gets you production-ready deployment config without digging through docs.
8. Create a Theme Component
Generate an EmDash Astro component for a testimonial slider. Requirements: displays testimonials in a horizontal carousel, shows author name, title, company, and photo, auto-advances every 5 seconds with pause-on-hover, and falls back to static grid on JavaScript-disabled browsers. Use Tailwind CSS.
EmDash themes are standard Astro. This prompt generates production-ready components with accessibility considerations and progressive enhancement built in.
9. Add Internationalization (i18n)
Configure my EmDash site for bilingual content (English and Spanish). Set up the i18n routing so /es/ serves Spanish content, configure the language switcher component, and generate the translation JSON files for UI strings (navigation, CTAs, footer). Show how to use the Content Collections i18n API.
EmDash leverages Astro’s i18n capabilities. This prompt handles the routing, translation scaffolding, and component setup in one shot.
10. Set Up Webhooks for Dynamic Content Updates
Configure EmDash webhooks to trigger on: new post published, post updated, and media uploaded. Generate the webhook endpoint handler that logs events and optionally triggers a Cloudflare Cache purge. Show the emdash.config.ts changes needed.
EmDash supports webhook triggers for CI/CD and cache invalidation workflows. This prompt scaffolds the config and handler code you need to wire it up.
Why EmDash Prompting Is Different
Traditional CMS prompting is about generating content. EmDash prompting is about generating software. Because the output is constrained to valid Astro components, TypeScript interfaces, and MCP API calls, you get reliable, executable results — not hallucinated shortcodes or impossible shortcodes.
The other advantage: EmDash is AI-native in its data model too. Content, plugins, themes, and configuration are all represented as structured data the AI can reason about. That’s a fundamentally different authoring experience from WordPress, and it means your prompts can be more precise because the AI understands the full context.
Get Started
To try EmDash yourself: npm create emdash@latest — or use the Cloudflare Dashboard to spin up an instance. Enable the MCP server from the settings panel, connect it to your preferred AI assistant, and start prompting.
Bookmark PromptRefinery for more guides as the EmDash ecosystem evolves. This CMS is days old and the prompting patterns are just starting to emerge — now’s the time to get ahead of the curve.