{
  "data": {
    "a": {
      "slug": "mailpace",
      "name": "MailPace",
      "vendor": "OhMySMTP Ltd",
      "vendorUrl": "https://mailpace.com",
      "kind": "http-api",
      "category": "email",
      "summary": "MailPace is a UK transactional email service, formerly OhMySMTP, hosted in the EU. It sends mail through an HTTPS API or SMTP, turns inbound mail into webhooks and has a Domains and Email Status API.",
      "url": "https://www.anchorterminal.com/tools/mailpace",
      "markdownUrl": "https://www.anchorterminal.com/tools/mailpace.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/mailpace.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/mailpace.json",
      "dns": "mailpace.grade.anchorterminal.com",
      "repo": "https://github.com/mailpace/mailpace-mcp",
      "transports": [
        "http"
      ],
      "packages": [
        {
          "registry": "npm",
          "name": "@mailpace/mailpace.js"
        }
      ],
      "auth": "api-key",
      "authNotes": "Each domain has its own server token, sent in the `MailPace-Server-Token` header, which can send from that domain and read its email status. An organisation token in `MailPace-Organization-Token` manages domains and domain tokens through the Domains API, including revoking them. Both are made in the dashboard after a browser signup.",
      "pricing": "paid",
      "pricingNotes": "$10 a month includes 10,000 emails sent or received, then $1 per 1,000, per the Paddle prices the pricing page loads and the comparison pages ($100 for 100,000, $1,000 for 1 million). A free plan of up to 100 emails a month is given on request by email. Paddle is the merchant of record; card, PayPal, Apple Pay or Google Pay.",
      "priceSummary": "$10 / mo",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the docs repository, the pricing page or the MCP server source (checked 2026-11-06). Payment is by Paddle subscription; the FAQ says crypto isn't accepted.",
        "endpoints": []
      },
      "toolCount": 12,
      "popularity": {
        "githubStars": 1,
        "npmWeekly": 207,
        "pypiWeekly": null,
        "asOf": "2026-11-06"
      },
      "docsUrl": "https://docs.mailpace.com/",
      "capabilities": [
        "email.send",
        "email.inbound",
        "email.domains",
        "email.analytics"
      ],
      "tags": [
        "hosted",
        "closed-source",
        "smtp",
        "webhooks",
        "idempotency",
        "status-page",
        "sla",
        "eu",
        "mcp",
        "typescript",
        "ruby",
        "go",
        "php"
      ],
      "lastRelease": "2026-10-22",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 58.4,
        "grade": "C",
        "agentReady": false,
        "rank": 750,
        "ranked": true,
        "rankOf": 1486,
        "categoryRank": 17,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 71,
          "maintenance": 65,
          "payments": 25,
          "reliability": 70,
          "schema": 54,
          "security": 50,
          "transparency": 75
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-06"
        },
        "negative": 0,
        "verdict": "A small transactional sender with idempotent sends, signed webhooks, a 99% availability promise in its terms and a public Upptime status record. There is no OpenAPI spec, no published rate limit, no llms.txt, and its MCP server was rewritten on 4 November 2026 but isn't on npm or in the MCP registry yet.",
        "bestFor": "Low-volume transactional mail from EU-hosted infrastructure with idempotent sends and no tracking.",
        "strengths": [
          "Sends accept an `Idempotency-Key` header kept for 24 hours, so a retry after a timeout doesn't send twice",
          "Per-domain server tokens limit a leaked key to one domain, and organisation tokens can create and revoke them by API",
          "Webhooks are signed with Ed25519 and inbound mail is retried five times before it fails",
          "Status page on Upptime with GitHub issues as incident reports, and a 99% monthly availability promise with credits in the terms",
          "Sub-processors and their locations are listed, and mail is kept 30 days plus 7 in backups per the DPA"
        ],
        "weaknesses": [
          "No OpenAPI spec, llms.txt or Markdown docs for agents; the reference is Docusaurus pages",
          "Rate limits aren't published; the docs say they vary by organisation age, plan and history",
          "No free plan without emailing support, and the paid plan starts at $10 a month",
          "MCP server 2.0.0 exists only in the repository; npm and the MCP registry had nothing for it on 6 November 2026",
          "No security.txt, disclosure policy or certification found"
        ],
        "agentNotes": [
          "Send a UUID in `Idempotency-Key` on every `POST /api/v1/send`, and reuse it on a retry; keys last 24 hours and are tied to one token",
          "Use the server token of the sending domain, since the From domain must match the token's domain or the API returns 403",
          "On 429 `You are sending emails too quickly` back off; no Retry-After is documented",
          "Send only transactional mail; marketing and bulk newsletters are prohibited by the docs and terms",
          "Read delivery with `GET /api/v1/domains/:domain_id/emails/:id` using the id the send returned"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "C",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 58.4
          }
        ],
        "editorialScores": {
          "ergonomics": 71,
          "maintenance": 65,
          "payments": 25,
          "reliability": 70,
          "schema": 54,
          "security": 50,
          "transparency": 69
        },
        "provenanceScore": 81,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-06",
            "maintenance": "2026-11-06",
            "payments": "2026-11-06",
            "reliability": "2026-11-06",
            "schema": "2026-11-06",
            "security": "2026-11-06",
            "transparency": "2026-11-06"
          },
          "last": "2026-11-06",
          "oldest": "2026-11-06",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "http": "curl https://app.mailpace.com/api/v1/send -X POST -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"MailPace-Server-Token: $MAILPACE_TOKEN\" -H \"Idempotency-Key: $(uuidgen)\" -d '{\"from\":\"you@yourdomain.com\",\"to\":\"person@example.com\",\"subject\":\"Hello\",\"textbody\":\"Hello\"}'"
      },
      "letme": {
        "capability": "https://letme.dev/email.send",
        "tool": "https://letme.dev/mailpace"
      },
      "area": "communication",
      "unitPrices": [
        {
          "item": "Scaling plan",
          "unit": "month",
          "usd": 10,
          "note": "includes 10,000 emails sent or received"
        },
        {
          "item": "Emails beyond 10,000",
          "unit": "1k-emails",
          "usd": 1
        }
      ],
      "provenance": {
        "legalEntity": "OhMySMTP Ltd",
        "domain": "mailpace.com",
        "domainRegistered": "2022-01-10",
        "endpointOnVendorDomain": true,
        "terms": "https://mailpace.com/terms",
        "privacy": "https://mailpace.com/privacy",
        "statusPage": "https://status.mailpace.com",
        "changelog": "https://mailpace.com/category/changelog",
        "securityTxt": "none",
        "checked": "2026-11-06",
        "notes": [
          "The terms and privacy policy name OhMySMTP Ltd, incorporated in England and Wales, company number 13200428. Companies House lists two active directors.",
          "Terms last updated 9 January 2026, privacy policy 30 August 2026, DPA updated in October 2026 per the landing repository.",
          "mailpace.com/robots.txt allows all paths. The terms contain no clause on automated access to the website beyond the usual licence limits.",
          "RDAP gives mailpace.com a registration date of 10 January 2022; the service ran as OhMySMTP before that.",
          "/.well-known/security.txt returns 404 on mailpace.com and app.mailpace.com."
        ],
        "score": 81
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/mailpace.json",
      "live": {
        "slug": "mailpace",
        "vendorStatus": {
          "page": "https://status.mailpace.com",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-11-07T04:48:01.553362214Z"
        },
        "versions": [
          {
            "registry": "npm",
            "name": "@mailpace/mailpace.js",
            "version": "0.1.3",
            "seenAt": "2026-11-06T23:42:02.752996422Z"
          }
        ],
        "githubStars": 1,
        "npmWeekly": 207,
        "securityTxt": {
          "url": "https://mailpace.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-07T16:01:07.630537329Z"
        },
        "pages": [
          {
            "url": "https://mailpace.com/category/changelog",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-11-07T14:13:40.841899008Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "38f92a159d1b"
          },
          {
            "url": "https://mailpace.com/privacy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-11-07T14:13:45.28058492Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "e6b0fea49c1d"
          },
          {
            "url": "https://mailpace.com/terms",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-11-07T14:13:45.480605157Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "24f1eed01dad"
          }
        ],
        "updatedAt": "2026-11-07T16:01:07.630537329Z"
      }
    },
    "answer": "Twilio SendGrid scores 68.8 (B) on agent readiness against MailPace's 58.4 (C), and leads in 6 of 7 scored categories. MailPace leads on agent ergonomics.",
    "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",
      "dns": "sendgrid.grade.anchorterminal.com",
      "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": 68.8,
        "grade": "B",
        "agentReady": false,
        "rank": 270,
        "ranked": true,
        "rankOf": 1486,
        "categoryRank": 7,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 60,
          "maintenance": 67,
          "payments": 30,
          "reliability": 76,
          "schema": 79,
          "security": 81,
          "transparency": 82
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-01"
        },
        "negative": 0,
        "verdict": "Restricted API keys with per-endpoint scopes, subuser keys and IP access management, and SendGrid docs now listed in Twilio's llms.txt. No official MCP server that can send, and the Node, Python and Go SDKs haven't shipped since September 2025.",
        "bestFor": "Teams already on Twilio, or that want Marketing Campaigns, subusers and fine-grained keys in one account.",
        "strengths": [
          "Restricted API keys with per-endpoint scopes, subuser keys and IP access management",
          "OpenAPI 3.1 specs for the whole v3 API",
          "SendGrid docs listed in Twilio's llms.txt and served as Markdown",
          "Status history from August to October 2026 shows only minor SendGrid incidents",
          "Twilio SOC 2 Type II, ISO 27001 and a HackerOne bug bounty"
        ],
        "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",
          "Call api.sendgrid.com and smtp.sendgrid.net by name. Legacy SendGrid IP addresses were retired from 31 August 2026",
          "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.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 68.8
          }
        ],
        "editorialScores": {
          "ergonomics": 60,
          "maintenance": 67,
          "payments": 30,
          "reliability": 76,
          "schema": 79,
          "security": 81,
          "transparency": 73
        },
        "provenanceScore": 91,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-01",
            "maintenance": "2026-11-01",
            "payments": "2026-11-01",
            "reliability": "2026-11-01",
            "schema": "2026-11-01",
            "security": "2026-11-01",
            "transparency": "2026-11-01"
          },
          "last": "2026-11-01",
          "lastMoved": "2026-10-17",
          "oldest": "2026-11-01",
          "stale": false,
          "staleAfterDays": 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": 91
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/sendgrid.json",
      "live": {
        "slug": "sendgrid",
        "probe": {
          "target": "https://api.sendgrid.com/v3",
          "method": "get",
          "lastAt": "2026-11-07T18:20:53.650569536Z",
          "lastOk": true,
          "lastStatus": 401,
          "lastMs": 183,
          "lastNote": "asks for credentials",
          "authRequired": true,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 160,
          "p95ms24h": 248,
          "samples24h": 239,
          "samples30d": 7910,
          "days": [
            {
              "date": "2026-10-07",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-08",
              "probes": 268,
              "ok": 268
            },
            {
              "date": "2026-10-09",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-10-10",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-11",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-12",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-13",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-14",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-15",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-16",
              "probes": 252,
              "ok": 252
            },
            {
              "date": "2026-10-17",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-18",
              "probes": 256,
              "ok": 256
            },
            {
              "date": "2026-10-19",
              "probes": 255,
              "ok": 255
            },
            {
              "date": "2026-10-20",
              "probes": 252,
              "ok": 252
            },
            {
              "date": "2026-10-21",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-22",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-23",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-24",
              "probes": 251,
              "ok": 251
            },
            {
              "date": "2026-10-25",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-10-26",
              "probes": 252,
              "ok": 252
            },
            {
              "date": "2026-10-27",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-28",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-10-29",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-30",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-31",
              "probes": 251,
              "ok": 251
            },
            {
              "date": "2026-11-01",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-11-02",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-11-03",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-11-04",
              "probes": 246,
              "ok": 246
            },
            {
              "date": "2026-11-05",
              "probes": 185,
              "ok": 185
            },
            {
              "date": "2026-11-06",
              "probes": 241,
              "ok": 241
            },
            {
              "date": "2026-11-07",
              "probes": 187,
              "ok": 187
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.twilio.com",
          "indicator": "minor",
          "summary": "Partially Degraded Service",
          "checkedAt": "2026-11-07T18:22:00.48610288Z"
        },
        "versions": [
          {
            "registry": "github",
            "name": "sendgrid/sendgrid-nodejs",
            "version": "8.1.6",
            "released": "2025-09-19",
            "seenAt": "2026-11-07T00:04:32.931127012Z"
          },
          {
            "registry": "npm",
            "name": "@sendgrid/mail",
            "version": "8.1.6",
            "seenAt": "2026-11-07T00:04:31.986829345Z"
          },
          {
            "registry": "pypi",
            "name": "sendgrid",
            "version": "6.12.5",
            "released": "2025-09-19",
            "seenAt": "2026-11-07T00:04:32.822327107Z"
          }
        ],
        "githubStars": 3053,
        "npmWeekly": 6504572,
        "pypiWeekly": 5702968,
        "securityTxt": {
          "url": "https://sendgrid.com/.well-known/security.txt",
          "state": "unknown",
          "checkedAt": "2026-11-07T16:01:40.223586078Z"
        },
        "llmsTxt": {
          "url": "https://www.twilio.com/docs/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-11-07T15:33:54.065514176Z"
        },
        "domain": {
          "domain": "sendgrid.com",
          "registered": "2009-04-20",
          "source": "https://rdap.verisign.com/com/v1/domain/sendgrid.com",
          "checkedAt": "2026-11-01T14:13:57.124679158Z"
        },
        "pages": [
          {
            "url": "https://www.twilio.com/en-us/changelog",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-11-07T14:36:06.283237055Z",
            "changedAt": "2026-11-07T14:36:06.283237055Z",
            "fingerprint": "9086de2070b8"
          },
          {
            "url": "https://www.twilio.com/en-us/products/email-api/pricing",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-11-07T14:36:22.778097734Z",
            "changedAt": "2026-11-05T13:19:39.863717368Z",
            "fingerprint": "9d0288488752"
          },
          {
            "url": "https://www.twilio.com/en-us/legal/privacy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-11-07T14:36:19.091730974Z",
            "changedAt": "2026-11-04T08:46:58.727124173Z",
            "fingerprint": "fbee832e7ba9"
          },
          {
            "url": "https://www.twilio.com/en-us/legal/tos",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-11-07T14:36:21.117155888Z",
            "changedAt": "2026-11-04T08:47:00.78396973Z",
            "fingerprint": "ff93c9652945"
          }
        ],
        "github": {
          "repo": "sendgrid/sendgrid-nodejs",
          "checkedAt": "2026-11-02T09:24:37.898780612Z",
          "stars": 3054,
          "archived": false,
          "issuesEnabled": true,
          "pushedAt": "2026-10-28T08:19:25Z",
          "openIssues": 54,
          "openPRs": 49,
          "issuesOpened90d": 1,
          "issuesClosed90d": 0,
          "prsMerged90d": 0,
          "ci": {
            "branch": "main",
            "runs": 2,
            "success": 2,
            "failure": 0,
            "other": 0,
            "latest": "success",
            "latestAt": "2026-10-20T01:17:49Z"
          },
          "replies": {
            "sampled": 25,
            "unanswered": 23,
            "medianDays": 0.3
          }
        },
        "updatedAt": "2026-11-07T18:22:00.48610288Z"
      }
    },
    "edges": [
      {
        "by": 31,
        "category": "security",
        "leads": "sendgrid",
        "name": "Security \u0026 auth",
        "reasons": {
          "a": "Per-domain server tokens that can only send from and read status for their domain, and an organisation token that creates, renames and revokes domain tokens through the Domains API. Tokens travel in headers only. The authentication page still tells users to contact support to regenerate a leaked token (25 of 30). No read-only token. A domain token can't touch other domains, and the unpublished MCP server has an optional recipient allowlist. No approval step on the hosted API (8 of 20). Inbound mail reaches the customer's webhook as untrusted content, and Email Status returns bounce text. The MCP README warns about prompt injection and suggests the allowlist (9 of 15). The dashboard keeps sent mail for 30 days; no log of API calls was found (6 of 15). No security.txt (404 on mailpace.com and app.mailpace.com), no disclosure policy, bug bounty, SOC 2 or ISO 27001. WebAuthn-only two-factor sign-in and Ed25519-signed webhooks are documented (2 of 20). Total 50.",
          "b": "Bearer keys with full, restricted or billing access, restricted keys carry per-endpoint scopes, subusers get their own keys, and IP access management limits where keys work (30). A key can hold only `mail.send`, and read-only scopes exist (18). The API doesn't return third-party content. Inbound Parse posts to your own URL (10). Email Activity keeps 3 or 7 days of message events by plan. We found no audit log of key use (8). Twilio holds SOC 2 Type II and ISO 27001, 27017 and 27018, though it says not every credential covers every product, and runs a HackerOne bug bounty and a disclosure programme. www.twilio.com/.well-known/security.txt returned 404 and sendgrid.com's returned 403 on 17 October. Key scopes, IP access management and certifications are per the 1 October check (15)."
        },
        "scores": {
          "a": 50,
          "b": 81
        }
      },
      {
        "by": 25,
        "category": "schema",
        "leads": "sendgrid",
        "name": "Schema \u0026 documentation",
        "reasons": {
          "a": "No OpenAPI or other machine-readable contract for the HTTPS API. The MCP server's 12 tools have typed zod inputs and output schemas, but that server isn't published yet, so partial credit (8 of 25). llms.txt answers 404 on mailpace.com and docs.mailpace.com, and no Markdown copies are served (0). The reference states what each endpoint does, and the introduction says when not to use it (transactional only, no batch, no static IPs) (12 of 20). Field tables give type, examples and required or optional, with enums for status, sort and direction and the 50-recipient cap in text (9 of 15). Examples in curl and six languages and a full table of error responses with messages, though several listed messages have a broken quote (`{\"error:\"...`) and the send reference says 30 MB where the home page says 25 MB (12 of 15). Version in the path with a promise that an old version runs until a published end-of-life date, and dated changelog posts (13 of 15). Total 54.",
          "b": "OpenAPI 3.1 specs for the whole v3 API in 46 JSON files at twilio/sendgrid-oai, regenerated on 28 October 2026 and tagged 1.0.0.-rc.14, still a release candidate (25). Twilio's docs-wide llms.txt now has a Twilio SendGrid section linking SendGrid pages as Markdown, and the pages answer at a `.md` URL as text/markdown (10). The reference describes each endpoint but not when to avoid one (10). Typed from OpenAPI (12). Examples in the reference, and the spec documents an ErrorResponse with field and help on mail/send (12). v3 API and a CHANGELOG in the spec repository. Twilio's changelog can be filtered by product, but SendGrid entries sit under three product names (10)."
        },
        "scores": {
          "a": 54,
          "b": 79
        }
      },
      {
        "by": 11,
        "category": "ergonomics",
        "leads": "mailpace",
        "name": "Agent ergonomics",
        "reasons": {
          "a": "Responses are small, the send returns an id and status and Email Status returns one email (18 of 25). Only the domains list takes `limit`, `offset`, `sort` and `direction`; there is no endpoint to list or search sent mail (8 of 20). Errors are JSON with a human message and an HTTP status for each case in the documented table, with no stable error codes (14 of 20). `Idempotency-Key` on sends, kept 24 hours per token, and failed validations are not stored so they can be retried. The MCP server marks send as not idempotent and revoke as destructive (18 of 20). A send needs from, to, a subject and a body; official libraries for Node, Rails, Go and PHP transports and an SMTP route (13 of 15). Total 71.",
          "b": "No official MCP that sends. POST /v3/mail/send returns 202 with no body, and Email Activity takes a query and a limit (12). limit and offset on suppressions and other lists (15). Error bodies name the field and link to help (15). No idempotency key on mail/send, so a retried send can go out twice. `mail_settings.sandbox_mode` validates without delivering (6). SDKs in seven languages, but personalizations make the simplest send a nested object (12)."
        },
        "scores": {
          "a": 71,
          "b": 60
        }
      },
      {
        "by": 7,
        "category": "transparency",
        "leads": "sendgrid",
        "name": "Transparency \u0026 trust",
        "reasons": {
          "a": "Closed hosted service under terms that name OhMySMTP Ltd with its company number. The MCP server, SDKs, landing site and status page are MIT (18 of 30). The privacy policy (30 August 2026), the pricing page and the DPA agree on retention, 30 days in the dashboard and 7 more in backups, 37 days at most (25 of 30). The API reference promises an old version runs until a published end-of-life date, and the terms list dated changes. The terms also say changes apply immediately (8 of 20). Sub-processors listed with purpose and location, Freethought hosting in the EU, Hetzner backups in Germany, AppSignal in Amsterdam, Paddle in the UK and Tutanota in Germany (18 of 20). Total 69.",
          "b": "Closed service under Twilio's terms, with MIT SDKs (20). The privacy notice (9 April 2026) and the DPA (9 April 2026) agree, per the 2 October check, not re-read on 17 October. Customer content is deleted 30 days after termination and from backups after 60 days, or one year for SendGrid backups, Email Activity keeps 3 or 7 days of events by plan, and SendGrid tracks opens and clicks with web beacons, which the notice discloses. Account data is kept \"as long as needed\" with no number (25 of 30). Dated deprecation notices exist but with short notice. The removal of legacy SendGrid IP addresses for the API and SMTP was posted on 19 August 2026 for temporary disablement from 24 August and permanent removal on 31 August, and the Domain Authentication change was announced effective the same day, 3 August. Below the 12 given to Twilio for a seven-day notice (10). Twilio's subprocessor page, updated September 2026, lists AWS for email routing in the USA and EU and AWS and Snowflake for Marketing Campaigns in the USA, and the DPA promises 10 days' notice of a new subprocessor and 30 for an infrastructure provider, per the 1 October check (18)."
        },
        "scores": {
          "a": 75,
          "b": 82
        }
      },
      {
        "by": 6,
        "category": "reliability",
        "leads": "sendgrid",
        "name": "Reliability",
        "reasons": {
          "a": "Graded with the hosted lines. A public Upptime status page at status.mailpace.com, driven by the mailpace/status repository, with monitors for the application, SMTP, docs, blog and landing page and GitHub issues as incident reports (20). The 90 days from 8 August hold two incidents, an application outage on 22 September 2026 that the operator put down to an upstream provider returning 5xx (issue open for two minutes), and SMTP down on 2 November 2026 for about 35 minutes, which leaves SMTP at 99.65% for the week. Minor incidents only (20). No rate limit numbers are published; the docs say limits vary by organisation age, plan and history (0). A documented 429 with its message, no Retry-After or backoff guidance, and an `Idempotency-Key` on sends with written retry rules (10 of 15). The terms guarantee 99% monthly availability of the API and dashboard with a 5% credit per 30 minutes (10). The API is at v1 with no beta label (10). Total 70.",
          "b": "SendGrid components (Mail Sending with API v3, SMTP and API v2, Webhooks with Event Webhooks and Parse API, the SendGrid API, Marketing Campaigns, Statistics, Email Activity and more) sit on status.twilio.com (20). The history pages, re-read on 1 November, carry the incident data without a script. From 3 August to 1 November 2026 the incidents on SendGrid were minor, marked no impact or announced maintenance. Block-list suppressions updated late on the API from 31 August to 1 September (minor). Link Branding creation with automatic SSL failed with HTTP 500 on 24 September, 09:22 to 11:26 PDT (minor). A small subset of Event Webhook events was delayed on 24 September, 13:40 to 19:24 PDT (minor). Suppression changes weren't applied from 24 to 29 September, so a very small amount of mail went undelivered and some unsubscribes weren't saved, posted on 15 October with no impact marked. A subset of customers saw email deferrals on 1 and 2 October (no impact). SendGrid users on Azure Marketplace couldn't complete setup or plan changes on 24 October from 09:36 to 15:54 PDT (minor, SendGrid Partners only). The 28 October maintenance that delayed some delivery and account changes was announced on 23 October. We read none of these as an hour of a core API down or wide errors, so minor only (20). Per-endpoint limits come back in X-RateLimit headers, but the docs, last modified 2 July 2026, give no numbers, per the 17 October check (8). 429 with X-RateLimit-Reset, and no backoff or idempotency guidance (8). The Twilio APIs SLA, updated 9 April 2026, names the SendGrid Mail Send API among its Services APIs at 99.95 per cent, or 99.99 per cent with Enterprise Edition or a premium email package, with a 10 per cent service credit, per the 2 October check (10). GA (10)."
        },
        "scores": {
          "a": 70,
          "b": 76
        }
      },
      {
        "by": 5,
        "category": "payments",
        "leads": "sendgrid",
        "name": "Payments \u0026 pricing",
        "reasons": {
          "a": "No x402, MPP or L402 (0). $10 a month for 10,000 emails and $1 per 1,000 after, loaded from Paddle on the pricing page and stated in the comparison pages' tables without login (20). A free plan of up to 100 emails a month is available only by emailing support, so it isn't self-serve (5 of 20). Signup, DKIM verification and payment happen in a browser (0). Total 25.",
          "b": "No x402, MPP or L402 (0). Plan prices are public, but overage rates per 1,000 aren't (10). A 60-day trial at 100 emails a day with no card (20). Browser signup and sender verification, no autonomous route (0)."
        },
        "scores": {
          "a": 25,
          "b": 30
        }
      }
    ],
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "OhMySMTP Ltd",
        "b": "Twilio",
        "name": "Vendor"
      },
      {
        "a": "no (local only)",
        "b": "https://api.sendgrid.com/v3",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP",
        "b": "HTTP",
        "name": "Transports"
      },
      {
        "a": "API key",
        "b": "API key",
        "name": "Auth"
      },
      {
        "a": "Paid",
        "b": "Paid",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "none",
        "b": "MIT",
        "name": "Licence"
      },
      {
        "a": "12",
        "b": "none",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "no",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-10-22",
        "b": "2025-09-19",
        "name": "Last release"
      },
      {
        "a": "2026-01-09",
        "b": "2026-07-16",
        "name": "Terms last updated"
      },
      {
        "a": "2026-08-30",
        "b": "2026-04-09",
        "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": "not found in the text",
        "b": "not found in the text",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "1 stars, 207 npm/wk",
        "b": "3.1k stars, 5.5M npm/wk, 4.6M PyPI/wk",
        "name": "Popularity"
      },
      {
        "a": "none",
        "b": "2.5/5 (2)",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "Twilio SendGrid scores 68.8 (B) on agent readiness against MailPace's 58.4 (C), and leads in 6 of 7 scored categories. MailPace leads on agent ergonomics.",
        "question": "Which is better for AI agents, MailPace or Twilio SendGrid?"
      },
      {
        "answer": "Both need an API key.",
        "question": "Do MailPace and Twilio SendGrid need an API key?"
      },
      {
        "answer": "No hosted endpoint is listed for MailPace. Twilio SendGrid has a hosted endpoint at https://api.sendgrid.com/v3.",
        "question": "Can an agent call MailPace and Twilio SendGrid without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Agent ergonomics, 71 against 60"
        ],
        "also": null,
        "goodFor": "Low-volume transactional mail from EU-hosted infrastructure with idempotent sends and no tracking.",
        "slug": "mailpace",
        "watchFor": "No OpenAPI spec, llms.txt or Markdown docs for agents; the reference is Docusaurus pages"
      },
      {
        "aheadOn": [
          "Reliability, 76 against 70",
          "Schema \u0026 documentation, 79 against 54",
          "Security \u0026 auth, 81 against 50",
          "Payments \u0026 pricing, 30 against 25",
          "Transparency \u0026 trust, 82 against 75"
        ],
        "also": [
          "A hosted endpoint, with nothing to install",
          "Free to start without a card"
        ],
        "goodFor": "Teams already on Twilio, or that want Marketing Campaigns, subusers and fine-grained keys in one account.",
        "slug": "sendgrid",
        "watchFor": "No official MCP server that can send, only Twilio's docs search"
      }
    ],
    "history": {
      "mailpace": null,
      "sendgrid": [
        {
          "causes": [
            "product",
            "evidence"
          ],
          "date": "2026-10-17",
          "delta": 5.2,
          "from": 63.6,
          "fromGrade": "B",
          "to": 68.8,
          "toGrade": "B"
        }
      ]
    },
    "job": {
      "capability": "email.send",
      "name": "Sending email"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/ahasend-vs-mailpace.json",
        "title": "AhaSend API + MCP vs MailPace",
        "url": "https://www.anchorterminal.com/compare/ahasend-vs-mailpace"
      },
      {
        "json": "https://www.anchorterminal.com/compare/ahasend-vs-sendgrid.json",
        "title": "AhaSend API + MCP vs Twilio SendGrid",
        "url": "https://www.anchorterminal.com/compare/ahasend-vs-sendgrid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-ses-vs-mailpace.json",
        "title": "Amazon SES vs MailPace",
        "url": "https://www.anchorterminal.com/compare/amazon-ses-vs-mailpace"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-ses-vs-sendgrid.json",
        "title": "Amazon SES vs Twilio SendGrid",
        "url": "https://www.anchorterminal.com/compare/amazon-ses-vs-sendgrid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/brevo-vs-mailpace.json",
        "title": "Brevo API + MCP vs MailPace",
        "url": "https://www.anchorterminal.com/compare/brevo-vs-mailpace"
      },
      {
        "json": "https://www.anchorterminal.com/compare/brevo-vs-sendgrid.json",
        "title": "Brevo API + MCP vs Twilio SendGrid",
        "url": "https://www.anchorterminal.com/compare/brevo-vs-sendgrid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cloudflare-email-service-vs-mailpace.json",
        "title": "Cloudflare Email Service vs MailPace",
        "url": "https://www.anchorterminal.com/compare/cloudflare-email-service-vs-mailpace"
      },
      {
        "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/groundmail-vs-mailpace.json",
        "title": "Groundmail API + MCP vs MailPace",
        "url": "https://www.anchorterminal.com/compare/groundmail-vs-mailpace"
      },
      {
        "json": "https://www.anchorterminal.com/compare/groundmail-vs-sendgrid.json",
        "title": "Groundmail API + MCP vs Twilio SendGrid",
        "url": "https://www.anchorterminal.com/compare/groundmail-vs-sendgrid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/loops-vs-mailpace.json",
        "title": "Loops API + MCP vs MailPace",
        "url": "https://www.anchorterminal.com/compare/loops-vs-mailpace"
      },
      {
        "json": "https://www.anchorterminal.com/compare/loops-vs-sendgrid.json",
        "title": "Loops API + MCP vs Twilio SendGrid",
        "url": "https://www.anchorterminal.com/compare/loops-vs-sendgrid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mailersend-vs-mailpace.json",
        "title": "MailerSend vs MailPace",
        "url": "https://www.anchorterminal.com/compare/mailersend-vs-mailpace"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mailersend-vs-sendgrid.json",
        "title": "MailerSend vs Twilio SendGrid",
        "url": "https://www.anchorterminal.com/compare/mailersend-vs-sendgrid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mailgun-vs-mailpace.json",
        "title": "Mailgun API + MCP vs MailPace",
        "url": "https://www.anchorterminal.com/compare/mailgun-vs-mailpace"
      },
      {
        "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/mailjet-vs-mailpace.json",
        "title": "Mailjet API + MCP vs MailPace",
        "url": "https://www.anchorterminal.com/compare/mailjet-vs-mailpace"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mailjet-vs-sendgrid.json",
        "title": "Mailjet API + MCP vs Twilio SendGrid",
        "url": "https://www.anchorterminal.com/compare/mailjet-vs-sendgrid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mailpace-vs-mailtrap.json",
        "title": "MailPace vs Mailtrap Email API + MCP",
        "url": "https://www.anchorterminal.com/compare/mailpace-vs-mailtrap"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mailpace-vs-mandrill.json",
        "title": "MailPace vs Mailchimp Transactional (Mandrill)",
        "url": "https://www.anchorterminal.com/compare/mailpace-vs-mandrill"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mailpace-vs-postmark.json",
        "title": "MailPace vs Postmark API + MCP",
        "url": "https://www.anchorterminal.com/compare/mailpace-vs-postmark"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mailpace-vs-resend.json",
        "title": "MailPace vs Resend API + MCP",
        "url": "https://www.anchorterminal.com/compare/mailpace-vs-resend"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mailpace-vs-sendlayer.json",
        "title": "MailPace vs SendLayer",
        "url": "https://www.anchorterminal.com/compare/mailpace-vs-sendlayer"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mailpace-vs-smtp2go.json",
        "title": "MailPace vs SMTP2GO API + MCP",
        "url": "https://www.anchorterminal.com/compare/mailpace-vs-smtp2go"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mailpace-vs-zoho-zeptomail.json",
        "title": "MailPace vs Zoho CPaaS (formerly ZeptoMail)",
        "url": "https://www.anchorterminal.com/compare/mailpace-vs-zoho-zeptomail"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mailtrap-vs-sendgrid.json",
        "title": "Mailtrap Email API + MCP vs Twilio SendGrid",
        "url": "https://www.anchorterminal.com/compare/mailtrap-vs-sendgrid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mandrill-vs-sendgrid.json",
        "title": "Mailchimp Transactional (Mandrill) vs Twilio SendGrid",
        "url": "https://www.anchorterminal.com/compare/mandrill-vs-sendgrid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/postmark-vs-sendgrid.json",
        "title": "Postmark API + MCP vs Twilio SendGrid",
        "url": "https://www.anchorterminal.com/compare/postmark-vs-sendgrid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/resend-vs-sendgrid.json",
        "title": "Resend API + MCP vs Twilio SendGrid",
        "url": "https://www.anchorterminal.com/compare/resend-vs-sendgrid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/sendgrid-vs-sendlayer.json",
        "title": "Twilio SendGrid vs SendLayer",
        "url": "https://www.anchorterminal.com/compare/sendgrid-vs-sendlayer"
      },
      {
        "json": "https://www.anchorterminal.com/compare/sendgrid-vs-smtp2go.json",
        "title": "Twilio SendGrid vs SMTP2GO API + MCP",
        "url": "https://www.anchorterminal.com/compare/sendgrid-vs-smtp2go"
      },
      {
        "json": "https://www.anchorterminal.com/compare/sendgrid-vs-zoho-zeptomail.json",
        "title": "Twilio SendGrid vs Zoho CPaaS (formerly ZeptoMail)",
        "url": "https://www.anchorterminal.com/compare/sendgrid-vs-zoho-zeptomail"
      }
    ],
    "panel": null,
    "scores": [
      {
        "by": 6,
        "edge": "sendgrid",
        "key": "reliability",
        "mailpace": 70,
        "name": "Reliability",
        "sendgrid": 76,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 25,
        "edge": "sendgrid",
        "key": "schema",
        "mailpace": 54,
        "name": "Schema \u0026 documentation",
        "sendgrid": 79,
        "weight": 13
      },
      {
        "by": 11,
        "edge": "mailpace",
        "key": "ergonomics",
        "mailpace": 71,
        "name": "Agent ergonomics",
        "sendgrid": 60,
        "weight": 13
      },
      {
        "by": 31,
        "edge": "sendgrid",
        "key": "security",
        "mailpace": 50,
        "name": "Security \u0026 auth",
        "sendgrid": 81,
        "weight": 14
      },
      {
        "by": 5,
        "edge": "sendgrid",
        "key": "payments",
        "mailpace": 25,
        "name": "Payments \u0026 pricing",
        "sendgrid": 30,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 2,
        "edge": "sendgrid",
        "key": "maintenance",
        "mailpace": 65,
        "name": "Maintenance \u0026 community",
        "sendgrid": 67,
        "weight": 7
      },
      {
        "by": 7,
        "edge": "sendgrid",
        "key": "transparency",
        "mailpace": 75,
        "name": "Transparency \u0026 trust",
        "sendgrid": 82,
        "weight": 7
      }
    ],
    "summary": "Twilio SendGrid scores 68.8 (B) on agent readiness against MailPace's 58.4 (C), and leads in 6 of 7 scored categories. MailPace leads on agent ergonomics. Both do sending email.",
    "tasks": null,
    "tutorials": [],
    "verdicts": {
      "mailpace": "A small transactional sender with idempotent sends, signed webhooks, a 99% availability promise in its terms and a public Upptime status record. There is no OpenAPI spec, no published rate limit, no llms.txt, and its MCP server was rewritten on 4 November 2026 but isn't on npm or in the MCP registry yet.",
      "sendgrid": "Restricted API keys with per-endpoint scopes, subuser keys and IP access management, and SendGrid docs now listed in Twilio's llms.txt. No official MCP server that can send, and the Node, Python and Go SDKs haven't shipped since September 2025."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/mailpace-vs-sendgrid",
    "json": "https://www.anchorterminal.com/compare/mailpace-vs-sendgrid.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/mailpace-vs-sendgrid.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/mailpace-vs-sendgrid.min.md"
  },
  "markdown": "Twilio SendGrid scores 68.8 (B) on agent readiness against MailPace's 58.4 (C), and leads in 6 of 7 scored categories. MailPace leads on agent ergonomics. Both do sending email.\n\n- MailPace: grade C, 58.4/100, rank #750 of 1486. Markdown https://www.anchorterminal.com/tools/mailpace.md · JSON https://www.anchorterminal.com/api/v1/tools/mailpace.json\n- Twilio SendGrid: grade B, 68.8/100, rank #270 of 1486. Markdown https://www.anchorterminal.com/tools/sendgrid.md · JSON https://www.anchorterminal.com/api/v1/tools/sendgrid.json\n- Best email delivery APIs for AI agents: https://www.anchorterminal.com/best/email/index.md\n- All 174 email comparisons: https://www.anchorterminal.com/compare/email/index.md\n\n## Which one, for what\n\n### MailPace (C)\n\nGood for: Low-volume transactional mail from EU-hosted infrastructure with idempotent sends and no tracking.\n\nAhead on:\n- Agent ergonomics, 71 against 60\n\nWatch for: No OpenAPI spec, llms.txt or Markdown docs for agents; the reference is Docusaurus pages\n\n### Twilio SendGrid (B)\n\nGood for: Teams already on Twilio, or that want Marketing Campaigns, subusers and fine-grained keys in one account.\n\nAhead on:\n- Reliability, 76 against 70\n- Schema \u0026 documentation, 79 against 54\n- Security \u0026 auth, 81 against 50\n- Payments \u0026 pricing, 30 against 25\n- Transparency \u0026 trust, 82 against 75\n\nAlso in its favour:\n- A hosted endpoint, with nothing to install\n- Free to start without a card\n\nWatch for: No official MCP server that can send, only Twilio's docs search\n\n\n## Why the edge\n\n### Security \u0026 auth: Twilio SendGrid +31\n\n- MailPace (50): Per-domain server tokens that can only send from and read status for their domain, and an organisation token that creates, renames and revokes domain tokens through the Domains API. Tokens travel in headers only. The authentication page still tells users to contact support to regenerate a leaked token (25 of 30). No read-only token. A domain token can't touch other domains, and the unpublished MCP server has an optional recipient allowlist. No approval step on the hosted API (8 of 20). Inbound mail reaches the customer's webhook as untrusted content, and Email Status returns bounce text. The MCP README warns about prompt injection and suggests the allowlist (9 of 15). The dashboard keeps sent mail for 30 days; no log of API calls was found (6 of 15). No security.txt (404 on mailpace.com and app.mailpace.com), no disclosure policy, bug bounty, SOC 2 or ISO 27001. WebAuthn-only two-factor sign-in and Ed25519-signed webhooks are documented (2 of 20). Total 50.\n- Twilio SendGrid (81): Bearer keys with full, restricted or billing access, restricted keys carry per-endpoint scopes, subusers get their own keys, and IP access management limits where keys work (30). A key can hold only `mail.send`, and read-only scopes exist (18). The API doesn't return third-party content. Inbound Parse posts to your own URL (10). Email Activity keeps 3 or 7 days of message events by plan. We found no audit log of key use (8). Twilio holds SOC 2 Type II and ISO 27001, 27017 and 27018, though it says not every credential covers every product, and runs a HackerOne bug bounty and a disclosure programme. www.twilio.com/.well-known/security.txt returned 404 and sendgrid.com's returned 403 on 17 October. Key scopes, IP access management and certifications are per the 1 October check (15).\n\n### Schema \u0026 documentation: Twilio SendGrid +25\n\n- MailPace (54): No OpenAPI or other machine-readable contract for the HTTPS API. The MCP server's 12 tools have typed zod inputs and output schemas, but that server isn't published yet, so partial credit (8 of 25). llms.txt answers 404 on mailpace.com and docs.mailpace.com, and no Markdown copies are served (0). The reference states what each endpoint does, and the introduction says when not to use it (transactional only, no batch, no static IPs) (12 of 20). Field tables give type, examples and required or optional, with enums for status, sort and direction and the 50-recipient cap in text (9 of 15). Examples in curl and six languages and a full table of error responses with messages, though several listed messages have a broken quote (`{\"error:\"...`) and the send reference says 30 MB where the home page says 25 MB (12 of 15). Version in the path with a promise that an old version runs until a published end-of-life date, and dated changelog posts (13 of 15). Total 54.\n- Twilio SendGrid (79): OpenAPI 3.1 specs for the whole v3 API in 46 JSON files at twilio/sendgrid-oai, regenerated on 28 October 2026 and tagged 1.0.0.-rc.14, still a release candidate (25). Twilio's docs-wide llms.txt now has a Twilio SendGrid section linking SendGrid pages as Markdown, and the pages answer at a `.md` URL as text/markdown (10). The reference describes each endpoint but not when to avoid one (10). Typed from OpenAPI (12). Examples in the reference, and the spec documents an ErrorResponse with field and help on mail/send (12). v3 API and a CHANGELOG in the spec repository. Twilio's changelog can be filtered by product, but SendGrid entries sit under three product names (10).\n\n### Agent ergonomics: MailPace +11\n\n- MailPace (71): Responses are small, the send returns an id and status and Email Status returns one email (18 of 25). Only the domains list takes `limit`, `offset`, `sort` and `direction`; there is no endpoint to list or search sent mail (8 of 20). Errors are JSON with a human message and an HTTP status for each case in the documented table, with no stable error codes (14 of 20). `Idempotency-Key` on sends, kept 24 hours per token, and failed validations are not stored so they can be retried. The MCP server marks send as not idempotent and revoke as destructive (18 of 20). A send needs from, to, a subject and a body; official libraries for Node, Rails, Go and PHP transports and an SMTP route (13 of 15). Total 71.\n- Twilio SendGrid (60): No official MCP that sends. POST /v3/mail/send returns 202 with no body, and Email Activity takes a query and a limit (12). limit and offset on suppressions and other lists (15). Error bodies name the field and link to help (15). No idempotency key on mail/send, so a retried send can go out twice. `mail_settings.sandbox_mode` validates without delivering (6). SDKs in seven languages, but personalizations make the simplest send a nested object (12).\n\n### Transparency \u0026 trust: Twilio SendGrid +7\n\n- MailPace (75): Closed hosted service under terms that name OhMySMTP Ltd with its company number. The MCP server, SDKs, landing site and status page are MIT (18 of 30). The privacy policy (30 August 2026), the pricing page and the DPA agree on retention, 30 days in the dashboard and 7 more in backups, 37 days at most (25 of 30). The API reference promises an old version runs until a published end-of-life date, and the terms list dated changes. The terms also say changes apply immediately (8 of 20). Sub-processors listed with purpose and location, Freethought hosting in the EU, Hetzner backups in Germany, AppSignal in Amsterdam, Paddle in the UK and Tutanota in Germany (18 of 20). Total 69.\n- Twilio SendGrid (82): Closed service under Twilio's terms, with MIT SDKs (20). The privacy notice (9 April 2026) and the DPA (9 April 2026) agree, per the 2 October check, not re-read on 17 October. Customer content is deleted 30 days after termination and from backups after 60 days, or one year for SendGrid backups, Email Activity keeps 3 or 7 days of events by plan, and SendGrid tracks opens and clicks with web beacons, which the notice discloses. Account data is kept \"as long as needed\" with no number (25 of 30). Dated deprecation notices exist but with short notice. The removal of legacy SendGrid IP addresses for the API and SMTP was posted on 19 August 2026 for temporary disablement from 24 August and permanent removal on 31 August, and the Domain Authentication change was announced effective the same day, 3 August. Below the 12 given to Twilio for a seven-day notice (10). Twilio's subprocessor page, updated September 2026, lists AWS for email routing in the USA and EU and AWS and Snowflake for Marketing Campaigns in the USA, and the DPA promises 10 days' notice of a new subprocessor and 30 for an infrastructure provider, per the 1 October check (18).\n\n### Reliability: Twilio SendGrid +6\n\n- MailPace (70): Graded with the hosted lines. A public Upptime status page at status.mailpace.com, driven by the mailpace/status repository, with monitors for the application, SMTP, docs, blog and landing page and GitHub issues as incident reports (20). The 90 days from 8 August hold two incidents, an application outage on 22 September 2026 that the operator put down to an upstream provider returning 5xx (issue open for two minutes), and SMTP down on 2 November 2026 for about 35 minutes, which leaves SMTP at 99.65% for the week. Minor incidents only (20). No rate limit numbers are published; the docs say limits vary by organisation age, plan and history (0). A documented 429 with its message, no Retry-After or backoff guidance, and an `Idempotency-Key` on sends with written retry rules (10 of 15). The terms guarantee 99% monthly availability of the API and dashboard with a 5% credit per 30 minutes (10). The API is at v1 with no beta label (10). Total 70.\n- Twilio SendGrid (76): SendGrid components (Mail Sending with API v3, SMTP and API v2, Webhooks with Event Webhooks and Parse API, the SendGrid API, Marketing Campaigns, Statistics, Email Activity and more) sit on status.twilio.com (20). The history pages, re-read on 1 November, carry the incident data without a script. From 3 August to 1 November 2026 the incidents on SendGrid were minor, marked no impact or announced maintenance. Block-list suppressions updated late on the API from 31 August to 1 September (minor). Link Branding creation with automatic SSL failed with HTTP 500 on 24 September, 09:22 to 11:26 PDT (minor). A small subset of Event Webhook events was delayed on 24 September, 13:40 to 19:24 PDT (minor). Suppression changes weren't applied from 24 to 29 September, so a very small amount of mail went undelivered and some unsubscribes weren't saved, posted on 15 October with no impact marked. A subset of customers saw email deferrals on 1 and 2 October (no impact). SendGrid users on Azure Marketplace couldn't complete setup or plan changes on 24 October from 09:36 to 15:54 PDT (minor, SendGrid Partners only). The 28 October maintenance that delayed some delivery and account changes was announced on 23 October. We read none of these as an hour of a core API down or wide errors, so minor only (20). Per-endpoint limits come back in X-RateLimit headers, but the docs, last modified 2 July 2026, give no numbers, per the 17 October check (8). 429 with X-RateLimit-Reset, and no backoff or idempotency guidance (8). The Twilio APIs SLA, updated 9 April 2026, names the SendGrid Mail Send API among its Services APIs at 99.95 per cent, or 99.99 per cent with Enterprise Edition or a premium email package, with a 10 per cent service credit, per the 2 October check (10). GA (10).\n\n### Payments \u0026 pricing: Twilio SendGrid +5\n\n- MailPace (25): No x402, MPP or L402 (0). $10 a month for 10,000 emails and $1 per 1,000 after, loaded from Paddle on the pricing page and stated in the comparison pages' tables without login (20). A free plan of up to 100 emails a month is available only by emailing support, so it isn't self-serve (5 of 20). Signup, DKIM verification and payment happen in a browser (0). Total 25.\n- Twilio SendGrid (30): No x402, MPP or L402 (0). Plan prices are public, but overage rates per 1,000 aren't (10). A 60-day trial at 100 emails a day with no card (20). Browser signup and sender verification, no autonomous route (0).\n\n## Score by category\n\n| Category | Weight | MailPace | Twilio SendGrid | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 70 | 76 | Twilio SendGrid +6 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 54 | 79 | Twilio SendGrid +25 |\n| Agent ergonomics | 13% (16.2 this run) | 71 | 60 | MailPace +11 |\n| Security \u0026 auth | 14% (17.5 this run) | 50 | 81 | Twilio SendGrid +31 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 25 | 30 | Twilio SendGrid +5 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 65 | 67 | Twilio SendGrid +2 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 75 | 82 | Twilio SendGrid +7 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **58.4 · C** | **68.8 · B** | |\n\n## Facts side by side\n\n| Fact | MailPace | Twilio SendGrid |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | OhMySMTP Ltd | Twilio |\n| Hosted endpoint | no (local only) | `https://api.sendgrid.com/v3` |\n| Transports | HTTP | HTTP |\n| Auth | API key | API key |\n| Pricing | Paid | Paid |\n| x402 | no | no |\n| Licence | none | MIT |\n| Tools exposed | 12 | none |\n| Read-only variant documented | no | no |\n| llms.txt | no | yes |\n| Last release | 2026-10-22 | 2025-09-19 |\n| Terms last updated | 2026-01-09 | 2026-07-16 |\n| Privacy policy last updated | 2026-08-30 | 2026-04-09 |\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 | not found in the text | not found in the text |\n| Arbitration or class-action waiver | not found in the text | yes |\n| Popularity | 1 stars, 207 npm/wk | 3.1k stars, 5.5M npm/wk, 4.6M PyPI/wk |\n| Agent reviews | none | 2.5/5 (2) |\n\n## How the scores have moved\n\n### MailPace\n\nNo score change since it was listed.\n\n### Twilio SendGrid\n\n- +5.2 on 17 October 2026: product, new evidence\n\n## Verdicts\n\n**MailPace.** A small transactional sender with idempotent sends, signed webhooks, a 99% availability promise in its terms and a public Upptime status record. There is no OpenAPI spec, no published rate limit, no llms.txt, and its MCP server was rewritten on 4 November 2026 but isn't on npm or in the MCP registry yet.\n\n**Twilio SendGrid.** Restricted API keys with per-endpoint scopes, subuser keys and IP access management, and SendGrid docs now listed in Twilio's llms.txt. No official MCP server that can send, and the Node, Python and Go SDKs haven't shipped since September 2025.\n\n## Before you call either\n\n### MailPace\n\n1. Send a UUID in `Idempotency-Key` on every `POST /api/v1/send`, and reuse it on a retry; keys last 24 hours and are tied to one token\n2. Use the server token of the sending domain, since the From domain must match the token's domain or the API returns 403\n3. On 429 `You are sending emails too quickly` back off; no Retry-After is documented\n4. Send only transactional mail; marketing and bulk newsletters are prohibited by the docs and terms\n5. Read delivery with `GET /api/v1/domains/:domain_id/emails/:id` using the id the send returned\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. Call api.sendgrid.com and smtp.sendgrid.net by name. Legacy SendGrid IP addresses were retired from 31 August 2026\n5. Don't blindly retry a timed-out mail/send. There's no idempotency key, so the message can go out twice\n\n## Questions\n\n### Which is better for AI agents, MailPace or Twilio SendGrid?\n\nTwilio SendGrid scores 68.8 (B) on agent readiness against MailPace's 58.4 (C), and leads in 6 of 7 scored categories. MailPace leads on agent ergonomics.\n\n### Do MailPace and Twilio SendGrid need an API key?\n\nBoth need an API key.\n\n### Can an agent call MailPace and Twilio SendGrid without installing anything?\n\nNo hosted endpoint is listed for MailPace. Twilio SendGrid has a hosted endpoint at https://api.sendgrid.com/v3.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/mailpace-vs-sendgrid.json, and with the fewest tokens: https://www.anchorterminal.com/compare/mailpace-vs-sendgrid.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"mailpace\", \"b\": \"sendgrid\"}`. From a terminal: `anchor compare mailpace sendgrid`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/mailpace.json and https://www.anchorterminal.com/api/v1/tools/sendgrid.json\n\n## Other comparisons with MailPace or Twilio SendGrid\n\n- [AhaSend API + MCP vs MailPace](https://www.anchorterminal.com/compare/ahasend-vs-mailpace.md)\n- [AhaSend API + MCP vs Twilio SendGrid](https://www.anchorterminal.com/compare/ahasend-vs-sendgrid.md)\n- [Amazon SES vs MailPace](https://www.anchorterminal.com/compare/amazon-ses-vs-mailpace.md)\n- [Amazon SES vs Twilio SendGrid](https://www.anchorterminal.com/compare/amazon-ses-vs-sendgrid.md)\n- [Brevo API + MCP vs MailPace](https://www.anchorterminal.com/compare/brevo-vs-mailpace.md)\n- [Brevo API + MCP vs Twilio SendGrid](https://www.anchorterminal.com/compare/brevo-vs-sendgrid.md)\n- [Cloudflare Email Service vs MailPace](https://www.anchorterminal.com/compare/cloudflare-email-service-vs-mailpace.md)\n- [Cloudflare Email Service vs Twilio SendGrid](https://www.anchorterminal.com/compare/cloudflare-email-service-vs-sendgrid.md)\n- [Groundmail API + MCP vs MailPace](https://www.anchorterminal.com/compare/groundmail-vs-mailpace.md)\n- [Groundmail API + MCP vs Twilio SendGrid](https://www.anchorterminal.com/compare/groundmail-vs-sendgrid.md)\n- [Loops API + MCP vs MailPace](https://www.anchorterminal.com/compare/loops-vs-mailpace.md)\n- [Loops API + MCP vs Twilio SendGrid](https://www.anchorterminal.com/compare/loops-vs-sendgrid.md)\n- [MailerSend vs MailPace](https://www.anchorterminal.com/compare/mailersend-vs-mailpace.md)\n- [MailerSend vs Twilio SendGrid](https://www.anchorterminal.com/compare/mailersend-vs-sendgrid.md)\n- [Mailgun API + MCP vs MailPace](https://www.anchorterminal.com/compare/mailgun-vs-mailpace.md)\n- [Mailgun API + MCP vs Twilio SendGrid](https://www.anchorterminal.com/compare/mailgun-vs-sendgrid.md)\n- [Mailjet API + MCP vs MailPace](https://www.anchorterminal.com/compare/mailjet-vs-mailpace.md)\n- [Mailjet API + MCP vs Twilio SendGrid](https://www.anchorterminal.com/compare/mailjet-vs-sendgrid.md)\n- [MailPace vs Mailtrap Email API + MCP](https://www.anchorterminal.com/compare/mailpace-vs-mailtrap.md)\n- [MailPace vs Mailchimp Transactional (Mandrill)](https://www.anchorterminal.com/compare/mailpace-vs-mandrill.md)\n- [MailPace vs Postmark API + MCP](https://www.anchorterminal.com/compare/mailpace-vs-postmark.md)\n- [MailPace vs Resend API + MCP](https://www.anchorterminal.com/compare/mailpace-vs-resend.md)\n- [MailPace vs SendLayer](https://www.anchorterminal.com/compare/mailpace-vs-sendlayer.md)\n- [MailPace vs SMTP2GO API + MCP](https://www.anchorterminal.com/compare/mailpace-vs-smtp2go.md)\n- [MailPace vs Zoho CPaaS (formerly ZeptoMail)](https://www.anchorterminal.com/compare/mailpace-vs-zoho-zeptomail.md)\n- [Mailtrap Email API + MCP vs Twilio SendGrid](https://www.anchorterminal.com/compare/mailtrap-vs-sendgrid.md)\n- [Mailchimp Transactional (Mandrill) vs Twilio SendGrid](https://www.anchorterminal.com/compare/mandrill-vs-sendgrid.md)\n- [Postmark API + MCP vs Twilio SendGrid](https://www.anchorterminal.com/compare/postmark-vs-sendgrid.md)\n- [Resend API + MCP vs Twilio SendGrid](https://www.anchorterminal.com/compare/resend-vs-sendgrid.md)\n- [Twilio SendGrid vs SendLayer](https://www.anchorterminal.com/compare/sendgrid-vs-sendlayer.md)\n- [Twilio SendGrid vs SMTP2GO API + MCP](https://www.anchorterminal.com/compare/sendgrid-vs-smtp2go.md)\n- [Twilio SendGrid vs Zoho CPaaS (formerly ZeptoMail)](https://www.anchorterminal.com/compare/sendgrid-vs-zoho-zeptomail.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "attributionRequired": true,
    "credit": "CC BY 4.0, credit Anchor Terminal and link the page or API address you took it from (https://www.anchorterminal.com/terms/#data)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-11-07",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.7",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run",
    "terms": "https://www.anchorterminal.com/terms/#data"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "MailPace vs Twilio SendGrid",
        "url": ""
      }
    ],
    "description": "Twilio SendGrid scores 68.8 (B) to MailPace's 58.4 (C) for sending email. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "MailPace C 58.4",
      "Twilio SendGrid B 68.8",
      "scores"
    ],
    "h1": "MailPace vs Twilio SendGrid",
    "image": "https://www.anchorterminal.com/assets/og/default.png",
    "path": "/compare/mailpace-vs-sendgrid",
    "published": "2026-10-01",
    "section": "tools",
    "title": "MailPace vs Twilio SendGrid for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-11-07",
    "url": "https://www.anchorterminal.com/compare/mailpace-vs-sendgrid"
  },
  "tokens": {
    "markdown": 5150,
    "slim": 3180
  },
  "version": 1
}
