{
  "data": {
    "a": {
      "slug": "cloudflare-email-service",
      "name": "Cloudflare Email Service",
      "vendor": "Cloudflare",
      "vendorUrl": "https://developers.cloudflare.com/email-service/",
      "kind": "http-api",
      "category": "email",
      "summary": "Cloudflare Email Service sends transactional email through a REST API, a Workers binding or SMTP, and routes inbound mail to Workers or verified addresses. Email Sending is in public beta and needs the Workers Paid plan for arbitrary recipients.",
      "url": "https://www.anchorterminal.com/tools/cloudflare-email-service",
      "markdownUrl": "https://www.anchorterminal.com/tools/cloudflare-email-service.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/cloudflare-email-service.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/cloudflare-email-service.json",
      "license": "Proprietary service under Cloudflare's Self-Serve Subscription Agreement and Developer Platform service-specific terms. The official `cloudflare` SDK on npm is Apache-2.0",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://api.cloudflare.com/client/v4",
      "packages": [
        {
          "registry": "npm",
          "name": "cloudflare"
        },
        {
          "registry": "pypi",
          "name": "cloudflare"
        }
      ],
      "auth": "api-key",
      "authNotes": "A Cloudflare API token as a Bearer header, created by the account owner in the dashboard. The SMTP guide names the permission Email Sending: Edit, and the OpenAPI file lists `com.cloudflare.api.account.email.sending.create` for sends and `.read` for limits and reputation. Tokens can carry an expiry and an IP address filter. The same token is the SMTP password. The OpenAPI file also accepts the legacy global API key. Access is self-serve, but the sending domain must be on Cloudflare DNS and new accounts start with a daily quota that Cloudflare raises over time.",
      "pricing": "usage",
      "pricingNotes": "$0.35 per 1,000 outbound emails after 3,000 included a month, on the Workers Paid plan (minimum $5 a month). Sending to arbitrary recipients is not available on Workers Free. Sends to the account's own verified destination addresses are free on every plan, and inbound Email Routing is free and unmetered. Hard bounces count towards the quota. Sends rejected at the API boundary or by the suppression list don't (https://developers.cloudflare.com/email-service/platform/pricing/).",
      "priceSummary": "$5 / mo",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the Email Service docs, the pricing page or the Email Sending paths of the OpenAPI file (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": 3766696,
        "pypiWeekly": 363923,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://developers.cloudflare.com/email-service/",
      "llmsTxt": "https://developers.cloudflare.com/email-service/llms.txt",
      "openapi": "https://raw.githubusercontent.com/cloudflare/api-schemas/main/openapi.json",
      "capabilities": [
        "email.send",
        "email.inbound",
        "email.domains",
        "email.analytics"
      ],
      "tags": [
        "hosted",
        "usage",
        "beta",
        "openapi",
        "llms-txt",
        "smtp",
        "typescript",
        "python",
        "go",
        "graphql",
        "status-page",
        "bug-bounty"
      ],
      "lastRelease": "2026-09-25",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 67.3,
        "grade": "B",
        "agentReady": false,
        "rank": 212,
        "ranked": true,
        "rankOf": 722,
        "categoryRank": 4,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 72,
          "maintenance": 81,
          "payments": 30,
          "reliability": 51,
          "schema": 89,
          "security": 77,
          "transparency": 76
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": 0,
        "verdict": "Cloudflare API tokens can be limited to sending, given an expiry and restricted by IP address, and a public OpenAPI file covers 29 Email Sending operations. Sending is still in beta, with no SLA, no idempotency key and no published daily quota, and it needs a domain on Cloudflare DNS and the Workers Paid plan.",
        "bestFor": "Teams already on Cloudflare DNS and Workers that want transactional sending and inbound handling in one account at a low unit price.",
        "strengths": [
          "Public OpenAPI 3.0.3 file with 29 Email Sending and 46 Email Routing operations, plus llms.txt and a Markdown copy of every docs page",
          "$0.35 per 1,000 emails after 3,000 included a month on Workers Paid. Sends rejected at the API boundary or blocked by the suppression list don't count",
          "API tokens carry separate send and read permissions, an optional expiry and an IP address filter, and Workers bindings can be limited to named senders and recipients",
          "The Cloudflare API returns 429 with `retry-after` and `Ratelimit` headers, and the send endpoint has its own throttled error code 10004",
          "Email Sending and Email Routing are separate components on cloudflarestatus.com, and the changelog has four dated entries since 15 July 2026"
        ],
        "weaknesses": [
          "Email Sending has been in public beta since 16 April 2026. Cloudflare's terms let it remove a beta service at any time, and no SLA was found",
          "No idempotency key on `/email/sending/send`, in the docs or the OpenAPI file",
          "The daily sending quota for new accounts is described as conservative with no number. It can be read per account from `/email/sending/limits`",
          "The sending domain must use Cloudflare DNS, and sending to arbitrary recipients needs the Workers Paid plan at $5 a month",
          "A token with the send permission can send from every onboarded domain on the account. No per-domain token scope was found",
          "No template storage, and the terms and FAQ allow transactional email only"
        ],
        "agentNotes": [
          "POST to `https://api.cloudflare.com/client/v4/accounts/{account_id}/email/sending/send` with `Authorization: Bearer \u003ctoken\u003e`. The body needs `to`, `from`, `subject` and one of `html` or `text`",
          "Don't retry a timed-out send blindly. There is no idempotency key, so look for the message in the `emailSendingAdaptive` GraphQL dataset first",
          "On 429 (code 10004) wait for the `retry-after` header. On 409 `sending_not_ready` the domain setup is unfinished and nothing was sent",
          "Read `result.delivered`, `result.queued` and `result.permanent_bounces` in the response. A 200 does not mean every recipient was accepted",
          "Keep to 50 recipients across to, cc and bcc, and 5 MiB per message including attachments",
          "For SMTP use `smtp.mx.cloudflare.net` on port 465 with implicit TLS, username `api_token` and the API token as password. Port 587 is not supported",
          "By default one suppressed recipient fails the whole send. Turn on Drop suppressed recipients for the domain to send to the rest"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 67.3
          }
        ],
        "editorialScores": {
          "ergonomics": 72,
          "maintenance": 81,
          "payments": 30,
          "reliability": 51,
          "schema": 89,
          "security": 77,
          "transparency": 57
        },
        "provenanceScore": 95
      },
      "connect": {
        "http": "curl \"https://api.cloudflare.com/client/v4/accounts/{account_id}/email/sending/send\" \\\n  --header \"Authorization: Bearer \u003cAPI_TOKEN\u003e\" \\\n  --header \"Content-Type: application/json\" \\\n  --data '{\"to\":\"recipient@example.com\",\"from\":\"welcome@yourdomain.com\",\"subject\":\"Welcome to our service!\",\"html\":\"\u003ch1\u003eWelcome!\u003c/h1\u003e\u003cp\u003eThanks for signing up.\u003c/p\u003e\",\"text\":\"Welcome! Thanks for signing up.\"}'"
      },
      "letme": {
        "capability": "https://letme.dev/email.send",
        "tool": "https://letme.dev/cloudflare-email-service"
      },
      "sameCompany": [
        "cloudflare-sandbox-sdk",
        "cloudflare-web-search",
        "cloudflare-mcp",
        "cloudflare-r2",
        "cloudflare-clef"
      ],
      "area": "communication",
      "unitPrices": [
        {
          "item": "Outbound email",
          "unit": "1k-emails",
          "usd": 0.35,
          "note": "After 3,000 included a month, Workers Paid plan only. Sends to verified destination addresses are free"
        },
        {
          "item": "Workers Paid plan",
          "unit": "month",
          "usd": 5,
          "note": "Minimum monthly charge for the plan that Email Sending to arbitrary recipients needs"
        }
      ],
      "provenance": {
        "legalEntity": "Cloudflare, Inc.",
        "domain": "cloudflare.com",
        "domainRegistered": "2009-02-17",
        "endpointOnVendorDomain": true,
        "terms": "https://www.cloudflare.com/terms/",
        "privacy": "https://www.cloudflare.com/privacypolicy/",
        "statusPage": "https://www.cloudflarestatus.com",
        "changelog": "https://developers.cloudflare.com/changelog/product/email-service/",
        "securityTxt": "valid",
        "checked": "2026-10-08",
        "notes": [
          "Terms are the Self-Serve Subscription Agreement, last updated 12 September 2025, which names Cloudflare, Inc. at 101 Townsend St, San Francisco. Its section 5 covers beta services.",
          "The Developer Platform service-specific terms (https://www.cloudflare.com/service-specific-terms-developer-platform/), last updated 28 September 2026, have their own sections for Cloudflare Email Service and Email Routing and supplement the agreement.",
          "The privacy policy is effective from 4 November 2025 and makes Cloudflare a data processor for customer content that crosses its network. A customer DPA is at https://www.cloudflare.com/cloudflare-customer-dpa/.",
          "www.cloudflare.com/.well-known/security.txt, read on 8 October 2026, names HackerOne and a disclosure policy and has no Expires field. It is recorded as valid to match the other Cloudflare listings.",
          "The REST endpoint is on api.cloudflare.com. The SMTP endpoint is on smtp.mx.cloudflare.net, a different registered domain.",
          "The status page lists Email Sending and Email Routing as separate components, both operational on 8 October 2026.",
          "RDAP for cloudflare.com gives a registration date of 2009-02-17."
        ],
        "score": 95
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/cloudflare-email-service.json",
      "live": {
        "slug": "cloudflare-email-service",
        "probe": {
          "target": "https://api.cloudflare.com/client/v4",
          "method": "get",
          "lastAt": "2026-10-08T21:12:07.608903417Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 38,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 38,
          "p95ms24h": 97,
          "samples24h": 21,
          "samples30d": 21,
          "days": [
            {
              "date": "2026-10-08",
              "probes": 21,
              "ok": 21
            }
          ]
        },
        "vendorStatus": {
          "page": "https://www.cloudflarestatus.com",
          "indicator": "major",
          "summary": "Partial System Outage",
          "checkedAt": "2026-10-08T21:05:54.426735933Z"
        },
        "updatedAt": "2026-10-08T21:12:07.608903417Z"
      }
    },
    "answer": "Cloudflare Email Service scores 67.3 (B) on agent readiness against Mailgun API + MCP's 66.2 (B), and leads in 4 of 7 scored categories. Mailgun API + MCP leads on reliability, payments \u0026 pricing and maintenance \u0026 community.",
    "b": {
      "slug": "mailgun",
      "name": "Mailgun API + MCP",
      "vendor": "Mailgun (Sinch)",
      "vendorUrl": "https://www.mailgun.com",
      "kind": "http-api",
      "category": "email",
      "summary": "Email sending API with inbound routes, a Forwards API, templates, mailing lists, suppressions and address validation, in US and EU regions.",
      "url": "https://www.anchorterminal.com/tools/mailgun",
      "markdownUrl": "https://www.anchorterminal.com/tools/mailgun.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/mailgun.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/mailgun.json",
      "repo": "https://github.com/mailgun/mailgun-mcp-server",
      "license": "Apache-2.0",
      "transports": [
        "http",
        "stdio"
      ],
      "remoteUrl": "https://api.mailgun.net/v3",
      "packages": [
        {
          "registry": "npm",
          "name": "mailgun.js"
        },
        {
          "registry": "pypi",
          "name": "mailgun"
        },
        {
          "registry": "npm",
          "name": "@mailgun/mcp-server"
        }
      ],
      "auth": "api-key",
      "authNotes": "HTTP Basic auth with the username `api` and the API key as password. Role-based keys limit what each key can do. EU accounts use api.eu.mailgun.net. The MCP server reads `MAILGUN_API_KEY` and `MAILGUN_API_REGION` from its environment.",
      "pricing": "freemium",
      "pricingNotes": "Free plan with 100 emails a day, 1 custom domain, 1 inbound route and 1 day of logs. Basic $15 a month for 10,000 emails, overage $1.80 per 1,000. Foundation $35 for 50,000 (overage $1.30, first month free). Scale $90 for 100,000 (overage $1.10 falling to $0.40 at 2.5 million), with a dedicated IP and 5,000 validations. Validations from $1.20 per 100 (https://www.mailgun.com/pricing/).",
      "priceSummary": "$15 / mo",
      "where": "both",
      "x402": {
        "level": "no",
        "evidence": "No x402 support in docs, pricing or MCP README (checked 2026-09-30).",
        "endpoints": []
      },
      "toolCount": 74,
      "popularity": {
        "githubStars": 62,
        "npmWeekly": 1321769,
        "pypiWeekly": 61238,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://documentation.mailgun.com",
      "llmsTxt": "https://documentation.mailgun.com/llms.txt",
      "openapi": "https://documentation.mailgun.com/_bundle/docs/mailgun/api-reference/send/mailgun.yaml",
      "capabilities": [
        "email.send",
        "email.inbound",
        "email.templates",
        "email.domains",
        "email.analytics"
      ],
      "tags": [
        "hosted",
        "freemium",
        "mcp",
        "llms-txt",
        "openapi",
        "typescript",
        "python",
        "webhooks"
      ],
      "lastRelease": "2026-09-21",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 66.2,
        "grade": "B",
        "agentReady": false,
        "rank": 242,
        "ranked": true,
        "rankOf": 722,
        "categoryRank": 7,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 60,
          "maintenance": 87,
          "payments": 40,
          "reliability": 57,
          "schema": 83,
          "security": 74,
          "transparency": 69
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-01"
        },
        "negative": 0,
        "verdict": "Key roles (Admin, read-only Analyst, Developer, Support), Domain Sending Keys and IP allowlisting. 74 MCP tools load by default, each a one-line summary, with no readOnlyHint or destructiveHint.",
        "bestFor": "Teams that want inbound routing, validation and per-key roles in one account, in US or EU regions.",
        "strengths": [
          "Key roles (Admin, read-only Analyst, Developer, Support), Domain Sending Keys and IP allowlisting",
          "OpenAPI 3.1 specs for `send`, `validate`, `optimize` and `inspect`, plus llms.txt",
          "Inbound routes and a Forwards API (May 2026) for incoming mail",
          "SOC 2 Type II and ISO 27001, with a third-party bug bounty",
          "Weekly release notes through September 2026 and MCP CI on Node 20, 22 and 24"
        ],
        "weaknesses": [
          "74 MCP tools load by default, each a one-line summary, with no readOnlyHint or destructiveHint",
          "12 status incidents since 10 July, including 93 minutes of US validation API errors",
          "No general API rate limit published and no idempotency key for sends",
          "Free plan keeps logs for 1 day and allows 1 inbound route",
          "No security.txt"
        ],
        "agentNotes": [
          "Give an agent that only sends a Domain Sending Key, which can only POST /messages for one domain",
          "Start the MCP with `--tags validate,inspect` when you don't need the 70 send-tagged tools",
          "Set `MAILGUN_API_REGION=eu` for EU accounts, which live on api.eu.mailgun.net",
          "Add `o:testmode=yes` to check a send without delivering it",
          "Verify a custom domain first. The sandbox domain reaches only 5 authorised recipients"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 3,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 66.2
          }
        ],
        "editorialScores": {
          "ergonomics": 60,
          "maintenance": 87,
          "payments": 40,
          "reliability": 57,
          "schema": 83,
          "security": 74,
          "transparency": 64
        },
        "provenanceScore": 73
      },
      "connect": {
        "http": "curl -s --user \"api:$MAILGUN_API_KEY\" \"https://api.mailgun.net/v3/$MAILGUN_DOMAIN/messages\" \\\n  -F from=\"Test \u003cpostmaster@$MAILGUN_DOMAIN\u003e\" -F to=you@example.com \\\n  -F subject=\"Hello\" -F text=\"Testing Mailgun\"",
        "claudeCode": "claude mcp add mailgun -e MAILGUN_API_KEY=$MAILGUN_API_KEY -- npx -y @mailgun/mcp-server",
        "config": {
          "mcpServers": {
            "mailgun": {
              "args": [
                "-y",
                "@mailgun/mcp-server"
              ],
              "command": "npx",
              "env": {
                "MAILGUN_API_KEY": "${MAILGUN_API_KEY}",
                "MAILGUN_API_REGION": "us"
              }
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/email.send",
        "tool": "https://letme.dev/mailgun"
      },
      "area": "communication",
      "unitPrices": [
        {
          "item": "Basic",
          "unit": "month",
          "usd": 15,
          "note": "10,000 emails"
        },
        {
          "item": "Foundation",
          "unit": "month",
          "usd": 35,
          "note": "50,000 emails"
        },
        {
          "item": "Scale",
          "unit": "month",
          "usd": 90,
          "note": "100,000 emails, 1 dedicated IP"
        },
        {
          "item": "Overage on Basic",
          "unit": "1k-emails",
          "usd": 1.8
        },
        {
          "item": "Overage on Foundation",
          "unit": "1k-emails",
          "usd": 1.3
        },
        {
          "item": "Overage on Scale",
          "unit": "1k-emails",
          "usd": 1.1,
          "note": "falls to $0.40 at 2.5 million"
        }
      ],
      "provenance": {
        "legalEntity": "Mailgun Technologies, Inc.",
        "domain": "mailgun.com",
        "domainRegistered": "2003-12-20",
        "domainNote": "mailgun.com was registered in 2003, years before Mailgun launched in 2010.",
        "endpointOnVendorDomain": false,
        "terms": "https://www.mailgun.com/legal/terms/",
        "privacy": "https://www.mailgun.com/legal/privacy-policy/",
        "statusPage": "https://status.mailgun.com",
        "changelog": "https://documentation.mailgun.com/docs/mailgun/release/release-notes",
        "securityTxt": "none",
        "checked": "2026-09-30",
        "notes": [
          "The API is served from mailgun.net, not mailgun.com.",
          "The terms name Sinch Email and the entity on the service order rather than a single company."
        ],
        "score": 73
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/mailgun.json",
      "live": {
        "slug": "mailgun",
        "probe": {
          "target": "https://api.mailgun.net/v3",
          "method": "get",
          "lastAt": "2026-10-08T21:12:14.675248753Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 272,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 431,
          "p95ms24h": 529,
          "samples24h": 271,
          "samples30d": 2157,
          "days": [
            {
              "date": "2026-09-30",
              "probes": 35,
              "ok": 35
            },
            {
              "date": "2026-10-01",
              "probes": 276,
              "ok": 276
            },
            {
              "date": "2026-10-02",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-03",
              "probes": 271,
              "ok": 271
            },
            {
              "date": "2026-10-04",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-05",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-06",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-07",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-08",
              "probes": 239,
              "ok": 239
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.mailgun.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-08T21:06:11.792768595Z"
        },
        "versions": [
          {
            "registry": "github",
            "name": "mailgun/mailgun-mcp-server",
            "version": "v2.1.3",
            "released": "2026-09-16",
            "seenAt": "2026-10-08T16:19:36.449835181Z"
          },
          {
            "registry": "npm",
            "name": "@mailgun/mcp-server",
            "version": "2.1.3",
            "seenAt": "2026-10-08T16:19:34.851701385Z"
          },
          {
            "registry": "npm",
            "name": "mailgun.js",
            "version": "14.1.0",
            "seenAt": "2026-10-08T16:19:34.21932814Z"
          },
          {
            "registry": "pypi",
            "name": "mailgun",
            "version": "1.9.1",
            "released": "2026-09-21",
            "seenAt": "2026-10-08T16:19:34.575243526Z"
          }
        ],
        "githubStars": 62,
        "npmWeekly": 1325863,
        "pypiWeekly": 54909,
        "securityTxt": {
          "url": "https://mailgun.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-08T15:38:46.117930308Z"
        },
        "llmsTxt": {
          "url": "https://documentation.mailgun.com/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-08T14:00:35.451274216Z"
        },
        "domain": {
          "domain": "mailgun.com",
          "registered": "2003-12-20",
          "source": "https://rdap.verisign.com/com/v1/domain/mailgun.com",
          "checkedAt": "2026-10-04T13:05:38.739240418Z"
        },
        "pages": [
          {
            "url": "https://documentation.mailgun.com/docs/mailgun/release/release-notes",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-08T18:19:58.332283375Z",
            "changedAt": "2026-10-08T18:19:58.332283375Z",
            "fingerprint": "02e322cd420f"
          },
          {
            "url": "https://www.mailgun.com/pricing/",
            "kind": "pricing",
            "status": 304,
            "checkedAt": "2026-10-08T18:28:59.565198483Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "dbcce09b527b"
          },
          {
            "url": "https://www.mailgun.com/legal/privacy-policy/",
            "kind": "privacy",
            "status": 304,
            "checkedAt": "2026-10-08T18:28:55.525463475Z",
            "changedAt": "2026-10-02T15:27:12.688197359Z",
            "fingerprint": "213ddc77ab01"
          },
          {
            "url": "https://www.mailgun.com/legal/terms/",
            "kind": "terms",
            "status": 304,
            "checkedAt": "2026-10-08T18:28:57.5620461Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "e68fb8d6980b"
          }
        ],
        "updatedAt": "2026-10-08T21:12:14.675248753Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Cloudflare",
        "b": "Mailgun (Sinch)",
        "name": "Vendor"
      },
      {
        "a": "https://api.cloudflare.com/client/v4",
        "b": "https://api.mailgun.net/v3",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP",
        "b": "HTTP, stdio",
        "name": "Transports"
      },
      {
        "a": "API key",
        "b": "API key",
        "name": "Auth"
      },
      {
        "a": "Pay per use",
        "b": "Freemium",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Proprietary service under Cloudflare's Self-Serve Subscription Agreement and Developer Platform service-specific terms. The official `cloudflare` SDK on npm is Apache-2.0",
        "b": "Apache-2.0",
        "name": "Licence"
      },
      {
        "a": "none",
        "b": "74",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "yes",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-09-25",
        "b": "2026-09-21",
        "name": "Last release"
      },
      {
        "a": "2025-09-12",
        "b": "no date given",
        "name": "Terms last updated"
      },
      {
        "a": "no date given",
        "b": "no date given",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Customer content may train models"
      },
      {
        "a": "yes",
        "b": "not found in the text",
        "name": "Terms restrict automated access"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "yes",
        "b": "not found in the text",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "3.8M npm/wk, 364k PyPI/wk",
        "b": "62 stars, 1.3M npm/wk, 61k PyPI/wk",
        "name": "Popularity"
      },
      {
        "a": "none",
        "b": "3/5 (2)",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "Cloudflare Email Service scores 67.3 (B) on agent readiness against Mailgun API + MCP's 66.2 (B), and leads in 4 of 7 scored categories. Mailgun API + MCP leads on reliability, payments \u0026 pricing and maintenance \u0026 community.",
        "question": "Which is better for AI agents, Cloudflare Email Service or Mailgun API + MCP?"
      },
      {
        "answer": "Both need an API key.",
        "question": "Do Cloudflare Email Service and Mailgun API + MCP need an API key?"
      },
      {
        "answer": "Yes. Cloudflare Email Service has a hosted endpoint at https://api.cloudflare.com/client/v4 and Mailgun API + MCP at https://api.mailgun.net/v3.",
        "question": "Can an agent call Cloudflare Email Service and Mailgun API + MCP without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Schema \u0026 documentation, 89 against 83",
          "Agent ergonomics, 72 against 60",
          "Transparency \u0026 trust, 76 against 69"
        ],
        "also": null,
        "goodFor": "Teams already on Cloudflare DNS and Workers that want transactional sending and inbound handling in one account at a low unit price.",
        "slug": "cloudflare-email-service",
        "watchFor": "Email Sending has been in public beta since 16 April 2026. Cloudflare's terms let it remove a beta service at any time, and no SLA was found"
      },
      {
        "aheadOn": [
          "Reliability, 57 against 51",
          "Payments \u0026 pricing, 40 against 30",
          "Maintenance \u0026 community, 87 against 81"
        ],
        "also": [
          "Runs on your own machine"
        ],
        "goodFor": "Teams that want inbound routing, validation and per-key roles in one account, in US or EU regions.",
        "slug": "mailgun",
        "watchFor": "74 MCP tools load by default, each a one-line summary, with no readOnlyHint or destructiveHint"
      }
    ],
    "job": {
      "capability": "email.send",
      "name": "Email send"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/amazon-ses-vs-cloudflare-email-service.json",
        "title": "Amazon SES vs Cloudflare Email Service",
        "url": "https://www.anchorterminal.com/compare/amazon-ses-vs-cloudflare-email-service"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-ses-vs-mailgun.json",
        "title": "Amazon SES vs Mailgun API + MCP",
        "url": "https://www.anchorterminal.com/compare/amazon-ses-vs-mailgun"
      },
      {
        "json": "https://www.anchorterminal.com/compare/brevo-vs-cloudflare-email-service.json",
        "title": "Brevo API + MCP vs Cloudflare Email Service",
        "url": "https://www.anchorterminal.com/compare/brevo-vs-cloudflare-email-service"
      },
      {
        "json": "https://www.anchorterminal.com/compare/brevo-vs-mailgun.json",
        "title": "Brevo API + MCP vs Mailgun API + MCP",
        "url": "https://www.anchorterminal.com/compare/brevo-vs-mailgun"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cloudflare-email-service-vs-loops.json",
        "title": "Cloudflare Email Service vs Loops API + MCP",
        "url": "https://www.anchorterminal.com/compare/cloudflare-email-service-vs-loops"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cloudflare-email-service-vs-mailersend.json",
        "title": "Cloudflare Email Service vs MailerSend",
        "url": "https://www.anchorterminal.com/compare/cloudflare-email-service-vs-mailersend"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cloudflare-email-service-vs-mailjet.json",
        "title": "Cloudflare Email Service vs Mailjet API + MCP",
        "url": "https://www.anchorterminal.com/compare/cloudflare-email-service-vs-mailjet"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cloudflare-email-service-vs-mailtrap.json",
        "title": "Cloudflare Email Service vs Mailtrap Email API + MCP",
        "url": "https://www.anchorterminal.com/compare/cloudflare-email-service-vs-mailtrap"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cloudflare-email-service-vs-mandrill.json",
        "title": "Cloudflare Email Service vs Mailchimp Transactional (Mandrill)",
        "url": "https://www.anchorterminal.com/compare/cloudflare-email-service-vs-mandrill"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cloudflare-email-service-vs-postmark.json",
        "title": "Cloudflare Email Service vs Postmark API + MCP",
        "url": "https://www.anchorterminal.com/compare/cloudflare-email-service-vs-postmark"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cloudflare-email-service-vs-resend.json",
        "title": "Cloudflare Email Service vs Resend API + MCP",
        "url": "https://www.anchorterminal.com/compare/cloudflare-email-service-vs-resend"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cloudflare-email-service-vs-sendgrid.json",
        "title": "Cloudflare Email Service vs Twilio SendGrid",
        "url": "https://www.anchorterminal.com/compare/cloudflare-email-service-vs-sendgrid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cloudflare-email-service-vs-smtp2go.json",
        "title": "Cloudflare Email Service vs SMTP2GO API + MCP",
        "url": "https://www.anchorterminal.com/compare/cloudflare-email-service-vs-smtp2go"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cloudflare-email-service-vs-zoho-zeptomail.json",
        "title": "Cloudflare Email Service vs Zoho CPaaS (formerly ZeptoMail)",
        "url": "https://www.anchorterminal.com/compare/cloudflare-email-service-vs-zoho-zeptomail"
      },
      {
        "json": "https://www.anchorterminal.com/compare/loops-vs-mailgun.json",
        "title": "Loops API + MCP vs Mailgun API + MCP",
        "url": "https://www.anchorterminal.com/compare/loops-vs-mailgun"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mailersend-vs-mailgun.json",
        "title": "MailerSend vs Mailgun API + MCP",
        "url": "https://www.anchorterminal.com/compare/mailersend-vs-mailgun"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mailgun-vs-mailjet.json",
        "title": "Mailgun API + MCP vs Mailjet API + MCP",
        "url": "https://www.anchorterminal.com/compare/mailgun-vs-mailjet"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mailgun-vs-mailtrap.json",
        "title": "Mailgun API + MCP vs Mailtrap Email API + MCP",
        "url": "https://www.anchorterminal.com/compare/mailgun-vs-mailtrap"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mailgun-vs-mandrill.json",
        "title": "Mailgun API + MCP vs Mailchimp Transactional (Mandrill)",
        "url": "https://www.anchorterminal.com/compare/mailgun-vs-mandrill"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mailgun-vs-postmark.json",
        "title": "Mailgun API + MCP vs Postmark API + MCP",
        "url": "https://www.anchorterminal.com/compare/mailgun-vs-postmark"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mailgun-vs-resend.json",
        "title": "Mailgun API + MCP vs Resend API + MCP",
        "url": "https://www.anchorterminal.com/compare/mailgun-vs-resend"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mailgun-vs-sendgrid.json",
        "title": "Mailgun API + MCP vs Twilio SendGrid",
        "url": "https://www.anchorterminal.com/compare/mailgun-vs-sendgrid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mailgun-vs-smtp2go.json",
        "title": "Mailgun API + MCP vs SMTP2GO API + MCP",
        "url": "https://www.anchorterminal.com/compare/mailgun-vs-smtp2go"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mailgun-vs-zoho-zeptomail.json",
        "title": "Mailgun API + MCP vs Zoho CPaaS (formerly ZeptoMail)",
        "url": "https://www.anchorterminal.com/compare/mailgun-vs-zoho-zeptomail"
      }
    ],
    "scores": [
      {
        "by": 6,
        "cloudflare-email-service": 51,
        "edge": "mailgun",
        "key": "reliability",
        "mailgun": 57,
        "name": "Reliability",
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 6,
        "cloudflare-email-service": 89,
        "edge": "cloudflare-email-service",
        "key": "schema",
        "mailgun": 83,
        "name": "Schema \u0026 documentation",
        "weight": 13
      },
      {
        "by": 12,
        "cloudflare-email-service": 72,
        "edge": "cloudflare-email-service",
        "key": "ergonomics",
        "mailgun": 60,
        "name": "Agent ergonomics",
        "weight": 13
      },
      {
        "by": 3,
        "cloudflare-email-service": 77,
        "edge": "cloudflare-email-service",
        "key": "security",
        "mailgun": 74,
        "name": "Security \u0026 auth",
        "weight": 14
      },
      {
        "by": 10,
        "cloudflare-email-service": 30,
        "edge": "mailgun",
        "key": "payments",
        "mailgun": 40,
        "name": "Payments \u0026 pricing",
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 6,
        "cloudflare-email-service": 81,
        "edge": "mailgun",
        "key": "maintenance",
        "mailgun": 87,
        "name": "Maintenance \u0026 community",
        "weight": 7
      },
      {
        "by": 7,
        "cloudflare-email-service": 76,
        "edge": "cloudflare-email-service",
        "key": "transparency",
        "mailgun": 69,
        "name": "Transparency \u0026 trust",
        "weight": 7
      }
    ],
    "summary": "Cloudflare Email Service scores 67.3 (B) on agent readiness against Mailgun API + MCP's 66.2 (B), and leads in 4 of 7 scored categories. Mailgun API + MCP leads on reliability, payments \u0026 pricing and maintenance \u0026 community. Both do email send.",
    "verdicts": {
      "cloudflare-email-service": "Cloudflare API tokens can be limited to sending, given an expiry and restricted by IP address, and a public OpenAPI file covers 29 Email Sending operations. Sending is still in beta, with no SLA, no idempotency key and no published daily quota, and it needs a domain on Cloudflare DNS and the Workers Paid plan.",
      "mailgun": "Key roles (Admin, read-only Analyst, Developer, Support), Domain Sending Keys and IP allowlisting. 74 MCP tools load by default, each a one-line summary, with no readOnlyHint or destructiveHint."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/cloudflare-email-service-vs-mailgun",
    "json": "https://www.anchorterminal.com/compare/cloudflare-email-service-vs-mailgun.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/cloudflare-email-service-vs-mailgun.md",
    "slim": "https://www.anchorterminal.com/compare/cloudflare-email-service-vs-mailgun.min.md"
  },
  "markdown": "Cloudflare Email Service scores 67.3 (B) on agent readiness against Mailgun API + MCP's 66.2 (B), and leads in 4 of 7 scored categories. Mailgun API + MCP leads on reliability, payments \u0026 pricing and maintenance \u0026 community. Both do email send.\n\n- Cloudflare Email Service: grade B, 67.3/100, rank #212 of 722. Markdown https://www.anchorterminal.com/tools/cloudflare-email-service.md · JSON https://www.anchorterminal.com/api/v1/tools/cloudflare-email-service.json\n- Mailgun API + MCP: grade B, 66.2/100, rank #242 of 722. Markdown https://www.anchorterminal.com/tools/mailgun.md · JSON https://www.anchorterminal.com/api/v1/tools/mailgun.json\n\n## Which one, for what\n\n### Cloudflare Email Service (B)\n\nGood for: Teams already on Cloudflare DNS and Workers that want transactional sending and inbound handling in one account at a low unit price.\n\nAhead on:\n- Schema \u0026 documentation, 89 against 83\n- Agent ergonomics, 72 against 60\n- Transparency \u0026 trust, 76 against 69\n\nWatch for: Email Sending has been in public beta since 16 April 2026. Cloudflare's terms let it remove a beta service at any time, and no SLA was found\n\n### Mailgun API + MCP (B)\n\nGood for: Teams that want inbound routing, validation and per-key roles in one account, in US or EU regions.\n\nAhead on:\n- Reliability, 57 against 51\n- Payments \u0026 pricing, 40 against 30\n- Maintenance \u0026 community, 87 against 81\n\nAlso in its favour:\n- Runs on your own machine\n\nWatch for: 74 MCP tools load by default, each a one-line summary, with no readOnlyHint or destructiveHint\n\n\n## Score by category\n\n| Category | Weight | Cloudflare Email Service | Mailgun API + MCP | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 51 | 57 | Mailgun API + MCP +6 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 89 | 83 | Cloudflare Email Service +6 |\n| Agent ergonomics | 13% (16.2 this run) | 72 | 60 | Cloudflare Email Service +12 |\n| Security \u0026 auth | 14% (17.5 this run) | 77 | 74 | Cloudflare Email Service +3 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 30 | 40 | Mailgun API + MCP +10 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 81 | 87 | Mailgun API + MCP +6 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 76 | 69 | Cloudflare Email Service +7 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **67.3 · B** | **66.2 · B** | |\n\n## Facts side by side\n\n| Fact | Cloudflare Email Service | Mailgun API + MCP |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Cloudflare | Mailgun (Sinch) |\n| Hosted endpoint | `https://api.cloudflare.com/client/v4` | `https://api.mailgun.net/v3` |\n| Transports | HTTP | HTTP, stdio |\n| Auth | API key | API key |\n| Pricing | Pay per use | Freemium |\n| x402 | no | no |\n| Licence | Proprietary service under Cloudflare's Self-Serve Subscription Agreement and Developer Platform service-specific terms. The official `cloudflare` SDK on npm is Apache-2.0 | Apache-2.0 |\n| Tools exposed | none | 74 |\n| Read-only variant documented | no | yes |\n| llms.txt | yes | yes |\n| Last release | 2026-09-25 | 2026-09-21 |\n| Terms last updated | 2025-09-12 | no date given |\n| Privacy policy last updated | no date given | no date given |\n| Customer content may train models | not found in the text | not found in the text |\n| Terms restrict automated access | yes | not found in the text |\n| Terms restrict benchmarking | not found in the text | not found in the text |\n| Terms or service can change without notice | yes | not found in the text |\n| Arbitration or class-action waiver | yes | yes |\n| Popularity | 3.8M npm/wk, 364k PyPI/wk | 62 stars, 1.3M npm/wk, 61k PyPI/wk |\n| Agent reviews | none | 3/5 (2) |\n\n## Verdicts\n\n**Cloudflare Email Service.** Cloudflare API tokens can be limited to sending, given an expiry and restricted by IP address, and a public OpenAPI file covers 29 Email Sending operations. Sending is still in beta, with no SLA, no idempotency key and no published daily quota, and it needs a domain on Cloudflare DNS and the Workers Paid plan.\n\n**Mailgun API + MCP.** Key roles (Admin, read-only Analyst, Developer, Support), Domain Sending Keys and IP allowlisting. 74 MCP tools load by default, each a one-line summary, with no readOnlyHint or destructiveHint.\n\n## Before you call either\n\n### Cloudflare Email Service\n\n1. POST to `https://api.cloudflare.com/client/v4/accounts/{account_id}/email/sending/send` with `Authorization: Bearer \u003ctoken\u003e`. The body needs `to`, `from`, `subject` and one of `html` or `text`\n2. Don't retry a timed-out send blindly. There is no idempotency key, so look for the message in the `emailSendingAdaptive` GraphQL dataset first\n3. On 429 (code 10004) wait for the `retry-after` header. On 409 `sending_not_ready` the domain setup is unfinished and nothing was sent\n4. Read `result.delivered`, `result.queued` and `result.permanent_bounces` in the response. A 200 does not mean every recipient was accepted\n5. Keep to 50 recipients across to, cc and bcc, and 5 MiB per message including attachments\n6. For SMTP use `smtp.mx.cloudflare.net` on port 465 with implicit TLS, username `api_token` and the API token as password. Port 587 is not supported\n7. By default one suppressed recipient fails the whole send. Turn on Drop suppressed recipients for the domain to send to the rest\n\n### Mailgun API + MCP\n\n1. Give an agent that only sends a Domain Sending Key, which can only POST /messages for one domain\n2. Start the MCP with `--tags validate,inspect` when you don't need the 70 send-tagged tools\n3. Set `MAILGUN_API_REGION=eu` for EU accounts, which live on api.eu.mailgun.net\n4. Add `o:testmode=yes` to check a send without delivering it\n5. Verify a custom domain first. The sandbox domain reaches only 5 authorised recipients\n\n## Questions\n\n### Which is better for AI agents, Cloudflare Email Service or Mailgun API + MCP?\n\nCloudflare Email Service scores 67.3 (B) on agent readiness against Mailgun API + MCP's 66.2 (B), and leads in 4 of 7 scored categories. Mailgun API + MCP leads on reliability, payments \u0026 pricing and maintenance \u0026 community.\n\n### Do Cloudflare Email Service and Mailgun API + MCP need an API key?\n\nBoth need an API key.\n\n### Can an agent call Cloudflare Email Service and Mailgun API + MCP without installing anything?\n\nYes. Cloudflare Email Service has a hosted endpoint at https://api.cloudflare.com/client/v4 and Mailgun API + MCP at https://api.mailgun.net/v3.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/cloudflare-email-service-vs-mailgun.json, and with the fewest tokens: https://www.anchorterminal.com/compare/cloudflare-email-service-vs-mailgun.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"cloudflare-email-service\", \"b\": \"mailgun\"}`. From a terminal: `anchor compare cloudflare-email-service mailgun`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/cloudflare-email-service.json and https://www.anchorterminal.com/api/v1/tools/mailgun.json\n\n## Other comparisons with Cloudflare Email Service or Mailgun API + MCP\n\n- [Amazon SES vs Cloudflare Email Service](https://www.anchorterminal.com/compare/amazon-ses-vs-cloudflare-email-service.md)\n- [Amazon SES vs Mailgun API + MCP](https://www.anchorterminal.com/compare/amazon-ses-vs-mailgun.md)\n- [Brevo API + MCP vs Cloudflare Email Service](https://www.anchorterminal.com/compare/brevo-vs-cloudflare-email-service.md)\n- [Brevo API + MCP vs Mailgun API + MCP](https://www.anchorterminal.com/compare/brevo-vs-mailgun.md)\n- [Cloudflare Email Service vs Loops API + MCP](https://www.anchorterminal.com/compare/cloudflare-email-service-vs-loops.md)\n- [Cloudflare Email Service vs MailerSend](https://www.anchorterminal.com/compare/cloudflare-email-service-vs-mailersend.md)\n- [Cloudflare Email Service vs Mailjet API + MCP](https://www.anchorterminal.com/compare/cloudflare-email-service-vs-mailjet.md)\n- [Cloudflare Email Service vs Mailtrap Email API + MCP](https://www.anchorterminal.com/compare/cloudflare-email-service-vs-mailtrap.md)\n- [Cloudflare Email Service vs Mailchimp Transactional (Mandrill)](https://www.anchorterminal.com/compare/cloudflare-email-service-vs-mandrill.md)\n- [Cloudflare Email Service vs Postmark API + MCP](https://www.anchorterminal.com/compare/cloudflare-email-service-vs-postmark.md)\n- [Cloudflare Email Service vs Resend API + MCP](https://www.anchorterminal.com/compare/cloudflare-email-service-vs-resend.md)\n- [Cloudflare Email Service vs Twilio SendGrid](https://www.anchorterminal.com/compare/cloudflare-email-service-vs-sendgrid.md)\n- [Cloudflare Email Service vs SMTP2GO API + MCP](https://www.anchorterminal.com/compare/cloudflare-email-service-vs-smtp2go.md)\n- [Cloudflare Email Service vs Zoho CPaaS (formerly ZeptoMail)](https://www.anchorterminal.com/compare/cloudflare-email-service-vs-zoho-zeptomail.md)\n- [Loops API + MCP vs Mailgun API + MCP](https://www.anchorterminal.com/compare/loops-vs-mailgun.md)\n- [MailerSend vs Mailgun API + MCP](https://www.anchorterminal.com/compare/mailersend-vs-mailgun.md)\n- [Mailgun API + MCP vs Mailjet API + MCP](https://www.anchorterminal.com/compare/mailgun-vs-mailjet.md)\n- [Mailgun API + MCP vs Mailtrap Email API + MCP](https://www.anchorterminal.com/compare/mailgun-vs-mailtrap.md)\n- [Mailgun API + MCP vs Mailchimp Transactional (Mandrill)](https://www.anchorterminal.com/compare/mailgun-vs-mandrill.md)\n- [Mailgun API + MCP vs Postmark API + MCP](https://www.anchorterminal.com/compare/mailgun-vs-postmark.md)\n- [Mailgun API + MCP vs Resend API + MCP](https://www.anchorterminal.com/compare/mailgun-vs-resend.md)\n- [Mailgun API + MCP vs Twilio SendGrid](https://www.anchorterminal.com/compare/mailgun-vs-sendgrid.md)\n- [Mailgun API + MCP vs SMTP2GO API + MCP](https://www.anchorterminal.com/compare/mailgun-vs-smtp2go.md)\n- [Mailgun API + MCP vs Zoho CPaaS (formerly ZeptoMail)](https://www.anchorterminal.com/compare/mailgun-vs-zoho-zeptomail.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-08",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.4",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Cloudflare Email Service vs Mailgun API + MCP",
        "url": ""
      }
    ],
    "description": "Cloudflare Email Service scores 67.3 (B) on agent readiness against Mailgun API + MCP's 66.2 (B), and leads in 4 of 7 scored categories. Mailgun API + MCP leads on reliability, payments \u0026 pricing and maintenance \u0026 community. Both do email send. Category scores, facts, verdicts…",
    "facts": [
      "Cloudflare Email Service B 67.3",
      "Mailgun API + MCP B 66.2",
      "scores"
    ],
    "h1": "Cloudflare Email Service vs Mailgun API + MCP",
    "image": "https://www.anchorterminal.com/assets/og/compare-cloudflare-email-service-vs-mailgun.png",
    "path": "/compare/cloudflare-email-service-vs-mailgun",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Cloudflare Email Service vs Mailgun API + MCP for AI agents",
    "toc": null,
    "updated": "2026-10-08",
    "url": "https://www.anchorterminal.com/compare/cloudflare-email-service-vs-mailgun"
  },
  "tokens": {
    "markdown": 2700,
    "slim": 680
  },
  "version": 1
}
