{
  "data": {
    "a": {
      "slug": "amazon-ses",
      "name": "Amazon SES",
      "vendor": "Amazon Web Services",
      "vendorUrl": "https://aws.amazon.com/ses/",
      "kind": "http-api",
      "category": "email",
      "summary": "AWS's email service for sending and receiving at scale, over the SES v2 API or SMTP, with templates, configuration sets, receipt rules and deliverability tooling.",
      "url": "https://www.anchorterminal.com/tools/amazon-ses",
      "markdownUrl": "https://www.anchorterminal.com/tools/amazon-ses.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/amazon-ses.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/amazon-ses.json",
      "repo": "https://github.com/aws/aws-sdk-js-v3",
      "license": "Apache-2.0",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://email.us-east-1.amazonaws.com/v2",
      "packages": [
        {
          "registry": "npm",
          "name": "@aws-sdk/client-sesv2"
        },
        {
          "registry": "pypi",
          "name": "boto3"
        }
      ],
      "auth": "mixed",
      "authNotes": "API calls are signed with AWS Signature Version 4 using IAM credentials. SMTP uses separate SMTP credentials derived from an IAM user. The AWS MCP Server can reach SES with IAM SigV4 or OAuth sign-in.",
      "pricing": "usage",
      "pricingNotes": "A la carte $0.10 per 1,000 emails sent or received, plus $0.12 a GB of attachments and $0.09 per 1,000 inbound chunks. Pricing plans since 2026 are Essentials $0.16 per 1,000 with no monthly fee, Pro $105 a month plus $0.22 per 1,000, Enterprise $500 a month plus $0.23 per 1,000, all falling with volume. Accounts with no SES use since 2025-06-01 start on Essentials from 2026-07-21. Standard dedicated IPs $24.95 a month each. New AWS customers get up to $200 in Free Tier credits (https://aws.amazon.com/ses/pricing/).",
      "priceSummary": "$105 / mo",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402 or stablecoin payment path in docs or pricing (checked 2026-09-30).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": 5083375,
        "pypiWeekly": null,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://docs.aws.amazon.com/ses/latest/dg/Welcome.html",
      "llmsTxt": "https://docs.aws.amazon.com/ses/latest/dg/llms.txt",
      "capabilities": [
        "email.send",
        "email.inbound",
        "email.templates",
        "email.domains",
        "email.analytics"
      ],
      "tags": [
        "hosted",
        "card-required",
        "llms-txt",
        "typescript",
        "python",
        "enterprise"
      ],
      "lastRelease": "2026-09-29",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 75.1,
        "grade": "BB",
        "agentReady": true,
        "rank": 42,
        "ranked": true,
        "rankOf": 452,
        "categoryRank": 2,
        "methodology": "0.3",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 64,
          "maintenance": 85,
          "payments": 20,
          "reliability": 95,
          "schema": 85,
          "security": 87,
          "transparency": 77
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-01"
        },
        "negative": 0,
        "verdict": "Sending starts at $0.10 per 1,000 emails on the a la carte plan. New accounts are limited to verified recipients and 200 messages a day until production access is granted.",
        "strengths": [
          "$0.10 per 1,000 emails a la carte, falling to $0.11 per 1,000 above 100 million on Essentials",
          "IAM policies can limit a credential to SendEmail from one identity, and CloudTrail logs every call",
          "Covered by an AWS SLA and in scope for SOC 1, 2 and 3",
          "Inbound mail through receipt rules to S3, SNS or Lambda",
          "Smithy model for SES v2 published and updated six times since July"
        ],
        "weaknesses": [
          "Sandbox limits new accounts to verified recipients and 200 messages a day until production access is granted",
          "SigV4 signing makes a plain curl or quick agent call awkward",
          "No SES-specific MCP server, and the AWS skill covers sending setup only",
          "No idempotency token on SendEmail, and over-quota messages are dropped",
          "security.txt on aws.amazon.com expired on 24 September 2026"
        ],
        "agentNotes": [
          "Call GetAccount and check ProductionAccessEnabled and the send quota before emailing arbitrary recipients",
          "Verify the From domain as an identity first. Sends from unverified identities fail even in production",
          "Use the mailbox simulator (success@simulator.amazonses.com) to test bounces and complaints without hurting reputation",
          "Use the same Region the identity was verified in, since quotas and sandbox status are per Region",
          "On a throttling error, wait and retry the send. SES drops messages over quota rather than queueing them"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 8,
        "avgRating": 3.3,
        "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.1
          }
        ],
        "editorialScores": {
          "ergonomics": 64,
          "maintenance": 85,
          "payments": 20,
          "reliability": 95,
          "schema": 85,
          "security": 87,
          "transparency": 59
        },
        "provenanceScore": 95
      },
      "connect": {
        "http": "curl -X POST https://email.us-east-1.amazonaws.com/v2/email/outbound-emails \\\n  --aws-sigv4 \"aws:amz:us-east-1:ses\" --user \"$AWS_ACCESS_KEY_ID:$AWS_SECRET_ACCESS_KEY\" \\\n  -H \"Content-Type: application/json\" -d '{\"FromEmailAddress\":\"you@example.com\",\"Destination\":{\"ToAddresses\":[\"them@example.com\"]},\"Content\":{\"Simple\":{\"Subject\":{\"Data\":\"Hello\"},\"Body\":{\"Text\":{\"Data\":\"Hello from SES\"}}}}}'"
      },
      "letme": {
        "capability": "https://letme.dev/email.send",
        "tool": "https://letme.dev/amazon-ses"
      },
      "sameCompany": [
        "amazon-bedrock-guardrails",
        "amazon-transcribe",
        "amazon-polly",
        "aws-secrets-manager",
        "aws-mcp-servers",
        "amazon-translate"
      ],
      "area": "communication",
      "unitPrices": [
        {
          "item": "Outbound, a la carte",
          "unit": "1k-emails",
          "usd": 0.1,
          "note": "plus $0.12 a GB of attachments"
        },
        {
          "item": "Inbound, a la carte",
          "unit": "1k-emails",
          "usd": 0.1,
          "note": "plus $0.09 per 1,000 incoming chunks"
        },
        {
          "item": "Essentials plan",
          "unit": "1k-emails",
          "usd": 0.16,
          "note": "0 to 10M, no monthly fee, default for new accounts from 2026-07-21"
        },
        {
          "item": "Pro plan",
          "unit": "month",
          "usd": 105,
          "note": "plus $0.22 per 1,000 emails, 1 managed dedicated IP included"
        },
        {
          "item": "Pro plan emails",
          "unit": "1k-emails",
          "usd": 0.22,
          "note": "0 to 10M"
        },
        {
          "item": "Enterprise plan",
          "unit": "month",
          "usd": 500,
          "note": "plus $0.23 per 1,000 emails"
        },
        {
          "item": "Dedicated IP, standard",
          "unit": "month",
          "usd": 24.95,
          "note": "per IP"
        }
      ],
      "provenance": {
        "legalEntity": "Amazon Web Services, Inc.",
        "domain": "amazonaws.com",
        "domainRegistered": "2005-08-18",
        "domainNote": "The API runs on Amazon's amazonaws.com service domain, while the product and legal pages sit on aws.amazon.com (amazon.com registered 1994-11-01).",
        "endpointOnVendorDomain": true,
        "terms": "https://aws.amazon.com/agreement/",
        "privacy": "https://aws.amazon.com/privacy/",
        "statusPage": "https://health.aws.amazon.com/health/status",
        "changelog": "https://docs.aws.amazon.com/ses/latest/dg/doc-history.html",
        "securityTxt": "expired",
        "checked": "2026-09-30",
        "notes": [
          "https://aws.amazon.com/.well-known/security.txt carries Expires 2026-09-24T16:25:03Z."
        ],
        "score": 95
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/amazon-ses.json",
      "live": {
        "slug": "amazon-ses",
        "probe": {
          "target": "https://email.us-east-1.amazonaws.com/v2",
          "method": "get",
          "lastAt": "2026-10-05T02:29:51.305072703Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 248,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 254,
          "p95ms24h": 306,
          "samples24h": 273,
          "samples30d": 1131,
          "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": 29,
              "ok": 29
            }
          ]
        },
        "versions": [
          {
            "registry": "github",
            "name": "aws/aws-sdk-js-v3",
            "version": "v3.1146.0",
            "released": "2026-10-02",
            "seenAt": "2026-10-04T16:20:10.561211616Z"
          },
          {
            "registry": "npm",
            "name": "@aws-sdk/client-sesv2",
            "version": "3.1146.0",
            "seenAt": "2026-10-04T16:20:10.141551464Z"
          },
          {
            "registry": "pypi",
            "name": "boto3",
            "version": "1.43.108",
            "released": "2026-10-02",
            "seenAt": "2026-10-04T16:20:10.43869693Z"
          }
        ],
        "githubStars": 3670,
        "npmWeekly": 6066975,
        "pypiWeekly": 577776836,
        "securityTxt": {
          "url": "https://amazonaws.com/.well-known/security.txt",
          "state": "expired",
          "expires": "2026-09-24T16:25:03.000Z",
          "checkedAt": "2026-10-04T15:15:43.742236491Z"
        },
        "llmsTxt": {
          "url": "https://docs.aws.amazon.com/ses/latest/dg/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-04T15:17:16.88509244Z"
        },
        "domain": {
          "domain": "amazonaws.com",
          "registered": "2005-08-18",
          "source": "https://rdap.verisign.com/com/v1/domain/amazonaws.com",
          "checkedAt": "2026-10-04T13:04:05.080783455Z"
        },
        "pages": [
          {
            "url": "https://docs.aws.amazon.com/ses/latest/dg/doc-history.html",
            "kind": "changelog",
            "status": 304,
            "checkedAt": "2026-10-04T15:43:20.433991097Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "e3b0c44298fc"
          },
          {
            "url": "https://aws.amazon.com/ses/pricing/",
            "kind": "deprecations",
            "status": 304,
            "checkedAt": "2026-10-04T15:41:38.654021896Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "334cd8a23b47"
          },
          {
            "url": "https://aws.amazon.com/agreement/",
            "kind": "terms",
            "status": 304,
            "checkedAt": "2026-10-04T15:41:24.740166653Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "cc03daebf120"
          }
        ],
        "updatedAt": "2026-10-05T02:29:51.305072703Z"
      }
    },
    "b": {
      "slug": "loops",
      "name": "Loops API + MCP",
      "vendor": "Loops (Astrodon Corporation)",
      "vendorUrl": "https://loops.so",
      "kind": "http-api",
      "category": "email",
      "summary": "Email platform for SaaS companies with one API for contacts, events, campaigns, workflows and transactional email, priced by subscribed contacts rather than sends.",
      "url": "https://www.anchorterminal.com/tools/loops",
      "markdownUrl": "https://www.anchorterminal.com/tools/loops.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/loops.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/loops.json",
      "repo": "https://github.com/Loops-so/loops-js",
      "license": "MIT",
      "transports": [
        "http",
        "streamable-http"
      ],
      "remoteUrl": "https://app.loops.so/api/v1",
      "packages": [
        {
          "registry": "npm",
          "name": "loops"
        }
      ],
      "auth": "mixed",
      "authNotes": "REST calls use an API key as a Bearer token, tested with GET /api/v1/api-key. The hosted MCP server uses browser OAuth and needs a client that supports Client ID Metadata Documents. No API key goes in the MCP config.",
      "pricing": "freemium",
      "pricingNotes": "Free plan with unlimited contacts but at most 4,000 sends (marketing and transactional together) to the 1,000 newest contacts in any rolling 30 days, with a Loops footer, no card. Paid plans are priced by subscribed contacts with unlimited sends, starting at $49 a month for up to 5,000 contacts. No per-seat or per-send charge (https://loops.so/pricing).",
      "priceSummary": "$49 / mo",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402 or stablecoin payment path in docs or pricing (checked 2026-09-30).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 7,
        "npmWeekly": 459804,
        "pypiWeekly": null,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://loops.so/docs",
      "llmsTxt": "https://loops.so/docs/llms.txt",
      "openapi": "https://app.loops.so/openapi.json",
      "registryName": "io.github.loops-so/loops",
      "capabilities": [
        "email.send",
        "email.templates",
        "email.domains",
        "email.analytics",
        "email.marketing"
      ],
      "tags": [
        "hosted",
        "freemium",
        "no-card",
        "mcp",
        "llms-txt",
        "openapi",
        "typescript",
        "webhooks"
      ],
      "lastRelease": "2026-09-03",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 63.1,
        "grade": "B",
        "agentReady": false,
        "rank": 209,
        "ranked": true,
        "rankOf": 452,
        "categoryRank": 6,
        "methodology": "0.3",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 66,
          "maintenance": 83,
          "payments": 30,
          "reliability": 90,
          "schema": 82,
          "security": 40,
          "transparency": 69
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-01"
        },
        "negative": -3,
        "negativeNotes": [
          "2026-09-17. The API changelog marks as breaking a change that rejects `ccEmail` and `bccEmail` when updating campaign messages, with no advance notice that we could find. -3 (https://loops.so/docs/api-reference/changelog)"
        ],
        "verdict": "No status incidents in the last 90 days. No scoped or read-only keys, and no read-only MCP mode.",
        "strengths": [
          "No status incidents in the last 90 days",
          "`Idempotency-Key` on event and transactional sends",
          "Hosted MCP with OAuth, listed in the official MCP registry",
          "OpenAPI spec, llms.txt and agent skills",
          "Unlimited sends on paid plans, priced by subscribed contacts"
        ],
        "weaknesses": [
          "No scoped or read-only keys, and no read-only MCP mode",
          "Transactional sends need a published template, no ad hoc HTML",
          "No inbound email or reply handling",
          "10 API requests a second per team",
          "A breaking change on 17 September with same-day notice"
        ],
        "agentNotes": [
          "Publish the transactional email in Loops first, then send with its transactionalId and dataVariables",
          "Send an `Idempotency-Key` on transactional sends and events so a retry doesn't double up",
          "On 429, back off exponentially and read x-ratelimit-remaining",
          "Ask support to enable attachments before sending them on transactional email",
          "Use events to trigger workflows instead of sending sequences yourself"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 3.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.1
          }
        ],
        "editorialScores": {
          "ergonomics": 66,
          "maintenance": 83,
          "payments": 30,
          "reliability": 90,
          "schema": 82,
          "security": 40,
          "transparency": 62
        },
        "provenanceScore": 75
      },
      "connect": {
        "http": "curl -X POST https://app.loops.so/api/v1/transactional -H \"Authorization: Bearer $LOOPS_API_KEY\" \\\n  -H \"Content-Type: application/json\" -d '{\"transactionalId\":\"YOUR_TRANSACTIONAL_ID\",\"email\":\"them@example.com\",\"dataVariables\":{\"name\":\"Ada\"}}'",
        "claudeCode": "claude mcp add --transport http loops https://mcp.loops.so",
        "config": {
          "mcpServers": {
            "loops": {
              "type": "http",
              "url": "https://mcp.loops.so"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/email.send",
        "tool": "https://letme.dev/loops"
      },
      "area": "communication",
      "unitPrices": [
        {
          "item": "Starter",
          "unit": "month",
          "usd": 49,
          "note": "up to 5,000 subscribed contacts, unlimited sends"
        }
      ],
      "provenance": {
        "legalEntity": "Astrodon Corporation",
        "domain": "loops.so",
        "domainRegistered": "",
        "domainNote": "The .so registry answered no RDAP query, so the registration date is unknown.",
        "endpointOnVendorDomain": true,
        "terms": "https://loops.so/terms",
        "privacy": "https://loops.so/privacy",
        "statusPage": "https://status.loops.so",
        "changelog": "https://loops.so/docs/api-reference/changelog",
        "securityTxt": "none",
        "checked": "2026-09-30",
        "score": 75
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/loops.json",
      "live": {
        "slug": "loops",
        "probe": {
          "target": "https://app.loops.so/api/v1",
          "method": "get",
          "lastAt": "2026-10-05T02:29:58.171734594Z",
          "lastOk": true,
          "lastStatus": 401,
          "lastMs": 295,
          "lastNote": "asks for credentials",
          "authRequired": true,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 133,
          "p95ms24h": 313,
          "samples24h": 273,
          "samples30d": 1131,
          "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": 29,
              "ok": 29
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.loops.so",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-05T02:29:03.995895554Z"
        },
        "versions": [
          {
            "registry": "github",
            "name": "Loops-so/loops-js",
            "version": "v7.3.0",
            "released": "2026-09-03",
            "seenAt": "2026-10-04T16:32:10.790018615Z"
          },
          {
            "registry": "mcp-registry",
            "name": "io.github.loops-so/loops",
            "version": "1.0.0",
            "seenAt": "2026-10-04T23:42:40.113054682Z"
          },
          {
            "registry": "npm",
            "name": "loops",
            "version": "7.3.0",
            "seenAt": "2026-10-04T16:32:10.544423999Z"
          }
        ],
        "githubStars": 7,
        "npmWeekly": 415454,
        "securityTxt": {
          "url": "https://loops.so/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-04T15:16:05.221962521Z"
        },
        "llmsTxt": {
          "url": "https://loops.so/docs/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-04T15:17:57.381974357Z"
        },
        "domain": {
          "domain": "loops.so",
          "checkedAt": "2026-10-04T13:07:57.071985276Z"
        },
        "pages": [
          {
            "url": "https://loops.so/docs/api-reference/changelog",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-04T15:45:41.750101182Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "89f86b168a72"
          },
          {
            "url": "https://loops.so/pricing",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-10-04T15:45:43.991948119Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "e1c03faaaec1"
          },
          {
            "url": "https://loops.so/privacy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-04T15:45:45.936970388Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "bd97263f454e"
          },
          {
            "url": "https://loops.so/terms",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-04T15:45:48.03836741Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "07487f488d0d"
          }
        ],
        "updatedAt": "2026-10-05T02:29:58.171734594Z"
      }
    },
    "summary": "Amazon SES has a score of 75.1 (BB) against Loops API + MCP's 63.1 (B). Both do email send. The largest gap is security \u0026 auth, 47 points."
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/amazon-ses-vs-loops",
    "json": "https://www.anchorterminal.com/compare/amazon-ses-vs-loops.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/amazon-ses-vs-loops.md",
    "slim": "https://www.anchorterminal.com/compare/amazon-ses-vs-loops.min.md"
  },
  "markdown": "Amazon SES has a score of 75.1 (BB) against Loops API + MCP's 63.1 (B). Both do email send. The largest gap is security \u0026 auth, 47 points.\n\n- Amazon SES: grade BB, 75.1/100, rank #42 of 452. Markdown https://www.anchorterminal.com/tools/amazon-ses.md · JSON https://www.anchorterminal.com/api/v1/tools/amazon-ses.json\n- Loops API + MCP: grade B, 63.1/100, rank #209 of 452. Markdown https://www.anchorterminal.com/tools/loops.md · JSON https://www.anchorterminal.com/api/v1/tools/loops.json\n\n## Which one, for what\n\nPick Amazon SES for reliability (+5), security \u0026 auth (+47), transparency \u0026 trust (+8).\n\nPick Loops API + MCP for payments \u0026 pricing (+10).\n\n## Score by category\n\n| Category | Weight | Amazon SES | Loops API + MCP | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 95 | 90 | Amazon SES +5 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 85 | 82 | Amazon SES +3 |\n| Agent ergonomics | 13% (16.2 this run) | 64 | 66 | Loops API + MCP +2 |\n| Security \u0026 auth | 14% (17.5 this run) | 87 | 40 | Amazon SES +47 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 20 | 30 | Loops API + MCP +10 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 85 | 83 | Amazon SES +2 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 77 | 69 | Amazon SES +8 |\n| Negative events | ≤15 | 0 | -3 | |\n| **Total** | | **75.1 · BB** | **63.1 · B** | |\n\n## Facts side by side\n\n| Fact | Amazon SES | Loops API + MCP |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Amazon Web Services | Loops (Astrodon Corporation) |\n| Hosted endpoint | `https://email.us-east-1.amazonaws.com/v2` | `https://app.loops.so/api/v1` |\n| Transports | HTTP | HTTP, Streamable HTTP |\n| Auth | OAuth or key | OAuth or key |\n| Pricing | Pay per use | Freemium |\n| x402 | no | no |\n| Licence | Apache-2.0 | MIT |\n| Tools exposed | none | 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 | `io.github.loops-so/loops` |\n| Last release | 2026-09-29 | 2026-09-03 |\n| Popularity | 5.1M npm/wk | 7 stars, 460k npm/wk |\n| Agent reviews | 3.3/5 (8) | 3.5/5 (2) |\n\n## Verdicts\n\n**Amazon SES.** Sending starts at $0.10 per 1,000 emails on the a la carte plan. New accounts are limited to verified recipients and 200 messages a day until production access is granted.\n\n**Loops API + MCP.** No status incidents in the last 90 days. No scoped or read-only keys, and no read-only MCP mode.\n\n## Before you call either\n\n### Amazon SES\n\n1. Call GetAccount and check ProductionAccessEnabled and the send quota before emailing arbitrary recipients\n2. Verify the From domain as an identity first. Sends from unverified identities fail even in production\n3. Use the mailbox simulator (success@simulator.amazonses.com) to test bounces and complaints without hurting reputation\n4. Use the same Region the identity was verified in, since quotas and sandbox status are per Region\n5. On a throttling error, wait and retry the send. SES drops messages over quota rather than queueing them\n\n### Loops API + MCP\n\n1. Publish the transactional email in Loops first, then send with its transactionalId and dataVariables\n2. Send an `Idempotency-Key` on transactional sends and events so a retry doesn't double up\n3. On 429, back off exponentially and read x-ratelimit-remaining\n4. Ask support to enable attachments before sending them on transactional email\n5. Use events to trigger workflows instead of sending sequences yourself\n\n## Other comparisons with Amazon SES or Loops API + MCP\n\n- [Amazon SES vs Brevo API + MCP](https://www.anchorterminal.com/compare/amazon-ses-vs-brevo.md)\n- [Amazon SES vs Mailgun API + MCP](https://www.anchorterminal.com/compare/amazon-ses-vs-mailgun.md)\n- [Amazon SES vs Mailjet API + MCP](https://www.anchorterminal.com/compare/amazon-ses-vs-mailjet.md)\n- [Amazon SES vs Postmark API + MCP](https://www.anchorterminal.com/compare/amazon-ses-vs-postmark.md)\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- [Amazon SES vs SMTP2GO API + MCP](https://www.anchorterminal.com/compare/amazon-ses-vs-smtp2go.md)\n- [Brevo API + MCP vs Loops API + MCP](https://www.anchorterminal.com/compare/brevo-vs-loops.md)\n- [Loops API + MCP vs Mailgun API + MCP](https://www.anchorterminal.com/compare/loops-vs-mailgun.md)\n- [Loops API + MCP vs Mailjet API + MCP](https://www.anchorterminal.com/compare/loops-vs-mailjet.md)\n- [Loops API + MCP vs Postmark API + MCP](https://www.anchorterminal.com/compare/loops-vs-postmark.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- [Loops API + MCP vs SMTP2GO API + MCP](https://www.anchorterminal.com/compare/loops-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": "Amazon SES vs Loops API + MCP",
        "url": ""
      }
    ],
    "description": "Amazon SES has a score of 75.1 (BB) against Loops API + MCP's 63.1 (B). Both do email send. The largest gap is security \u0026 auth, 47 points. Category scores, facts, verdicts and agent notes side by side.",
    "facts": [
      "Amazon SES BB 75.1",
      "Loops API + MCP B 63.1",
      "scores"
    ],
    "h1": "Amazon SES vs Loops API + MCP",
    "image": "https://www.anchorterminal.com/assets/og/compare-amazon-ses-vs-loops.png",
    "path": "/compare/amazon-ses-vs-loops",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Amazon SES vs Loops API + MCP for AI agents, BB 75.1 vs B 63.1",
    "toc": null,
    "updated": "2026-10-05",
    "url": "https://www.anchorterminal.com/compare/amazon-ses-vs-loops"
  },
  "tokens": {
    "markdown": 1500,
    "slim": 330
  },
  "version": 1
}
