Emailens MCP について
Emailens MCPは、HTML、MJML、Maizzle、React Emailでメールを作る開発者やコンテンツチーム向けに、互換性と品質を検査します。分析前にテンプレートをコンパイルし、版の比較や修正プロンプトの生成も行えます。APIキーでスクリーンショットと共有機能を利用できます。
主な機能
- 0121のメールクライアントで互換性を確認
- 02スパム・リンク・アクセシビリティを監査
- 03複数のメールテンプレート形式をコンパイル
- 04版を比較して修正プロンプトを生成
- 05任意のスクリーンショットとプレビュー共有
活用シーン
- 01送信前に各クライアントでの表示を確認
- 02マーケティングメールの到達性とアクセシビリティを監査
- 03編集前後の問題を比較
- 04互換性問題への修正指針を作成
MCP 対応
メールのプレビュー、分析、監査、修正、クライアント一覧、版の比較、ドメインの到達性確認ツールをMCPクライアントに提供します。スクリーンショットと共有ツールにはEMAILENS_API_KEYが必要で、ホスト済みエンドポイントにも接続できます。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://emailens.dev/api/mcpclaude mcp add --transport http emailens https://emailens.dev/api/mcp{"mcpServers":{"emailens":{"type":"http","url":"https://emailens.dev/api/mcp"}}}Cursor で開く{"servers":{"emailens":{"type":"http","url":"https://emailens.dev/api/mcp"}}}VS Code で開く{"mcpServers":{"emailens":{"type":"http","url":"https://emailens.dev/api/mcp"}}}{"mcpServers":{"emailens":{"serverUrl":"https://emailens.dev/api/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
13| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| html | string | はい | メールの HTML ソースコード |
| format | enum | いいえ | 入力形式:'html'(デフォルト)、'jsx'、'mjml'、または 'maizzle'。html | jsx | mjml | maizzle |
| clients | array | いいえ | 任意のクライアント ID フィルター |
詳細
メールの互換性を分析する MCP サーバーです。21 のメールクライアントでメールを分析、プレビュー、差分確認、修正できます。また、オプションの API キーを使えば、実際のスクリーンショットを取得して共有可能なリンクを作成できます。
HTML、MJML、Maizzle、React Email を送信できます。format を設定すると、分析前にテンプレートがコンパイルされるため、読者が実際に受け取る HTML がチェックされます。
アシスタントが必要な理由:追跡対象の 298 個の CSS および HTML 機能のうち、主要なすべてのメールクライアントで完全にサポートされているのは 6 個だけです(データを見る)。メールを送信する前に、Claude にチェックを依頼しましょう。
@emailens/engine を基盤としています。GitHub Action としても利用できます。
インストール
npx -y @emailens/mcp
セットアップ
Claude Desktop
claude_desktop_config.json に追加します:
{
"mcpServers": {
"emailens": {
"command": "npx",
"args": ["-y", "@emailens/mcp"]
}
}
}
Claude Code
claude mcp add emailens -- npx -y @emailens/mcp
API キーを使用する場合(任意。スクリーンショットと共有機能を利用できます)
{
"mcpServers": {
"emailens": {
"command": "npx",
"args": ["-y", "@emailens/mcp"],
"env": {
"EMAILENS_API_KEY": "ek_live_..."
}
}
}
}
無料の API キーは app.emailens.dev/dashboard/api で取得できます。
リモート(インストール不要)
ホストされたエンドポイントを使用します。npm や Node.js は不要です。API キーが必要です。
{
"mcpServers": {
"emailens": {
"url": "https://app.emailens.dev/api/mcp",
"headers": {
"Authorization": "Bearer ek_live_..."
}
}
}
}
ツール
ローカルツール(アカウント不要)
preview_email
メールの完全な互換性プレビュー:21 のクライアント向けに HTML を変換し、CSS を分析してスコアを生成し、ダークモードをシミュレートし、受信トレイのプレビューとメールサイズをチェックします。
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
html | string | いずれか1つ | メールの HTML ソース |
path | string | いずれか1つ | html の代わりに指定するソースファイルの絶対パス(.html、.htm、.mjml、.jsx、.tsx、.vue)。拡張子によって format が設定されます |
clients | string[] | いいえ | 特定のクライアント ID に絞り込みます |
format | enum | いいえ | "html"、"jsx"、"mjml"、"maizzle" |
analyze_email
CSS の互換性をすばやく分析し、クライアントごとのスコアと問題ごとの指摘を 1 件ずつ返します。CSS の互換性だけを確認したい場合は、audit_email より高速です。
| Parameter | Type | Required | Description |
|---|---|---|---|
html | string | One of | メールの HTML ソース |
path | string | One of | html の代わりに指定する、ソースファイルへの絶対パス(.html、.htm、.mjml、.jsx、.tsx、.vue)。拡張子によって format が設定されます |
format | enum | No | 入力形式 |
detail | enum | No | "summary"(デフォルト)または "full" |
clients | string[] | No | 指定したクライアント ID のみを報告します |
targetingPolicy | enum | No | "progressive"(デフォルト)、"strict"、または "lenient" |
クライアントごとではなく、問題ごとに指摘を 1 件返します。 スコアはクライアントごと、修正はセレクターごとに行うため、エンジンはクライアントごと、セレクターごとに報告します。一般的なニュースレターでは、border-radius が 12 回(このプロパティを無視するクライアントが 2 つ、使用するセレクターが 6 つ)届き、どのコピーにも同じ文章が含まれていました。これは 286KB の JSON、約 73,000 トークンに相当し、メールのサイズは 11KB でした。
指摘はプロパティ、重大度、メッセージごとにまとめられ、影響を受けるクライアントが一覧表示され、位置情報もすべて統合されます。同じメールの応答は 40KB になりました。
{
"property": "border-radius",
"severity": "warning",
"clients": ["outlook-windows", "outlook-windows-legacy"],
"message": "Does not support \"border-radius\". Round corners can be used in VML…",
"fixType": "structural",
"hasFix": true,
"loc": { "line": 61, "column": 28, "offset": 2753, "length": 171 },
"alsoAtLines": [62, 64, 75, 78, 87]
}
修正スニペットは含まれません。286KB のうち 93KB を占めており、対応すると決めた問題のスニペットは fix_email が生成します。hasFix で修正が利用可能かどうか、fixType で修正がマークアップか CSS かを確認できます。
エンジンのクライアントごとの形式とスニペットを含めるには detail: "full" を指定し、関心のある項目だけを報告するには clients: ["gmail-web", "outlook-windows"] を指定します。これがさらなる高速化につながり、2 つのクライアントを指定した場合、応答はおよそ半分になります。どちらの場合もスコアはメール全体を対象とします。報告対象を絞り込んでも、ほかのクライアントにおけるメールの評価は変わりません。不明なクライアント ID は名前を示して拒否されます。結果が空だと、そのクライアントでは「このメールに問題はない」という意味に受け取られるためです。
ソース位置。 HTML 入力の場合、各警告には最初の出現箇所の loc(line、column、offset、length)に加え、ほかの出現箇所を示す alsoAtLines が含まれます。そのため、アシスタントはソースの正確な箇所を編集でき、残りの箇所も把握できます。audit_email も、ほかの指摘について同じ方法で位置を示します。
{
"property": "border-radius",
"loc": { "line": 7, "column": 8, "offset": 142, "length": 25 },
"alsoAtLines": [12, 19]
}
後続の出現箇所は、意図的に完全な位置情報ではなく行番号で示します。この応答を読むモデルはトークンごとにコストがかかり、実際のニュースレターでは出現箇所が 1,000 件を超えることがあるため、すべてを完全な形式で含めるとペイロードがほぼ 2 倍になります。
位置情報が報告されるのは html 入力の場合のみです。JSX、MJML、Maizzle は分析前にコンパイルされるため、行番号は開いているファイルではなく生成された出力を指してしまいます。そのため、ツールは権威があるように見える誤った行番号を返すのではなく、省略します。
audit_email
包括的な品質監査:CSS の互換性、スパムスコア、リンクの検証、アクセシビリティ、画像、受信トレイのプレビュー、サイズ(Gmail によるクリッピング)、テンプレート変数、コンテンツのはみ出し、視覚的な不具合、ダークモードとモバイルでのテキストコントラスト、デザインの一貫性、クライアントのターゲティング。
最後の3項目では、デスクトップでの簡易プレビューでは確認できない問題を扱います。クライアントがダークモードを強制したとき、またはメール内のダークブロックが背景を再描画して、その上のテキストの色を変えないときに消えてしまうテキスト、メールのブレークポイントを下回るコントラスト、そして値は異なっても読者には違いが分からない色です。
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
html | string | いずれか1つ | メールの HTML ソース |
path | string | いずれか1つ | html の代わりに指定するソースファイルの絶対パス(.html、.htm、.mjml、.jsx、.tsx、.vue)。拡張子によって format が設定されます |
format | enum | いいえ | 入力形式 |
detail | enum | いいえ | "summary"(デフォルト)または "full" |
clients | string[] | いいえ | 指定したクライアント ID のみを報告します |
skip | string[] | いいえ | スキップするチェック(例:["spam", "images"]) |
targetingPolicy | enum | いいえ | "progressive"(デフォルト)、"strict"、または "lenient" |
emailType | enum | いいえ | "transactional"(配信停止リンクは不要)または "marketing"。省略時はコンテンツから推定します |
previousHtml | string | いいえ | このバージョンを比較するデザイン。通常は最初のドラフトです。省略時は、セッション内で監査したこのメールの最初のバージョンになります。編集で削除された内容は designRemovals として返されます |
error と warning の指摘事項を修正してください。info の指摘事項は問題ではありません。その場合、メールは安全にフォールバックするため、これらを解消する目的でレスポンシブ(@media)やダークモードの CSS を削除しないでください。
fix_email
互換性の問題を修正するための、構造化された修正プロンプトを生成します。AI が直接適用できる修正手順を含む Markdown を返します。
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
html | string | いずれか1つ | 修正するメールの HTML |
path | string | いずれか1つ | html の代わりに指定するソースファイルの絶対パス(.html、.htm、.mjml、.jsx、.tsx、.vue)。拡張子によって format が設定されます |
format | enum | いいえ | 修正構文を制御します |
scope | enum | いいえ | "all" または "current" |
selectedClientId | string | いいえ | 対象を限定した修正に使用するクライアント ID |
list_clients
サポートされている21種類のメールクライアントについて、ID、名前、エンジン、ダークモードのサポート状況を一覧表示します。
diff_emails
2つのメール HTML バージョンを比較し、クライアントごとのスコアの変化、修正された問題、新たに発生した問題を表示します。
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
before / beforePath | string | いずれか1つ | 元のメールソース、またはそのファイル |
after / afterPath | string | いずれか1つ | 変更後のメールソース、またはそのファイル |
format | enum | いいえ | 入力形式 |
check_deliverability
ドメインのメール到達性を確認します。SPF、DKIM、DMARC、MX、BIMI のレコードをチェックし、スコアと実行可能な問題を提示します。
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
domain | string | はい | 確認するドメイン(例:"company.com") |
ホスト型ツール(EMAILENS_API_KEY が必要です)
capture_screenshots
実際のブラウザーで21種類のクライアントにおけるメールのスクリーンショットを撮影します。スクリーンショットは CDN でホストされます。
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
html | string | いずれか1つ | メールの HTML ソース |
path | string | いずれか1つ | html の代わりに指定するソースファイルの絶対パス(.html、.htm、.mjml、.jsx、.tsx、.vue)。拡張子によって format が設定されます |
format | enum | いいえ | 入力形式 |
clients | string[] | いいえ | クライアントを絞り込みます |
modes | string[] | いいえ | ["light"]、["dark"]、または ["light", "dark"] |
title | string | いいえ | プレビューの名前 |
無料プラン:1日30回までプレビューできます。登録
share_preview
共有可能なリンクを作成します。受信者はアカウントなしで分析の全内容を確認できます。
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
html | string | いずれか1つ | メールの HTML ソース |
path | string | いずれか1つ | html の代わりに指定するソースファイルの絶対パス(.html、.htm、.mjml、.jsx、.tsx、.vue)。拡張子によって format が設定されます |
title | string | いいえ | 表示タイトル |
format | enum | いいえ | 入力形式 |
Dev プラン(月額 $9)が必要です。共有リンクの有効期限は Dev では7日間、Pro では無期限です。
テンプレート形式
format には html(デフォルト)、mjml、maizzle、jsx(React
Email)を指定できます。maizzle は HTML テンプレート、または Vue の単一ファイルコンポーネントです。format を指定せずに Vue
ファイルを貼り付けると、maizzle としてコンパイルされます。html 以外の形式は分析前にコンパイルされ、修正用スニペットの構文も決定します。
コンパイルの重要性は、見た目以上です。メールクライアントがレンダリングするのは 出力 なので、検査対象もそれでなければなりません。生の <mjml> ドキュメントを渡すと、HTML パーサーは CSS を見つけられず、メールに問題がないと報告してしまいます。このような回答はエラーよりも厄介です。アシスタントがその回答を繰り返すためです。
コンパイラーは同梱されていません。 MJML だけでも 56MB を占めます。また、このサーバーは通常 npx で起動されるため、エンジンではコンパイラーをオプションのピア依存関係として扱っています。
npm install mjml # MJML
npm install @maizzle/framework@5 # Maizzle HTML
npm install @maizzle/framework@6 # Maizzle Vue single-file components
npm install sucrase react @react-email/components @react-email/render # React Email
サーバーの実行環境にインストールする必要がありますが、そこを常に自分で管理できるとは限りません。インストールできない場合は、テンプレートを自分でコンパイルし、生成された HTML を format: "html" で送信してください。ツールはこの状況に遭遇すると、その旨を伝えます。
対応メールクライアント(21)
各クライアントのリンク先は CSS 対応状況のページです。すべてのアシスタント向けのセットアップガイドは、emailens.dev/mcp をご覧ください。
| クライアント | ID | ダークモード | 備考 |
|---|---|---|---|
| Gmail | gmail-web | はい | |
| Gmail Android | gmail-android | はい | |
| Gmail iOS | gmail-ios | はい | |
| Outlook 365 | outlook-web | はい | |
| Outlook Windows | outlook-windows | いいえ | |
| Outlook Windows Legacy | outlook-windows-legacy | いいえ | 2026年10月に非推奨 |
| Outlook iOS | outlook-ios | はい | v0.4.0 で追加 |
| Outlook Android | outlook-android | はい | v0.4.0 で追加 |
| Outlook for Mac | outlook-macos | はい | v0.10.0 で追加 |
| Apple Mail | apple-mail-macos | はい | |
| Apple Mail iOS | apple-mail-ios | はい | |
| Yahoo Mail | yahoo-mail | はい | |
| Yahoo Mail Android | yahoo-mail-android | はい | v0.10.0 で追加 |
| Yahoo Mail iOS | yahoo-mail-ios | はい | v0.10.0 で追加 |
| Samsung Mail | samsung-mail | はい | |
| Thunderbird | thunderbird | いいえ | |
| HEY Mail | hey-mail | はい | |
| Proton Mail | protonmail | はい | v0.10.0 で追加 |
| AOL Mail | aol | はい | v0.10.0 で追加 |
| Fastmail | fastmail | はい | v0.10.0 で追加 |
| Superhuman | superhuman | はい |
リリース
公開先はnpmとMCPレジストリの2つです。server.jsonがプッシュされていなかったため、レジストリの掲載情報は5回分のリリース遅れが生じていました。そのため、現在はその部分もワークフローに含まれています。詳細と、バージョンを一致させる必要がある4か所については、RELEASING.mdをご覧ください。
開発
bun install
bun run build
bun test
bun run typecheck
ライセンス
MIT
Outlookでの思わぬ事態を防げたなら、スターを付けていただくと、ほかのメール開発者にも見つけてもらいやすくなります。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。