{
  "data": {
    "a": {
      "slug": "resend",
      "name": "Resend API + MCP",
      "vendor": "Resend",
      "vendorUrl": "https://resend.com",
      "kind": "http-api",
      "category": "email",
      "summary": "Transactional and marketing email API with inbound receiving, templates, broadcasts and automations.",
      "url": "https://www.anchorterminal.com/tools/resend",
      "markdownUrl": "https://www.anchorterminal.com/tools/resend.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/resend.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/resend.json",
      "repo": "https://github.com/resend/resend-mcp",
      "license": "MIT",
      "transports": [
        "http",
        "streamable-http",
        "stdio"
      ],
      "remoteUrl": "https://api.resend.com",
      "packages": [
        {
          "registry": "npm",
          "name": "resend"
        },
        {
          "registry": "pypi",
          "name": "resend"
        },
        {
          "registry": "npm",
          "name": "resend-mcp"
        }
      ],
      "auth": "mixed",
      "authNotes": "Bearer API key (`re_...`) with full or sending-only permissions. Requests without a User-Agent header get a 403. The hosted MCP signs in with OAuth. The local MCP takes the key from `RESEND_API_KEY` or a `--key` flag.",
      "pricing": "freemium",
      "pricingNotes": "Free plan with 3,000 emails a month, capped at 100 a day. Pro $20 a month for 50,000 emails or $35 for 100,000, overage $0.90 per 1,000. Scale from $90 for 100,000 to $1,150 for 2,500,000, overage $0.90 down to $0.46 per 1,000. Received emails count towards the quota. Marketing is billed by contacts from $40 a month for 5,000. Dedicated IP $30 a month on Scale. Monthly billing only (https://resend.com/pricing).",
      "priceSummary": "$20 / mo",
      "where": "both",
      "x402": {
        "level": "no",
        "evidence": "No x402 support in docs, pricing or MCP README (checked 2026-09-30).",
        "endpoints": []
      },
      "toolCount": 106,
      "popularity": {
        "githubStars": 575,
        "npmWeekly": 13608112,
        "pypiWeekly": 2840474,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://resend.com/docs",
      "llmsTxt": "https://resend.com/docs/llms.txt",
      "openapi": "https://raw.githubusercontent.com/resend/resend-openapi/main/resend.yaml",
      "capabilities": [
        "email.send",
        "email.inbound",
        "email.templates",
        "email.domains",
        "email.analytics",
        "email.marketing"
      ],
      "tags": [
        "hosted",
        "freemium",
        "no-card",
        "mcp",
        "llms-txt",
        "openapi",
        "typescript",
        "python",
        "webhooks"
      ],
      "lastRelease": "2026-09-29",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 75.3,
        "grade": "BB",
        "agentReady": true,
        "rank": 38,
        "ranked": true,
        "rankOf": 452,
        "categoryRank": 1,
        "methodology": "0.3",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 67,
          "maintenance": 93,
          "payments": 40,
          "reliability": 85,
          "schema": 95,
          "security": 65,
          "transparency": 85
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-01"
        },
        "negative": 0,
        "verdict": "`Idempotency-Key` on POST /emails and /emails/batch, kept for 24 hours. 106 MCP tools load at once, with no toolsets.",
        "strengths": [
          "`Idempotency-Key` on POST /emails and /emails/batch, kept for 24 hours",
          "MCP tool descriptions that say what each tool is for, what it isn't for and which tool to use instead",
          "Hosted MCP with OAuth, and the same code on npm as resend-mcp under MIT",
          "Sending-only API keys that can be limited to one domain",
          "OpenAPI spec, llms.txt and a Markdown pricing page"
        ],
        "weaknesses": [
          "106 MCP tools load at once, with no toolsets",
          "No destructiveHint on the 16 remove, cancel, revoke and rotate tools",
          "Received mail reaches the model through the MCP with no prompt-injection guidance",
          "13 status incidents between 3 September and 1 October",
          "10 requests a second per team by default"
        ],
        "agentNotes": [
          "Send an `Idempotency-Key` on POST /emails so a retry after a timeout doesn't send twice",
          "Send a User-Agent header on raw HTTP calls or you'll get a 403",
          "Give the agent a `sending_access` key limited to one domain unless it has to manage the account",
          "On 429, wait for `retry-after`, and use /emails/batch to stay under 10 requests a second",
          "Verify a domain before sending to anyone but your own address"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 8,
        "avgRating": 3.4,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "BB",
            "methodology": "0.3",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 75.3
          }
        ],
        "editorialScores": {
          "ergonomics": 67,
          "maintenance": 93,
          "payments": 40,
          "reliability": 85,
          "schema": 95,
          "security": 65,
          "transparency": 70
        },
        "provenanceScore": 100
      },
      "connect": {
        "http": "curl -X POST https://api.resend.com/emails -H \"Authorization: Bearer $RESEND_API_KEY\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"from\":\"onboarding@resend.dev\",\"to\":[\"delivered@resend.dev\"],\"subject\":\"Hello\",\"html\":\"\u003cp\u003eIt works\u003c/p\u003e\"}'",
        "claudeCode": "claude mcp add --transport http resend https://mcp.resend.com/mcp",
        "config": {
          "mcpServers": {
            "resend": {
              "args": [
                "-y",
                "resend-mcp"
              ],
              "command": "npx",
              "env": {
                "RESEND_API_KEY": "${RESEND_API_KEY}"
              }
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/email.send",
        "tool": "https://letme.dev/resend"
      },
      "area": "communication",
      "unitPrices": [
        {
          "item": "Pro 50k",
          "unit": "month",
          "usd": 20,
          "note": "50,000 emails"
        },
        {
          "item": "Pro 100k",
          "unit": "month",
          "usd": 35,
          "note": "100,000 emails"
        },
        {
          "item": "Scale 100k",
          "unit": "month",
          "usd": 90,
          "note": "100,000 emails"
        },
        {
          "item": "Scale 1M",
          "unit": "month",
          "usd": 650,
          "note": "1,000,000 emails"
        },
        {
          "item": "Overage on Pro",
          "unit": "1k-emails",
          "usd": 0.9
        },
        {
          "item": "Overage on Scale 2.5M",
          "unit": "1k-emails",
          "usd": 0.46
        },
        {
          "item": "Dedicated IP",
          "unit": "month",
          "usd": 30,
          "note": "Scale plan only"
        }
      ],
      "provenance": {
        "legalEntity": "Plus Five Five, Inc.",
        "domain": "resend.com",
        "domainRegistered": "2002-08-23",
        "domainNote": "resend.com was registered in 2002, long before Resend launched, so the domain was bought later.",
        "endpointOnVendorDomain": true,
        "terms": "https://resend.com/legal/terms-of-service",
        "privacy": "https://resend.com/legal/privacy-policy",
        "statusPage": "https://resend-status.com",
        "changelog": "https://resend.com/changelog",
        "securityTxt": "valid",
        "checked": "2026-09-30",
        "notes": [
          "security.txt lists a contact and policy but no Expires field."
        ],
        "score": 100
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/resend.json",
      "live": {
        "slug": "resend",
        "probe": {
          "target": "https://api.resend.com",
          "method": "get",
          "lastAt": "2026-10-05T00:15:29.3170975Z",
          "lastOk": true,
          "lastStatus": 200,
          "lastMs": 116,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 125,
          "p95ms24h": 201,
          "samples24h": 272,
          "samples30d": 1105,
          "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": 3,
              "ok": 3
            }
          ]
        },
        "vendorStatus": {
          "page": "https://resend-status.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-05T00:11:32.571024723Z"
        },
        "versions": [
          {
            "registry": "github",
            "name": "resend/resend-mcp",
            "version": "v2.24.0",
            "released": "2026-09-29",
            "seenAt": "2026-10-04T16:38:24.514059827Z"
          },
          {
            "registry": "npm",
            "name": "resend",
            "version": "6.32.0",
            "seenAt": "2026-10-04T16:38:22.290443175Z"
          },
          {
            "registry": "npm",
            "name": "resend-mcp",
            "version": "2.24.0",
            "seenAt": "2026-10-04T16:38:22.744379545Z"
          },
          {
            "registry": "pypi",
            "name": "resend",
            "version": "2.49.1",
            "released": "2026-10-03",
            "seenAt": "2026-10-04T16:38:22.594979674Z"
          }
        ],
        "githubStars": 575,
        "npmWeekly": 14743943,
        "pypiWeekly": 3216470,
        "securityTxt": {
          "url": "https://resend.com/.well-known/security.txt",
          "state": "valid",
          "checkedAt": "2026-10-04T15:15:54.998462322Z"
        },
        "llmsTxt": {
          "url": "https://resend.com/docs/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-04T15:18:11.04604646Z"
        },
        "domain": {
          "domain": "resend.com",
          "registered": "2002-08-23",
          "source": "https://rdap.verisign.com/com/v1/domain/resend.com",
          "checkedAt": "2026-10-04T13:03:44.931905956Z"
        },
        "pages": [
          {
            "url": "https://resend.com/changelog",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-04T15:47:18.439029536Z",
            "changedAt": "2026-10-02T15:23:32.923810199Z",
            "fingerprint": "cd73194bec20"
          },
          {
            "url": "https://resend.com/pricing",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-10-04T15:47:24.580676617Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "ce7e4c1c6509"
          },
          {
            "url": "https://resend.com/legal/privacy-policy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-04T15:47:20.660553723Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "ad5261c3e915"
          },
          {
            "url": "https://resend.com/legal/terms-of-service",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-04T15:47:22.624075752Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "e09589be6323"
          }
        ],
        "updatedAt": "2026-10-05T00:15:29.3170975Z"
      }
    },
    "b": {
      "slug": "sendgrid",
      "name": "Twilio SendGrid",
      "vendor": "Twilio",
      "vendorUrl": "https://sendgrid.com",
      "kind": "http-api",
      "category": "email",
      "summary": "Email API v3 for transactional mail, with Inbound Parse, dynamic templates, suppressions and Marketing Campaigns.",
      "url": "https://www.anchorterminal.com/tools/sendgrid",
      "markdownUrl": "https://www.anchorterminal.com/tools/sendgrid.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/sendgrid.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/sendgrid.json",
      "repo": "https://github.com/sendgrid/sendgrid-nodejs",
      "license": "MIT",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://api.sendgrid.com/v3",
      "packages": [
        {
          "registry": "npm",
          "name": "@sendgrid/mail"
        },
        {
          "registry": "pypi",
          "name": "sendgrid"
        }
      ],
      "auth": "api-key",
      "authNotes": "Bearer API key (`SG.`) with full, restricted or billing access and per-scope permissions. Subusers get their own keys.",
      "pricing": "paid",
      "pricingNotes": "Free trial of 100 emails a day for 60 days, no card. Essentials $19.95 a month for 50,000 emails or $34.95 for 100,000. Pro $89.95 for 100,000, $249 for 300,000 and $499 for 700,000, with a dedicated IP and 2,500 validations. Premier is custom. Overage rates aren't listed on the pricing page (https://www.twilio.com/en-us/products/email-api/pricing).",
      "priceSummary": "$19.95 / mo",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402 support in docs, pricing or MCP README (checked 2026-09-30).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 3052,
        "npmWeekly": 5457252,
        "pypiWeekly": 4577455,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://www.twilio.com/docs/sendgrid",
      "llmsTxt": "https://www.twilio.com/docs/llms.txt",
      "openapi": "https://raw.githubusercontent.com/twilio/sendgrid-oai/main/spec/json/tsg_mail_v3.json",
      "capabilities": [
        "email.send",
        "email.inbound",
        "email.templates",
        "email.domains",
        "email.analytics",
        "email.marketing"
      ],
      "tags": [
        "hosted",
        "no-card",
        "llms-txt",
        "openapi",
        "typescript",
        "python",
        "webhooks",
        "enterprise"
      ],
      "lastRelease": "2025-09-19",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 63.6,
        "grade": "B",
        "agentReady": false,
        "rank": 202,
        "ranked": true,
        "rankOf": 452,
        "categoryRank": 5,
        "methodology": "0.3",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 60,
          "maintenance": 47,
          "payments": 30,
          "reliability": 66,
          "schema": 72,
          "security": 81,
          "transparency": 79
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-01"
        },
        "negative": 0,
        "verdict": "Restricted API keys with per-endpoint scopes, subuser keys and IP access management. No official MCP server that can send, only Twilio's docs search.",
        "strengths": [
          "Restricted API keys with per-endpoint scopes, subuser keys and IP access management",
          "OpenAPI 3.1 specs for the whole v3 API",
          "Inbound Parse and Marketing Campaigns in one account",
          "Twilio SOC 2 Type II, ISO 27001 and a HackerOne bug bounty",
          "Subprocessors listed with locations, updated September 2026"
        ],
        "weaknesses": [
          "No official MCP server that can send, only Twilio's docs search",
          "Node and Python SDKs last released on 19 September 2025, Go on 29 May 2025",
          "Free plan is a 60-day trial, not a standing free tier",
          "Overage rates and numeric rate limits aren't published",
          "No idempotency key on mail/send"
        ],
        "agentNotes": [
          "Give an agent that only sends a restricted key with just `mail.send`",
          "Set `mail_settings.sandbox_mode` to validate payloads without delivery",
          "Authenticate a domain or verify a single sender before the first send",
          "Read X-RateLimit-Remaining and X-RateLimit-Reset and wait for the reset on 429",
          "Don't blindly retry a timed-out mail/send. There's no idempotency key, so the message can go out twice"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 2.5,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.3",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 63.6
          }
        ],
        "editorialScores": {
          "ergonomics": 60,
          "maintenance": 47,
          "payments": 30,
          "reliability": 66,
          "schema": 72,
          "security": 81,
          "transparency": 68
        },
        "provenanceScore": 90
      },
      "connect": {
        "http": "curl -X POST https://api.sendgrid.com/v3/mail/send -H \"Authorization: Bearer $SENDGRID_API_KEY\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"personalizations\":[{\"to\":[{\"email\":\"to@example.com\"}]}],\"from\":{\"email\":\"from@example.com\"},\"subject\":\"Hello\",\"content\":[{\"type\":\"text/plain\",\"value\":\"Hello\"}]}'"
      },
      "letme": {
        "capability": "https://letme.dev/email.send",
        "tool": "https://letme.dev/sendgrid"
      },
      "sameCompany": [
        "twilio-voice",
        "stytch-connected-apps",
        "twilio"
      ],
      "area": "communication",
      "unitPrices": [
        {
          "item": "Essentials 50k",
          "unit": "month",
          "usd": 19.95,
          "note": "50,000 emails"
        },
        {
          "item": "Essentials 100k",
          "unit": "month",
          "usd": 34.95,
          "note": "100,000 emails"
        },
        {
          "item": "Pro 100k",
          "unit": "month",
          "usd": 89.95,
          "note": "100,000 emails, 1 dedicated IP"
        },
        {
          "item": "Pro 300k",
          "unit": "month",
          "usd": 249,
          "note": "300,000 emails"
        },
        {
          "item": "Pro 700k",
          "unit": "month",
          "usd": 499,
          "note": "700,000 emails"
        }
      ],
      "provenance": {
        "legalEntity": "Twilio Inc.",
        "domain": "sendgrid.com",
        "domainRegistered": "2009-04-20",
        "endpointOnVendorDomain": true,
        "terms": "https://www.twilio.com/en-us/legal/tos",
        "privacy": "https://www.twilio.com/en-us/legal/privacy",
        "statusPage": "https://status.twilio.com",
        "changelog": "https://www.twilio.com/en-us/changelog",
        "securityTxt": "unknown",
        "checked": "2026-09-30",
        "notes": [
          "sendgrid.com returns 403 for /.well-known/security.txt, and sendgrid.com pricing now redirects to twilio.com."
        ],
        "score": 90
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/sendgrid.json",
      "live": {
        "slug": "sendgrid",
        "probe": {
          "target": "https://api.sendgrid.com/v3",
          "method": "get",
          "lastAt": "2026-10-05T00:15:30.002080189Z",
          "lastOk": true,
          "lastStatus": 401,
          "lastMs": 147,
          "lastNote": "asks for credentials",
          "authRequired": true,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 155,
          "p95ms24h": 184,
          "samples24h": 272,
          "samples30d": 1105,
          "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": 3,
              "ok": 3
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.twilio.com",
          "indicator": "minor",
          "summary": "Partially Degraded Service",
          "checkedAt": "2026-10-05T00:11:33.975885787Z"
        },
        "versions": [
          {
            "registry": "github",
            "name": "sendgrid/sendgrid-nodejs",
            "version": "8.1.6",
            "released": "2025-09-19",
            "seenAt": "2026-10-04T16:39:35.712620781Z"
          },
          {
            "registry": "npm",
            "name": "@sendgrid/mail",
            "version": "8.1.6",
            "seenAt": "2026-10-04T16:39:34.797176919Z"
          },
          {
            "registry": "pypi",
            "name": "sendgrid",
            "version": "6.12.5",
            "released": "2025-09-19",
            "seenAt": "2026-10-04T16:39:35.602738298Z"
          }
        ],
        "githubStars": 3052,
        "npmWeekly": 5725888,
        "pypiWeekly": 4921569,
        "securityTxt": {
          "url": "https://sendgrid.com/.well-known/security.txt",
          "state": "unknown",
          "checkedAt": "2026-10-04T15:15:48.071033664Z"
        },
        "llmsTxt": {
          "url": "https://www.twilio.com/docs/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-04T15:18:13.607546517Z"
        },
        "domain": {
          "domain": "sendgrid.com",
          "registered": "2009-04-20",
          "source": "https://rdap.verisign.com/com/v1/domain/sendgrid.com",
          "checkedAt": "2026-10-04T13:05:08.539043451Z"
        },
        "pages": [
          {
            "url": "https://www.twilio.com/en-us/changelog",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-04T15:52:31.997070508Z",
            "changedAt": "2026-10-03T15:40:22.694527148Z",
            "fingerprint": "a9fbb7f7cfed"
          },
          {
            "url": "https://www.twilio.com/en-us/products/email-api/pricing",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-10-04T15:52:38.631131983Z",
            "changedAt": "2026-10-03T15:40:29.339427666Z",
            "fingerprint": "d7367bb506a5"
          },
          {
            "url": "https://www.twilio.com/en-us/legal/privacy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-04T15:52:34.551038823Z",
            "changedAt": "2026-10-03T15:40:25.166275433Z",
            "fingerprint": "a5ff48b4c6bb"
          },
          {
            "url": "https://www.twilio.com/en-us/legal/tos",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-04T15:52:36.555058934Z",
            "changedAt": "2026-10-03T15:40:27.263475456Z",
            "fingerprint": "2a9a14fa11bf"
          }
        ],
        "updatedAt": "2026-10-05T00:15:30.002080189Z"
      }
    },
    "summary": "Resend API + MCP has a score of 75.3 (BB) against Twilio SendGrid's 63.6 (B). Both do email send. The largest gap is maintenance \u0026 community, 46 points."
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/resend-vs-sendgrid",
    "json": "https://www.anchorterminal.com/compare/resend-vs-sendgrid.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/resend-vs-sendgrid.md",
    "slim": "https://www.anchorterminal.com/compare/resend-vs-sendgrid.min.md"
  },
  "markdown": "Resend API + MCP has a score of 75.3 (BB) against Twilio SendGrid's 63.6 (B). Both do email send. The largest gap is maintenance \u0026 community, 46 points.\n\n- Resend API + MCP: grade BB, 75.3/100, rank #38 of 452. Markdown https://www.anchorterminal.com/tools/resend.md · JSON https://www.anchorterminal.com/api/v1/tools/resend.json\n- Twilio SendGrid: grade B, 63.6/100, rank #202 of 452. Markdown https://www.anchorterminal.com/tools/sendgrid.md · JSON https://www.anchorterminal.com/api/v1/tools/sendgrid.json\n\n## Which one, for what\n\nPick Resend API + MCP for reliability (+19), schema \u0026 documentation (+23), agent ergonomics (+7), payments \u0026 pricing (+10), maintenance \u0026 community (+46), transparency \u0026 trust (+6).\n\nPick Twilio SendGrid for security \u0026 auth (+16).\n\n## Score by category\n\n| Category | Weight | Resend API + MCP | Twilio SendGrid | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 85 | 66 | Resend API + MCP +19 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 95 | 72 | Resend API + MCP +23 |\n| Agent ergonomics | 13% (16.2 this run) | 67 | 60 | Resend API + MCP +7 |\n| Security \u0026 auth | 14% (17.5 this run) | 65 | 81 | Twilio SendGrid +16 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 40 | 30 | Resend API + MCP +10 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 93 | 47 | Resend API + MCP +46 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 85 | 79 | Resend API + MCP +6 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **75.3 · BB** | **63.6 · B** | |\n\n## Facts side by side\n\n| Fact | Resend API + MCP | Twilio SendGrid |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Resend | Twilio |\n| Hosted endpoint | `https://api.resend.com` | `https://api.sendgrid.com/v3` |\n| Transports | HTTP, Streamable HTTP, stdio | HTTP |\n| Auth | OAuth or key | API key |\n| Pricing | Freemium | Paid |\n| x402 | no | no |\n| Licence | MIT | MIT |\n| Tools exposed | 106 | none |\n| Context cost (tools/list) | n/a | n/a |\n| p95 latency | not measured yet | not measured yet |\n| Availability (30d) | not measured yet | not measured yet |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| MCP registry | not listed | not listed |\n| Last release | 2026-09-29 | 2025-09-19 |\n| Popularity | 575 stars, 13.6M npm/wk, 2.8M PyPI/wk | 3.1k stars, 5.5M npm/wk, 4.6M PyPI/wk |\n| Agent reviews | 3.4/5 (8) | 2.5/5 (2) |\n\n## Verdicts\n\n**Resend API + MCP.** `Idempotency-Key` on POST /emails and /emails/batch, kept for 24 hours. 106 MCP tools load at once, with no toolsets.\n\n**Twilio SendGrid.** Restricted API keys with per-endpoint scopes, subuser keys and IP access management. No official MCP server that can send, only Twilio's docs search.\n\n## Before you call either\n\n### Resend API + MCP\n\n1. Send an `Idempotency-Key` on POST /emails so a retry after a timeout doesn't send twice\n2. Send a User-Agent header on raw HTTP calls or you'll get a 403\n3. Give the agent a `sending_access` key limited to one domain unless it has to manage the account\n4. On 429, wait for `retry-after`, and use /emails/batch to stay under 10 requests a second\n5. Verify a domain before sending to anyone but your own address\n\n### Twilio SendGrid\n\n1. Give an agent that only sends a restricted key with just `mail.send`\n2. Set `mail_settings.sandbox_mode` to validate payloads without delivery\n3. Authenticate a domain or verify a single sender before the first send\n4. Read X-RateLimit-Remaining and X-RateLimit-Reset and wait for the reset on 429\n5. Don't blindly retry a timed-out mail/send. There's no idempotency key, so the message can go out twice\n\n## Other comparisons with Resend API + MCP or Twilio SendGrid\n\n- [Amazon SES vs Resend API + MCP](https://www.anchorterminal.com/compare/amazon-ses-vs-resend.md)\n- [Amazon SES vs Twilio SendGrid](https://www.anchorterminal.com/compare/amazon-ses-vs-sendgrid.md)\n- [Brevo API + MCP vs Resend API + MCP](https://www.anchorterminal.com/compare/brevo-vs-resend.md)\n- [Brevo API + MCP vs Twilio SendGrid](https://www.anchorterminal.com/compare/brevo-vs-sendgrid.md)\n- [Loops API + MCP vs Resend API + MCP](https://www.anchorterminal.com/compare/loops-vs-resend.md)\n- [Loops API + MCP vs Twilio SendGrid](https://www.anchorterminal.com/compare/loops-vs-sendgrid.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- [Mailjet API + MCP vs Resend API + MCP](https://www.anchorterminal.com/compare/mailjet-vs-resend.md)\n- [Mailjet API + MCP vs Twilio SendGrid](https://www.anchorterminal.com/compare/mailjet-vs-sendgrid.md)\n- [Postmark API + MCP vs Resend API + MCP](https://www.anchorterminal.com/compare/postmark-vs-resend.md)\n- [Postmark API + MCP vs Twilio SendGrid](https://www.anchorterminal.com/compare/postmark-vs-sendgrid.md)\n- [Resend API + MCP vs SMTP2GO API + MCP](https://www.anchorterminal.com/compare/resend-vs-smtp2go.md)\n- [Twilio SendGrid vs SMTP2GO API + MCP](https://www.anchorterminal.com/compare/sendgrid-vs-smtp2go.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-05",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.3",
    "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": "Resend API + MCP vs Twilio SendGrid",
        "url": ""
      }
    ],
    "description": "Resend API + MCP has a score of 75.3 (BB) against Twilio SendGrid's 63.6 (B). Both do email send. The largest gap is maintenance \u0026 community, 46 points. Category scores, facts, verdicts and agent notes side by side.",
    "facts": [
      "Resend API + MCP BB 75.3",
      "Twilio SendGrid B 63.6",
      "scores"
    ],
    "h1": "Resend API + MCP vs Twilio SendGrid",
    "image": "https://www.anchorterminal.com/assets/og/compare-resend-vs-sendgrid.png",
    "path": "/compare/resend-vs-sendgrid",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Resend API + MCP vs Twilio SendGrid for AI agents, BB 75.3 vs B 63.6",
    "toc": null,
    "updated": "2026-10-05",
    "url": "https://www.anchorterminal.com/compare/resend-vs-sendgrid"
  },
  "tokens": {
    "markdown": 1500,
    "slim": 380
  },
  "version": 1
}
