메뉴
HN
Hacker News 44일 전

클라우드플레어 이메일 서비스 퍼블릭 베타 오픈

IMP
8/10
핵심 요약

클라우드플레어가 자사 이메일 서비스의 퍼블릭 베타를 공식 출시했습니다. 이제 개발자들은 별도의 API 키나 복잡한 설정 없이 Workers 환경에서 트랜잭션 이메일을 원활하게 발송할 수 있습니다. 특히 AI 에이전트가 이메일을 주요 인터페이스로 활용할 수 있도록 돕는 다양한 툴킷이 함께 제공되어, 에이전트 개발 및 자동화 파이프라인 구축에 매우 유용한 infrastructure(인프라)로 평가받습니다.

번역된 본문

클라우드플레어 이메일 서비스: 이제 퍼블릭 베타에서 이용 가능합니다. 당신의 에이전트를 준비하세요 게시일: 2026-04-16 | 작성자: Thomas Gauvin, Eric Falcão | 읽는 데 6분

이메일은 세계에서 가장 접근성이 높은 인터페이스입니다. 어디에나 존재하죠. 맞춤형 채팅 애플리케이션이나 각 채널별 전용 SDK가 필요하지 않습니다. 모든 사람이 이미 이메일 주소를 가지고 있으며, 이는 곧 모든 사람이 당신의 애플리케이션이나 에이전트와 상호작용할 수 있음을 의미합니다. 그리고 당신의 에이전트 역시 누구와도 소통할 수 있습니다.

애플리케이션을 개발 중이라면 회원가입, 알림, 청구서 발송 등에 이미 이메일을 활용하고 있을 것입니다. 점차 이 채널이 필요한 것은 애플리케이션 로직만이 아닙니다. 에이전트에게도 필수적이게 되었습니다.

프라이빗 베타 기간 동안, 우리는 정확히 이러한 목적으로 개발을 진행 중인 개발자들과 대화를 나누었습니다. 고객 지원 에이전트, 청구서 처리 파이프라인, 계정 인증 흐름, 멀티 에이전트 워크플로 등이 모두 이메일을 기반으로 구축되고 있었습니다.

패턴은 명확합니다. 이메일은 에이전트의 핵심 인터페이스가 되고 있으며, 개발자들은 이를 위해 특별히 설계된 인프라가 필요합니다. 클라우드플레어 이메일 서비스(Cloudflare Email Service)가 바로 그 역할을 합니다.

Email Routing을 사용하면 애플리케이션이나 에이전트에서 이메일을 수신할 수 있습니다. Email Sending을 사용하면 이메일에 답장하거나, 에이전트의 작업이 완료되었을 때 사용자에게 아웃바운드 알림을 보낼 수 있습니다. 그리고 개발자 플랫폼의 나머지 기능과 결합하여, 전체 이메일 클라이언트와 에이전트 SDK를 구축할 수 있으며, onEmail 훅(hook)을 기본 기능으로 활용할 수 있습니다.

오늘, '에이전트 주간(Agents Week)'의 일환으로 클라우드플레어 이메일 서비스가 퍼블릭 베타에 진입하여 모든 애플리케이션과 에이전트가 이메일을 발송할 수 있게 되었습니다. 또한 우리는 이메일 네이티브(email-native) 에이전트 구축을 위한 툴킷을 완성했습니다:

  • Workers 및 에이전트 SDK에서 사용할 수 있는 Email Sending 바인딩
  • 새로운 Email MCP 서버
  • Wrangler CLI 이메일 명령어
  • 코딩 에이전트를 위한 스킬(Skills)
  • 오픈소스 에이전트 수신함 참조 앱

Email Sending: 이제 퍼블릭 베타로 전환 오늘 Email Sending이 프라이빗 베타에서 퍼블릭 베타로 승격되었습니다. 이제 네이티브 Workers 바인딩을 통해 Workers에서 직접 트랜잭션 이메일을 보낼 수 있습니다. API 키나 시크릿 관리가 필요 없습니다.

