Cloudflare Email Service: 公開ベータ版がリリース。エージェント向けに準備完了
2026-04-16 | Thomas Gauvin、Eric Falcão | 6分で読める
メールは世界で最もアクセスしやすいインターフェース
メールはユビキタスです。カスタムチャットアプリケーションは不要で、各チャネル向けのカスタムSDKも必要ありません。誰もがすでにメールアドレスを持っているため、誰もがあなたのアプリケーションやエージェントと対話できます。そしてあなたのエージェントは誰とでも対話できます。
アプリケーションを構築している場合、すでにサインアップ、通知、請求書のためにメールに依存しています。ますます、アプリケーションロジックだけでなく、エージェントもこのチャネルを必要としています。
プライベートベータ中に、私たちは以下を構築している開発者と話しました:
- カスタマーサポートエージェント
- 請求書処理パイプライン
- アカウント検証フロー
- マルチエージェントワークフロー
すべてメールの上に構築されています。パターンは明確です: メールはエージェント向けのコアインターフェースになりつつあり、開発者はそのために目的別に構築されたインフラストラクチャが必要です。
Cloudflare Email Serviceがそれです。
Cloudflare Email Serviceの機能
Email Routing を使用すると、アプリケーションやエージェントへのメールを受信できます。Email Sending を使用すると、メールに返信したり、エージェントが作業を完了したときにユーザーに通知するためのアウトバウンドメールを送信できます。残りの開発者プラットフォームと組み合わせることで、完全なメールクライアントとネイティブ機能としてのAgents SDK onEmailフックを構築できます。
本日、Agents Weekの一部として、Cloudflare Email Serviceは公開ベータ版に移行し、あらゆるアプリケーションとエージェントがメールを送信できるようになります。
メールネイティブエージェント構築用のツールキットも完成しました:
- Email Sending binding: WorkersおよびAgents SDKから利用可能
- 新しいEmail MCP server
- Wrangler CLI email commands
- コーディングエージェント向けスキル
- オープンソースのエージェント受信箱リファレンスアプリ
Email Sending: 公開ベータ版がリリース
Email Sendingは本日、プライベートベータからパブリックベータに移行します。ネイティブWorkers bindingを使用してWorkersから直接トランザクションメールを送信できるようになりました — APIキーやシークレット管理は不要です。
export default {
async fetch(request, env, ctx) {
await env.EMAIL.send({
to: "[email protected]",
from: "[email protected]",
subject: "Your order has shipped",
text: "Your order #1234 has shipped and is on its way."
});
return new Response("Email sent");
},
};
または、REST APIおよびTypeScript、Python、Go SDKを使用して、任意のプラットフォーム、任意の言語から送信します:
curl "https://api.cloudflare.com/client/v4/accounts/{account_id}/email-service/send" \
--header "Authorization: Bearer <API_TOKEN>" \
--header "Content-Type: application/json" \
--data '{
"to": "[email protected]",
"from": "[email protected]",
"subject": "Your order has shipped",
"text": "Your order #1234 has shipped and is on its way."
}'
配信可能性の確保
実際に受信箱に到達するメール送信は、通常、SPF、DKIM、DMARECレコードと格闘することを意味します。ドメインをEmail Serviceに追加すると、すべてが自動的に設定されます。メールは認証され、配信され、スパムとしてフラグされません。
Email ServiceはCloudflareのネットワーク上に構築されたグローバルサービスであるため、メールは世界中のどこでも低レイテンシで配信されます。
数年間無料で利用可能なEmail Routingと組み合わせることで、単一プラットフォーム内で完全な双方向メール通信が実現します。メールを受信し、Workerで処理し、返信する — すべてCloudflareを離れることなく。
Email Sendingの詳細については、Birthday Week発表を参照してください。
Agents SDK: エージェントはメールネイティブ
Cloudflare上でエージェントを構築するためのAgents SDKには、すでにインバウンドメールを受信および処理するための第一級のonEmailフックがあります。しかし、これまで、エージェントは同期的に返信するか、Cloudflareアカウントのメンバーにのみメールを送信できました。
Email Sendingにより、その制約は解除されます。
これはチャットボットとエージェントの違いです。メールエージェントはメッセージを受信し、プラットフォーム全体で作業を調整し、非同期に応答します。チャットボットはその場で応答するか、まったく応答しません。エージェントは考え、行動し、独自のタイムラインで通信します。
Email Sendingを使用すると、エージェントはメッセージを受信し、1時間データを処理し、3つの他のシステムをチェックしてから、完全な回答で返信できます。フォローアップをスケジュールできます。エッジケースを検出したときにエスカレートできます。独立して動作できます。
言い換えれば、質問に答えるだけでなく、実際に作業を行うことができます。
完全なパイプライン(受信、永続化、返信)を備えたサポートエージェントの例を以下に示します:
import { Agent, routeAgentEmail } from "agents";
import { createAddressBasedEmailResolver, type AgentEmail } from "agents/email";
import PostalMime from "postal-mime";
export class SupportAgent extends Agent {
async onEmail(email: AgentEmail) {
const raw = await email.getRaw();
const parsed = await PostalMime.parse(raw);
this.setState({
...this.state,
ticket: {
from: email.from,
subject: parsed.subject,
body: parsed.text,
messageId: parsed.messageId
},
});
await this.sendEmail({
binding: this.env.EMAIL,
fromName: "Support Agent",
from: "[email protected]",
to: this.state.ticket.from,
inReplyTo: this.state.ticket.messageId,
subject: `Re: ${this.state.ticket.subject}`,
text: `Thanks for reaching out. We received your message about "${this.state.ticket.subject}" and will follow up shortly.`
});
}
}
export default {
async email(message, env) {
await routeAgentEmail(message, env, {
resolver: createAddressBasedEmailResolver("SupportAgent"),
});
},
} satisfies ExportedHandler<Env>;
仕組みの詳細
各エージェントは単一ドメインから独自のアイデンティティを取得します。アドレスベースのリゾルバーは以下をルーティングします:
[email protected] → "support" エージェントインスタンス
[email protected] → "sales" インスタンス
- など
別々の受信箱をプロビジョニングする必要はありません — ルーティングはアドレスに組み込まれています。サブアドレッシング([email protected])を使用して、異なるエージェント名前空間とインスタンスにルーティングすることもできます。
状態はメール間で永続化されます。 エージェントはDurable Objectsによってサポートされているため、this.setState()を呼び出すことは、エージェントがセッション全体で会話履歴、連絡先情報、コンテキストを記憶することを意味します。受信箱はエージェントのメモリになり、別のデータベースやベクトルストアは必要ありません。
セキュアな返信ルーティングが組み込まれています。 エージェントがメールを送信して返信を期待する場合、HMAC-SHA256でルーティングヘッダーに署名して、返信が元のメッセージを送信した正確なエージェントインスタンスにルーティングされるようにできます。これにより、攻撃者がヘッダーを偽造して任意のエージェントインスタンスにメールをルーティングするのを防ぎます — ほとんどの「エージェント向けメール」ソリューションが対処していないセキュリティ上の懸念です。
これは、チーム全体がどこかで一から構築している完全なメールエージェントパイプラインです: メール受信、解析、分類、状態永続化、非同期ワークフロー開始、返信またはエスカレーション — すべてCloudflareのネットワーク上にグローバルにデプロイされた単一のAgentクラス内で。
エージェント向けメールツール: MCP server、Wrangler CLI、スキル
Email ServiceはCloudflare上で実行されるエージェント専用ではありません。エージェントはどこでも実行されます — Claude Code、Cursor、Copilotなどのコーディングエージェントがローカルまたはリモート環境で実行されるか、コンテナまたは外部クラウドで実行される本番エージェントかどうかに関わらず。
それらはすべてそれらの環境からメールを送信する必要があります。
Email Serviceをあらゆるエージェントがアクセスできるようにする3つの統合を提供しています。
Cloudflare MCP Server
Emailは現在、Cloudflare MCP serverを通じて利用可能です。これは、エージェントに全体Cloudflare APIへのアクセスを提供するCode Mode対応サーバーと同じです。このMCP serverを使用すると、エージェントはEmailエンドポイントを発見して呼び出し、メールを送信および設定できます。
簡単なプロンプトでメールを送信できます:
"Send me a notification email at [email protected] from my staging domain when the build completes"
Wrangler CLI
コンピューターまたはbashアクセス権を持つサンドボックスで実行されるエージェントの場合、Wrangler CLIはCode Modeブログ投稿で説明したMCPコンテキストウィンドウの問題を解決します — ツール定義は、エージェントが単一のメッセージを処理し始める前に、数万のトークンを消費できます。
Wranglerを使用すると、エージェントはほぼゼロのコンテキストオーバーヘッドで開始し、--helpコマンドを通じてオンデマンドで機能を発見します。
エージェントがWranglerを介してメールを送信する方法は以下の通りです:
wrangler email send \
--to "[email protected]" \
--from "[email protected]" \
--subject "Build completed" \
--text "The build passed. Deployed to staging."
Cloudflare MCPまたはWrangler CLIをエージェントに提供するかどうかに関わらず、エージェントはプロンプトだけであなたに代わってメールを送信できるようになります。
スキル
Cloudflare Email Serviceスキルも公開しています。これはエージェントに完全なガイダンスを提供します:
- Workers bindingの設定
- REST APIまたはSDK経由でのメール送信
- Email Routingの設定によるインバウンドメール処理
- Agents SDKでの構築
- Wrangler CLIまたはMCP経由でのメール管理
配信可能性のベストプラクティスと、スパムではなく受信箱に到達する優れたトランザクションメールの作成方法もカバーしています。
プロジェクトにドロップすると、コーディングエージェントはCloudflareで本番対応のメールを構築するために必要なすべてを備えています。
メールエージェント向けツールのオープンソース化
プライベートベータ中に、メールエージェントも実験しました。エージェントが何をしているかを確認するためにメールをレビューするために人間をループに保つことが多いことが明らかになりました。
それを行う最良の方法は、エージェント自動化が組み込まれた完全に機能するメールクライアントを持つことです。
そのため、Agentic Inbox を構築しました: 完全な会話スレッド、メールレンダリング、メールと添付ファイルの受信と保存、および自動返信を備えたリファレンスアプリケーション。
組み込みの専用MCP serverが含まれているため、外部エージェントは送信前にレビュー用にメールを下書きできます。
Agentic Inboxをオープンソース化しています。これは、Email Routingをインバウンド用に、Email Sendingをアウトバウンド用に、Workers AIを分類用に、R2を添付ファイル用に、Agents SDKをステートフルエージェントロジック用に使用して、完全なメールアプリケーションを構築する方法のリファレンスアプリケーションです。
本日デプロイして、ワンクリックで完全な受信箱、メールクライアント、メール用エージェントを取得できます。
メールエージェントツールが構成可能で再利用可能であることを望んでいます。すべてのチームが同じインバウンド-分類-返信パイプラインを再構築する代わりに、このリファレンスアプリケーションから始めてください。フォークして、拡張して、ワークフローに合わせた独自のメールエージェントの出発点として使用してください。
今すぐ試してみてください
メールは世界で最も重要なワークフローが存在する場所ですが、エージェントにとっては、到達するのが難しいチャネルであることが多くありました。
Email Sendingが公開ベータ版になったため、Cloudflare Email Serviceは双方向通信のための完全なプラットフォームになり、受信箱をエージェント向けの第一級インターフェースにします。
顧客の受信箱で顧客に会うサポートエージェントを構築しているか、チームをリアルタイムで更新し続けるバックグラウンドプロセスを構築しているかに関わらず、エージェントはグローバルスケールで通信するシームレスな方法を備えています。
受信箱はもはやサイロではありません。今、それはエージェントが役に立つことができるもう一つの場所です。
次のステップ
- Cloudflare DashboardでEmail Sendingを試す
- Email Serviceドキュメントを読む
- Agents SDK emailドキュメントに従う
- Email Service MCP serverとスキルをチェック
- オープンソースリファレンスアプリをデプロイ
- Cloudflare TVで視聴
Cloudflareの接続クラウドは、企業ネットワーク全体を保護し、顧客がインターネット規模のアプリケーションを効率的に構築するのを支援します。