emailens-mcp
@emailens/mcp MCP server for email compatibility analysis.
What it can do
- Preview Email: Full email compatibility preview , transforms HTML for 21 email clients, analyzes CSS, generates scores, simulates dark mode, checks inbox preview and email size.
- Analyze Email: Quick CSS compatibility analysis , returns warnings and per-client scores.
- Audit Email: Comprehensive quality audit , CSS compatibility, spam, links, accessibility, images, inbox preview, size, templates, content overflow, visual bugs.
What data it sees
Do you need an account
No: the server works without sign-in
@emailens/mcp
MCP server for email compatibility analysis. Analyze, preview, diff, and fix HTML emails across 15 email clients — plus capture real screenshots and create shareable links with an optional API key.
Built on @emailens/engine.
Install
npx -y @emailens/mcp
Setup
Claude Desktop
Add to claude_desktop_config.json:
{
"mcpServers": {
"emailens": {
"command": "npx",
"args": ["-y", "@emailens/mcp"]
}
}
}
Claude Code
claude mcp add emailens -- npx -y @emailens/mcp
With API Key (optional — unlocks screenshots + sharing)
{
"mcpServers": {
"emailens": {
"command": "npx",
"args": ["-y", "@emailens/mcp"],
"env": {
"EMAILENS_API_KEY": "ek_live_..."
}
}
}
}
Get your free API key at emailens.dev/settings/api-keys.
Tools
Local Tools (no account needed)
preview_email
Full email compatibility preview — transforms HTML for 15 clients, analyzes CSS, generates scores, simulates dark mode, checks inbox preview and email size.
| Parameter | Type | Required | Description |
|---|---|---|---|
html |
string | Yes | Email HTML source |
clients |
string[] | No | Filter to specific client IDs |
format |
enum | No | "html", "jsx", "mjml", "maizzle" |
analyze_email
Quick CSS compatibility analysis — returns per-client scores and warnings. Faster than audit_email when you only need CSS compatibility.
| Parameter | Type | Required | Description |
|---|---|---|---|
html |
string | Yes | Email HTML source |
format |
enum | No | Input format |
audit_email
Comprehensive quality audit — CSS compatibility, spam scoring, link validation, accessibility, images, inbox preview, size (Gmail clipping), and template variables.
| Parameter | Type | Required | Description |
|---|---|---|---|
html |
string | Yes | Email HTML source |
format |
enum | No | Input format |
skip |
string[] | No | Checks to skip (e.g. ["spam", "images"]) |
fix_email
Generate a structured fix prompt for compatibility issues. Returns markdown with fix instructions that the AI can apply directly.
| Parameter | Type | Required | Description |
|---|---|---|---|
html |
string | Yes | Email HTML to fix |
format |
enum | No | Controls fix syntax |
scope |
enum | No | "all" or "current" |
selectedClientId |
string | No | Client ID for scoped fixes |
list_clients
List all 15 supported email clients with IDs, names, engines, and dark mode support.
diff_emails
Compare two email HTML versions — shows score changes, fixed issues, and introduced issues per client.
| Parameter | Type | Required | Description |
|---|---|---|---|
before |
string | Yes | Original email HTML |
after |
string | Yes | Modified email HTML |
format |
enum | No | Input format |
check_deliverability
Check email deliverability for a domain — SPF, DKIM, DMARC, MX, BIMI records with a score and actionable issues.
| Parameter | Type | Required | Description |
|---|---|---|---|
domain |
string | Yes | Domain to check (e.g. "company.com") |
Hosted Tools (require EMAILENS_API_KEY)
capture_screenshots
Capture real email screenshots across 15 clients in real browsers. Screenshots are hosted on CDN.
| Parameter | Type | Required | Description |
|---|---|---|---|
html |
string | Yes | Email HTML source |
format |
enum | No | Input format |
clients |
string[] | No | Filter clients |
modes |
string[] | No | ["light"], ["dark"], or ["light", "dark"] |
title |
string | No | Name for the preview |
Free plan: 30 previews/day. Sign up
share_preview
Create a shareable link. Recipients see the full analysis without an account.
| Parameter | Type | Required | Description |
|---|---|---|---|
html |
string | Yes | Email HTML source |
title |
string | No | Display title |
format |
enum | No | Input format |
Requires Dev plan ($9/mo). Share links expire after 7 days (Dev) or never (Pro).
Supported Email Clients (15)
| Client | ID | Dark Mode | Notes |
|---|---|---|---|
| Gmail | gmail-web |
Yes | |
| Gmail Android | gmail-android |
Yes | |
| Gmail iOS | gmail-ios |
Yes | |
| Outlook 365 | outlook-web |
Yes | |
| Outlook Windows | outlook-windows |
No | |
| Outlook Windows Legacy | outlook-windows-legacy |
No | Deprecated Oct 2026 |
| Outlook iOS | outlook-ios |
Yes | New in v0.4.0 |
| Outlook Android | outlook-android |
Yes | New in v0.4.0 |
| Apple Mail | apple-mail-macos |
Yes | |
| Apple Mail iOS | apple-mail-ios |
Yes | |
| Yahoo Mail | yahoo-mail |
Yes | |
| Samsung Mail | samsung-mail |
Yes | |
| Thunderbird | thunderbird |
No | |
| HEY Mail | hey-mail |
Yes | |
| Superhuman | superhuman |
Yes |
Development
bun install
bun run build
bun test
bun run typecheck
How to connect
How to connect emailens-mcp to Claude
The server address to paste into Claude settings:
https://emailens-mcp.run.tools
- Open Claude (claude.ai or the desktop app).
- Go to Settings → Connectors.
- Click Add custom connector.
- Paste the server address copied below into Remote MCP server URL and click Add.
- In a chat, click + → Connectors and switch the new connector on.
Custom connectors are available on Free, Pro, Max, Team and Enterprise plans (Free is limited to one). On Team and Enterprise an organization Owner adds the connector first under Organization settings → Connectors.
Authorization
After you click Add, a sign-in window for the service opens. Sign in with your own account and approve access. Claude never sees your password.
How to connect emailens-mcp to ChatGPT
The server address to paste into ChatGPT settings:
https://emailens-mcp.run.tools
- Open ChatGPT in a browser (chatgpt.com). A Plus, Pro, Business, Enterprise or Edu plan is required.
- Turn on developer mode once: Settings → Apps → Advanced settings → Developer mode.
- Open Settings → Connectors and click Create.
- Fill in the form: Name (anything), Description (one line about what the service does), MCP server URL (copy it below).
- Under Authentication choose OAuth if the service requires sign-in, otherwise None. Click Create.
- In a new chat open + → Apps/Connectors and enable the connector.
OpenAI has renamed this section before (Connectors → Apps/Plugins). If the label differs, search settings for "developer mode". On Business/Enterprise workspaces an admin must allow custom connectors first.
Authorization
On first use ChatGPT opens the service's sign-in window. Sign in and approve access.
How to connect emailens-mcp to Cursor
The server address to paste into Cursor settings:
https://emailens-mcp.run.tools
Fastest: click Open in Cursor below and confirm the prompt.
Manually:
- In Cursor open Settings → Cursor Settings → MCP and click Add new global MCP server.
- Paste the JSON copied below into
~/.cursor/mcp.json(per project:.cursor/mcp.jsonin the repo root). - Save the file. The server appears in the MCP list; authorize it there if asked.
Authorization
If the service needs sign-in, an authorize button appears next to the server in the MCP list.
Server tool list (9)
Raw names from tools/list. Only developers need these.
| preview_email | Full email compatibility preview , transforms HTML for 21 email clients, analyzes CSS, generates scores, simulates dark mode, checks inbox preview and email size. |
| analyze_email | Quick CSS compatibility analysis , returns warnings and per-client scores. |
| audit_email | Comprehensive quality audit , CSS compatibility, spam, links, accessibility, images, inbox preview, size, templates, content overflow, visual bugs. |
| fix_email | Generate a structured fix prompt for email compatibility issues. |
| list_clients | List all 21 supported email clients with IDs, names, rendering engines, dark mode support, and deprecation status. Use the returned IDs to filter other tools like preview_email or capture_screenshots. |
| diff_emails | Compare two email HTML versions , shows score changes, fixed issues, and regressions per client. |
| check_deliverability | Check email deliverability for a domain , SPF, DKIM, DMARC, MX, BIMI. |
| build_email | Generate a cross-client-compatible email from a brief using Emailens's self-healing loop (generate → score across 21 clients → repair). Output stays in the framework you choose. Returns a runId immediately , poll get_build_status for progress and the final code. Requires a Pro/Team API key. |
| get_build_status | Check a build_email run by runId , returns status, iteration, best compatibility score, and the current best source once available. |