(코드 예시 생략)

또는 REST API 및 TypeScript, Python, Go SDK를 사용하여 모든 플랫폼과 언어에서 이메일을 보낼 수 있습니다.

(코드 예시 생략)

실제로 받은편지함에 도달하는 이메일을 발송하려면 일반적으로 SPF, DKIM, DMARC 레코드를 다루어야 합니다. Email Service에 도메인을 추가하면, 우리가 이 모든 것을 자동으로 구성합니다. 이메일은 스팸으로 분류되지 않고 인증 및 발송 처리됩니다. 또한 클라우드플레어 네트워크 기반의 글로벌 서비스이므로 전 세계 어디서나 낮은 지연 시간으로 이메일이 발송됩니다.

수년 동안 무료로 제공되어 온 Email Routing과 결합하면, 이제 단일 플랫폼 내에서 완벽한 양방향 이메일 환경을 갖추게 됩니다. 클라우드플레어를 벗어나지 않고도 이메일을 수신하고, Worker에서 처리한 뒤 답장할 수 있습니다.

Email Sending에 대한 자세한 내용은 Birthday Week 발표 글을 참조하십시오. 이 글의 나머지 부분에서는 이메일 서비스가 에이전트를 위해 어떤 가능성을 열어주는지 설명합니다.

에이전트 SDK: 당신의 에이전트는 이메일 네이티브가 됩니다 클라우드플레어에서 에이전트를 구축하기 위한 에이전트 SDK는 인바운드 이메일을 수신하고 처리하기 위한 최고 수준의 onEmail 훅을 이미 갖추고 있었습니다. 하지만 지금까지는 에이전트가 동기식으로만 응답하거나 클라우드플레어 계정의 구성원에게만 이메일을 보낼 수 있었습니다. Email Sending 도입으로 이 제약이 사라졌습니다.

이것이 챗봇과 에이전트의 차이입니다. 이메일 에이전트는 메시지를 수신하고 플랫폼 전반에 걸쳐 작업을 조율한 뒤 비동기적으로 응답합니다. 반면 챗봇은 즉각적으로 응답하거나 전혀 응답하지 않습니다. 에이전트는...

