
HTML Email Playbook
Pulls 19 HTML email coding rules and 6 component patterns directly into your AI client so Claude or Cursor generates templates that actually render in Outlook 2007 through 365, Gmail, and Apple Mail. Exposes structured tools for fetching bulletproof button markup with VML fallbacks, spacing patterns, MSO conditionals, and dark mode handling. You'd reach for this when building transactional or marketing email templates and you're tired of AI hallucinating table structures that break in Outlook or forgetting inline styles. Also includes a playground with screenshot-to-HTML conversion. Available as an npm package or a hosted JSON-RPC endpoint if you don't want to install locally.
- tools
- 5
- transport
- STDIO, HTTP
- last updated
- Oct 31, 2026
Install
From registry metadata$ npx add-mcp https://docs.osamahassouna.com/api/mcp --name email-playbook-mcpRun in your terminal. add-mcp asks which agents to add it to (Claude Code, Codex, Cursor and more). Add -g to install it for every project.
Review the command, arguments and environment values before installing. MCP servers run with your local permissions.
Other ways
Claude Code
$ claude mcp add --transport http email-playbook-mcp https://docs.osamahassouna.com/api/mcpRun in your terminal. Add --scope user to make it available in every project.
Tools
Verified live · 5 toolsVerified live against the running server on Nov 6, 2026.
list_categoriesList all rule categories in the Email Playbook with a one-line description, page count, and the slug and title of each page in it. Categories are: structure (head/body container/header/body/footer), compatibility (Outlook MSO, RTL, responsive), production (Gmail clipping, dark...
List all rule categories in the Email Playbook with a one-line description, page count, and the slug and title of each page in it. Categories are: structure (head/body container/header/body/footer), compatibility (Outlook MSO, RTL, responsive), production (Gmail clipping, dark...
No parameters. Call it with no arguments.
get_playbook_rulesReturn rule pages. format "checklist": each page as its slug, title, description and a short list of the rules to follow, without the body or code; leave out category to get every page in one call (about 16 KB). format "full" (default, needs a category): each page with title,...2 params
Return rule pages. format "checklist": each page as its slug, title, description and a short list of the rules to follow, without the body or code; leave out category to get every page in one call (about 16 KB). format "full" (default, needs a category): each page with title,...
categorystringai-generation · compatibility · production · structureformatstringfull · checklistget_ruleReturn one rule page: slug, category, title, description, checklist, and the markdown body, which includes the page's HTML/CSS code. Accepts the full slug (e.g. "compatibility/responsive"), just the page name ("responsive"), or a page link from a body ("/email-playbook/compati...2 params
Return one rule page: slug, category, title, description, checklist, and the markdown body, which includes the page's HTML/CSS code. Accepts the full slug (e.g. "compatibility/responsive"), just the page name ("responsive"), or a page link from a body ("/email-playbook/compati...
include_examplesbooleanslug*stringlist_componentsList all reusable email components in the playbook with their metadata: name, subcategory (layout/media/interactive/text), description, whether they require Outlook VML, and whether they are responsive. Use this first to discover what components exist before calling get_compon...
List all reusable email components in the playbook with their metadata: name, subcategory (layout/media/interactive/text), description, whether they require Outlook VML, and whether they are responsive. Use this first to discover what components exist before calling get_compon...
No parameters. Call it with no arguments.
get_componentReturn the full record for a single component: title, description, narrative body, the primary HTML pattern, list of slots (placeholders the model should fill), VML/responsive flags, and all code examples. Use after list_components to fetch the actual HTML pattern to paste int...1 params
Return the full record for a single component: title, description, narrative body, the primary HTML pattern, list of slots (placeholders the model should fill), VML/responsive flags, and all code examples. Use after list_components to fetch the actual HTML pattern to paste int...
name*stringbackground-images · buttons · images · inline-icon · spacing · textSponsors
Readme
Osama Hassouna · Docs
Source for docs.osamahassouna.com — an engineering reference hub I keep open while building. Currently one guide is live, with more landing as I write them.
Live now
HTML Email Playbook
A working reference for hand-building HTML email templates that render reliably across Outlook (Windows desktop, 2007 through 365), Gmail web + mobile, Apple Mail, Yahoo Mail, and the long tail of clients that haven't moved past 2007.
Details
- Repository
- github.com/osamahassouna/docs-hub
- Website
- docs.osamahassouna.com/email-playbook
- Category
- Communication & Messaging
- Package
email-playbook-mcp- Transport
- STDIO, HTTP
- Registry
- MCP registry, active
- Tools verified
- Nov 6, 2026