---
title: "Cloudflare Email Service: review, setup & limitations · Undominated.ai"
canonical: https://undominated.ai/skills/cloudflare-email-service/
description: "Implements Cloudflare Email Sending and Email Routing: Workers send_email bindings, the REST API, inbound email() handlers, wrangler setup, and deliverability (SPF/DKIM/DMARC, bounces, suppression lists) — with the field-naming asymmetries between binding and REST spelled out."
---

# Cloudflare Email Service: review, setup & limitations · Undominated.ai

> Implements Cloudflare Email Sending and Email Routing: Workers send_email bindings, the REST API, inbound email() handlers, wrangler setup, and deliverability (SPF/DKIM/DMARC, bounces, suppression lists) — with the field-naming asymmetries between binding and REST spelled out.

[← Explore all skills](/skills/)

CLOUD DEVELOPMENT / Cloudflare

# Cloudflare Email Service

Implements Cloudflare Email Sending and Email Routing: Workers send_email bindings, the REST API, inbound email() handlers, wrangler setup, and deliverability (SPF/DKIM/DMARC, bounces, suppression lists) — with the field-naming asymmetries between binding and REST spelled out.

 [See setup guidance ↓](#setup)[Original source ↗](https://github.com/cloudflare/skills/tree/41e0d19858946d18af9ee2c2feebbe2e11d829ff/skills/cloudflare-email-service)

SOURCE REVIEW

 Reviewed 2026-10-15
 Evidence 7 linked sources
 Publisher Cloudflare
 Licence [Apache-2.0 ↗](https://github.com/cloudflare/skills/blob/41e0d19858946d18af9ee2c2feebbe2e11d829ff/LICENSE)
 Revision 41e0d1985894
 [Read what was—and wasn’t—checked ↓](#review)

“Implement or troubleshoot Cloudflare Email Sending and Email Routing integrations and their delivery configuration.”

 [Cloudflare · upstream description ↗](https://github.com/cloudflare/skills/blob/41e0d19858946d18af9ee2c2feebbe2e11d829ff/skills/cloudflare-email-service/SKILL.md) Our analysis follows below.

01 / THE REASONING

## Why this made the selection.

 - Takes a retrieval-over-pre-training stance with named retrieval sources, the right posture for a 2025-launched product whose API surface is still moving.
- The common-mistakes table captures field-level API asymmetries — REST uses address and reply_to where the Workers binding uses email and replyTo, and message.raw is a single-use stream — that no amount of general email knowledge would tell you.
- Scopes itself honestly: transactional email only, with marketing sends explicitly routed elsewhere, and prerequisites (onboarded domain, binding, postal-mime) checked before any code is written.

### A good fit for

 - Sending transactional email from a Cloudflare Worker via the send_email binding
- Receiving and processing inbound email with an email() handler, including forwarding and replying
- Diagnosing deliverability problems via SPF/DKIM/DMARC, bounce handling and suppression lists

### Weigh up before choosing

 - Cloudflare-platform-only: the binding, wrangler commands and REST endpoints are Cloudflare’s, not general SMTP or templating guidance.
- The skill defers to live docs for limits and pricing and says the skill may lag — correct, but it means answers need the retrieval step to be trustworthy.
- No HTML email templating guidance (MJML or otherwise); content guidance is limited to including both text and html parts.

02 / THE REVIEW RECORD

## What we actually inspected.

Source review has boundaries. A clear record is more useful than a “safe” badge.

### Material inspected

 - skills/cloudflare-email-service/SKILL.md
- references/deliverability.md
- references directory listing (5 documents)
- LICENSE
- README.md install channels

### Our findings

 - The five referenced documents exist as claimed (sending, rest-api, routing, cli-and-mcp, deliverability) and the deliverability reference matches the SKILL.md summary of what Cloudflare auto-configures.
- The repo README documents two install paths — a native plugin bundling the Cloudflare MCP server, and skills-only installation for agents that support the Agent Skills standard.
- The skill instructs trusting original sources over itself on any discrepancy, and lists the exact retrieval URLs (docs index.md, REST API spec, workers-types) an agent should prefer.

### Not established by this review

 - No email was sent or received through Cloudflare; no wrangler email command was run.
- The REST API field names were read from the skill, not verified against the live OpenAPI spec.
- Not executed: it was not installed or run.

The review applies to the material and revision named here. A newer upstream release can change its behavior.

03 / PUT IT TO WORK

## Add a skill to your workflow.

[Upstream setup instructions ↗](https://github.com/vercel-labs/skills/blob/7407f3893ad4dceab546ac002c3ef806e4000c73/README.md)

DOCUMENTED COMMAND

 npx skills add cloudflare/skills/skills/cloudflare-email-service --skill cloudflare-email-service Copy command ↗

Run in your terminal to choose your AI tools, project or global scope, and installation method. This short command follows the current upstream version; the review covers the revision shown above.

 Optional: install the reviewed revision

Keeps the original source and installer version where recorded, while leaving your AI tools and installation scope for you to choose.

 npx skills add https://github.com/cloudflare/skills/tree/41e0d19858946d18af9ee2c2feebbe2e11d829ff/skills/cloudflare-email-service --skill cloudflare-email-service Copy reviewed-revision command ↗ - Install the skill, or add the Cloudflare native plugin if your client supports it and you want the bundled MCP server too.
- Onboard a domain (wrangler email sending enable) and configure the send_email binding before writing sending code.

### Before you start

 - Node.js/npm for the installer
- An agent that supports the Agent Skills format
- A Cloudflare account with a domain you control; wrangler CLI for setup

### Compatibility

Agent Skills-compatible coding agents · Cloudflare account with a domain onboarded to Email Sending or Email Routing · Wrangler CLI

### Runs wrangler against your Cloudflare account; sends and receives real email

 - Run wrangler email and deploy commands with your Cloudflare credentials
- Read and write wrangler configuration (send_email bindings)
- Send real transactional email from onboarded domains — bounces affect sender reputation

### Cost model

Apache-2.0 instruction package. Cloudflare Email Sending and Routing have their own pricing and limits — check current terms before production use.

04 / FOLLOW THE EVIDENCE

## The source trail.

Our notes are separate from the original resource. Check upstream before adopting a new version.

 - [Skill definition at reviewed revision ↗](https://github.com/cloudflare/skills/blob/41e0d19858946d18af9ee2c2feebbe2e11d829ff/skills/cloudflare-email-service/SKILL.md) Checked 2026-10-07 https://github.com/cloudflare/skills/blob/41e0d19858946d18af9ee2c2feebbe2e11d829ff/skills/cloudflare-email-service/SKILL.md Supports: summary, upstreamDescription, whySelected, bestFor, limitations, review, access
- [Reviewed reference: deliverability.md ↗](https://github.com/cloudflare/skills/blob/41e0d19858946d18af9ee2c2feebbe2e11d829ff/skills/cloudflare-email-service/references/deliverability.md) Checked 2026-10-07 https://github.com/cloudflare/skills/blob/41e0d19858946d18af9ee2c2feebbe2e11d829ff/skills/cloudflare-email-service/references/deliverability.md Supports: review, whySelected, bestFor
- [References directory listing at reviewed revision (5 documents) ↗](https://github.com/cloudflare/skills/tree/41e0d19858946d18af9ee2c2feebbe2e11d829ff/skills/cloudflare-email-service/references) Checked 2026-10-07 https://github.com/cloudflare/skills/tree/41e0d19858946d18af9ee2c2feebbe2e11d829ff/skills/cloudflare-email-service/references Supports: review, install
- [Upstream license ↗](https://github.com/cloudflare/skills/blob/41e0d19858946d18af9ee2c2feebbe2e11d829ff/LICENSE) Checked 2026-10-07 https://github.com/cloudflare/skills/blob/41e0d19858946d18af9ee2c2feebbe2e11d829ff/LICENSE Supports: license
- [Publisher README with native plugin and skills-only install paths ↗](https://github.com/cloudflare/skills/blob/41e0d19858946d18af9ee2c2feebbe2e11d829ff/README.md) Checked 2026-10-07 https://github.com/cloudflare/skills/blob/41e0d19858946d18af9ee2c2feebbe2e11d829ff/README.md Supports: install, compatibility
- [Skills installer source formats and selective installation ↗](https://github.com/vercel-labs/skills/blob/7407f3893ad4dceab546ac002c3ef806e4000c73/README.md) Checked 2026-10-07 https://github.com/vercel-labs/skills/blob/7407f3893ad4dceab546ac002c3ef806e4000c73/README.md Supports: install
- [2026-10-15 W40 source re-review at the existing pin ↗](https://raw.githubusercontent.com/cloudflare/skills/41e0d19858946d18af9ee2c2feebbe2e11d829ff/skills/cloudflare-email-service/SKILL.md) Checked 2026-10-15 https://raw.githubusercontent.com/cloudflare/skills/41e0d19858946d18af9ee2c2feebbe2e11d829ff/skills/cloudflare-email-service/SKILL.md Supports: upstreamDescription, review.notTested, review.reviewedAt

KEEP COMPARING

## Other approaches to consider.

Related by category or shared topics. These are alternatives to inspect, not a measured quality order.

 [### Next.js on Cloudflare ↗ Builds, migrates and deploys Next.js apps on Cloudflare Workers with vinext, holding the vinext-over-OpenNext default for new projects while preserving existing OpenNext setups and delegating setup to vinext's upstream skills.](/skills/cloudflare-nextjs-on-cloudflare/)[### Azure AI Search for Python ↗ Create vector-capable indexes and combine keyword, vector and semantic queries.](/skills/microsoft-azure-search-documents-py/)[### Azure Blob Storage for Python ↗ Upload, stream and manage blobs using explicit overwrite, metadata and delegated-access choices.](/skills/microsoft-azure-storage-blob-py/)

 [AI Tools ↗](/tools/)[Skills ↗](/skills/)[Agents ↗](/agents/)[MCP Servers ↗](/mcp-servers/)[Workflows ↗](/workflows/)

## Continue your investigation

 - [Choose a toolkit](/tools/)
- [Inspect execution hosts](/agents/)
- [Check tool access](/mcp-servers/)
- [Check project dependencies](/check-repo/)