원문 보기
원문 보기 (영어)
Cloudflare Email Service: now in public beta. Ready for your agents 2026-04-16 Thomas Gauvin Eric Falcão 6 min read Email is the most accessible interface in the world. It is ubiquitous. There’s no need for a custom chat application, no custom SDK for each channel. Everyone already has an email address, which means everyone can already interact with your application or agent. And your agent can interact with anyone. If you are building an application, you already rely on email for signups, notifications, and invoices. Increasingly, it is not just your application logic that needs this channel. Your agents do, too. During our private beta, we talked to developers who are building exactly this: customer support agents, invoice processing pipelines, account verification flows, multi-agent workflows. All built on top of email. The pattern is clear: email is becoming a core interface for agents, and developers need infrastructure purpose-built for it. Cloudflare Email Service is that piece. With Email Routing , you can receive email to your application or agent. With Email Sending, you can reply to emails or send outbounds to notify your users when your agents are done doing work. And with the rest of the developer platform, you can build a full email client and Agents SDK onEmail hook as native functionality. Today, as part of Agents Week, Cloudflare Email Service is entering public beta , allowing any application and any agent to send emails. We are also completing the toolkit for building email-native agents: Email Sending binding, available from your Workers and the Agents SDK A new Email MCP server Wrangler CLI email commands Skills for coding agents An open-source agentic inbox reference app Email Sending: now in public beta Email Sending graduates from private beta to public beta today. You can now send transactional emails directly from Workers with a native Workers binding — no API keys, no secrets management. export default { async fetch(request, env, ctx) { await env.EMAIL.send({ to: " [email&#160;protected] ", from: " [email&#160;protected] ", subject: "Your order has shipped", text: "Your order #1234 has shipped and is on its way." }); return new Response("Email sent"); }, }; Or send from any platform, any language, using the REST API and our TypeScript, Python, and Go SDKs: curl "https://api.cloudflare.com/client/v4/accounts/{account_id}/email-service/send" \ --header "Authorization: Bearer <API_TOKEN>" \ --header "Content-Type: application/json" \ --data &#039;{ "to": " [email&#160;protected] ", "from": " [email&#160;protected] ", "subject": "Your order has shipped", "text": "Your order #1234 has shipped and is on its way." }&#039; Sending email that actually reaches inboxes usually means wrestling with SPF, DKIM, and DMARC records. When you add your domain to Email Service, we configure all of it automatically. Your emails are authenticated and delivered, not flagged as spam. And because Email Service is a global service built on Cloudflare's network, your emails are delivered with low latency anywhere in the world. Combined with Email Routing , which has been free and available for years, you now have complete bidirectional email within a single platform. Receive an email, process it in a Worker, and reply, all without leaving Cloudflare. For the full deep dive on Email Sending, refer to our Birthday Week announcement . The rest of this post describes what Email Service unlocks for agents. Agents SDK: your agent is email-native The Agents SDK for building agents on Cloudflare already has a first-class onEmail hook for receiving and processing inbound email. But until now, your agent could only reply synchronously, or send emails to members of your Cloudflare account. With Email Sending, that constraint is gone. This is the difference between a chatbot and an agent. Email agents receive a message, orchestrate work across the platform, and respond asynchronously. A chatbot responds in the moment or not at all. An agent thinks, acts, and communicates on its own timeline. With Email Sending, your agent can receive a message, spend an hour processing data, check three other systems, and then reply with a complete answer. It can schedule follow-ups. It can escalate when it detects an edge case. It can operate independently. In other words: it can actually do work, not just answer questions. Here's what a support agent looks like with the full pipeline — receive, persist, and reply: 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); // Persist in agent state this.setState({ ...this.state, ticket: { from: email.from, subject: parsed.subject, body: parsed.text, messageId: parsed.messageId }, }); // Kick off long running background agent task // Or place a message on a Queue to be handled by another Worker // Reply here or in other Worker handler, like a Queue handler await this.sendEmail({ binding: this.env.EMAIL, fromName: "Support Agent", from: " [email&#160;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>; If you're new to the Agents SDK's email capabilities, here's what's happening under the hood. Each agent gets its own identity from a single domain. The address-based resolver routes [email&#160;protected] to a "support" agent instance, [email&#160;protected] to a "sales" instance, and so on. You don't need to provision separate inboxes — the routing is built into the address. You can even use sub-addressing ( [email&#160;protected] ) to route to different agent namespaces and instances. State persists across emails. Because agents are backed by Durable Objects, calling this.setState() means your agent remembers conversation history, contact information, and context across sessions. The inbox becomes the agent's memory, without needing a separate database or vector store. Secure reply routing is built in. When your agent sends an email and expects a reply, you can sign the routing headers with HMAC-SHA256 so that replies route back to the exact agent instance that sent the original message. This prevents attackers from forging headers to route emails to arbitrary agent instances — a security concern that most "email for agents" solutions haven't addressed. This is the complete email agent pipeline that teams are building from scratch elsewhere: receive email, parse it, classify it, persist state, kick off async workflows, reply or escalate — all within a single Agent class, deployed globally on Cloudflare's network. Email tooling for your agents: MCP server, Wrangler CLI, and skills Email Service isn't only for agents running on Cloudflare. Agents run everywhere, whether it’s coding agents like Claude Code, Cursor, or Copilot running locally or in remote environments, or production agents running in containers or external clouds. They all need to send email from those environments. We're shipping three integrations that make Email Service accessible to any agent, regardless of where it runs. Email is now available through the Cloudflare MCP server , the same Code Mode -powered server that gives agents access to the entire Cloudflare API. With this MCP server, your agent can discover and call the Email endpoints to send and configure emails. You can send an email with a simple prompt: "Send me a notification email at [email&#160;protected] from my staging domain when the build completes" For