{
  "data": {
    "a": {
      "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": 62.7,
        "grade": "B",
        "agentReady": false,
        "rank": 295,
        "ranked": true,
        "rankOf": 629,
        "categoryRank": 8,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 66,
          "maintenance": 83,
          "payments": 30,
          "reliability": 90,
          "schema": 82,
          "security": 40,
          "transparency": 64
        },
        "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.",
        "bestFor": "SaaS teams that send lifecycle and product email from one contact list and want an OAuth MCP.",
        "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.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 62.7
          }
        ],
        "editorialScores": {
          "ergonomics": 66,
          "maintenance": 83,
          "payments": 30,
          "reliability": 90,
          "schema": 82,
          "security": 40,
          "transparency": 62
        },
        "provenanceScore": 66
      },
      "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": 66
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/loops.json",
      "live": {
        "slug": "loops",
        "probe": {
          "target": "https://app.loops.so/api/v1",
          "method": "get",
          "lastAt": "2026-10-08T19:08:52.139668591Z",
          "lastOk": true,
          "lastStatus": 401,
          "lastMs": 452,
          "lastNote": "asks for credentials",
          "authRequired": true,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 159,
          "p95ms24h": 335,
          "samples24h": 272,
          "samples30d": 2135,
          "days": [
            {
              "date": "2026-09-30",
              "probes": 35,
              "ok": 35
            },
            {
              "date": "2026-10-01",
              "probes": 276,
              "ok": 276
            },
            {
              "date": "2026-10-02",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-03",
              "probes": 271,
              "ok": 271
            },
            {
              "date": "2026-10-04",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-05",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-06",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-07",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-08",
              "probes": 217,
              "ok": 217
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.loops.so",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-08T19:06:45.292643506Z"
        },
        "versions": [
          {
            "registry": "github",
            "name": "Loops-so/loops-js",
            "version": "v7.3.0",
            "released": "2026-09-03",
            "seenAt": "2026-10-08T16:19:26.488374508Z"
          },
          {
            "registry": "mcp-registry",
            "name": "io.github.loops-so/loops",
            "version": "1.0.0",
            "seenAt": "2026-10-08T02:42:52.272076636Z"
          },
          {
            "registry": "npm",
            "name": "loops",
            "version": "7.3.0",
            "seenAt": "2026-10-08T16:19:26.244921059Z"
          }
        ],
        "githubStars": 7,
        "npmWeekly": 413875,
        "securityTxt": {
          "url": "https://loops.so/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-08T15:38:29.983467372Z"
        },
        "llmsTxt": {
          "url": "https://loops.so/docs/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-08T14:00:34.996407339Z"
        },
        "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-08T18:21:41.514722933Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "89f86b168a72"
          },
          {
            "url": "https://loops.so/pricing",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-10-08T18:21:43.966303163Z",
            "changedAt": "2026-10-05T15:58:00.718689056Z",
            "fingerprint": "e22a41cbc50a"
          },
          {
            "url": "https://loops.so/privacy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-08T18:21:45.66926244Z",
            "changedAt": "2026-10-05T15:58:02.674209188Z",
            "fingerprint": "c6039d0d0d63"
          },
          {
            "url": "https://loops.so/terms",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-08T18:21:47.82214894Z",
            "changedAt": "2026-10-05T15:58:04.642525643Z",
            "fingerprint": "5779ec7dc942"
          }
        ],
        "updatedAt": "2026-10-08T19:08:52.139668591Z"
      }
    },
    "answer": "MailerSend scores 69.5 (B) on agent readiness against Loops API + MCP's 62.7 (B), and leads in 3 of 7 scored categories. Loops API + MCP leads on schema \u0026 documentation.",
    "b": {
      "slug": "mailersend",
      "name": "MailerSend",
      "vendor": "MailerSend, Inc.",
      "vendorUrl": "https://www.mailersend.com",
      "kind": "http-api",
      "category": "email",
      "summary": "Transactional email service from MailerSend, Inc. with a REST API, SMTP relay, templates, inbound routing, webhooks and analytics, plus SMS and WhatsApp sending. Agents reach it with a scoped API token or through a hosted MCP server.",
      "url": "https://www.anchorterminal.com/tools/mailersend",
      "markdownUrl": "https://www.anchorterminal.com/tools/mailersend.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/mailersend.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/mailersend.json",
      "repo": "https://github.com/mailersend/mailersend-nodejs",
      "license": "Proprietary service under MailerSend's terms of use. The SDKs and the CLI on GitHub are MIT",
      "transports": [
        "http",
        "streamable-http"
      ],
      "remoteUrl": "https://api.mailersend.com/v1",
      "packages": [
        {
          "registry": "npm",
          "name": "mailersend"
        },
        {
          "registry": "pypi",
          "name": "mailersend"
        }
      ],
      "auth": "mixed",
      "authNotes": "The REST API takes a Bearer API token, created in the dashboard or through /v1/token, with any of 30 scopes and an optional sending domain. Tokens can be paused and deleted. SMTP relay uses separate SMTP users. The MCP server and the CLI use OAuth with a browser login, and the MCP authorisation server supports dynamic client registration and PKCE. Access is self-serve, but a new account passes an approval step before full sending.",
      "pricing": "freemium",
      "pricingNotes": "Free plan with 500 emails a month and 100 API requests a day, which the pricing FAQ says needs a card once the account is approved. A 14-day Professional trial starts at signup with the same limits. Hobby is $7 a month for 5,000 emails, Starter from $35 for 50,000 and Professional from $110 for 50,000, with overage of $0.50 to $1.50 per 1,000. Yearly billing takes 10 per cent off. Enterprise is priced by sales (https://www.mailersend.com/pricing, checked 2026-10-08).",
      "priceSummary": "$7 / mo",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the developer docs, the OpenAPI file or the pricing page (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": 127,
      "popularity": {
        "githubStars": 175,
        "npmWeekly": 128453,
        "pypiWeekly": 15086,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://developers.mailersend.com",
      "llmsTxt": "https://developers.mailersend.com/llms.txt",
      "openapi": "https://api.swaggerhub.com/apis/MailerSend/mailersend-api/1.0.0-oas3.1",
      "capabilities": [
        "email.send",
        "email.inbound",
        "email.templates",
        "email.domains",
        "email.analytics",
        "email.verification",
        "email.threads",
        "messaging.sms",
        "messaging.whatsapp"
      ],
      "tags": [
        "hosted",
        "freemium",
        "mcp",
        "oauth",
        "openapi",
        "llms-txt",
        "typescript",
        "python",
        "webhooks",
        "sms",
        "whatsapp",
        "status-page",
        "sla"
      ],
      "lastRelease": "2026-09-29",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 69.5,
        "grade": "B",
        "agentReady": false,
        "rank": 147,
        "ranked": true,
        "rankOf": 629,
        "categoryRank": 3,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 69,
          "maintenance": 83,
          "payments": 30,
          "reliability": 95,
          "schema": 73,
          "security": 62,
          "transparency": 64
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": 0,
        "verdict": "API tokens carry any of 30 scopes and can be tied to one domain, rate limits are published with retry-after on every 429, and a 99.5 per cent SLA starts on the $35 Starter plan. Sends take no idempotency key, the Free plan allows 100 API requests a day, and the terms permit changes without notice.",
        "bestFor": "An agent sending transactional email for an owner who wants scoped tokens, a hosted MCP server and low entry prices, with SMS and WhatsApp on the same API.",
        "strengths": [
          "API tokens take any of 30 scopes, read or full by area, and can be limited to one sending domain",
          "Rate limits published per endpoint, with retry-after and x-ratelimit headers on a 429 and a quota endpoint that isn't counted",
          "99.5 per cent monthly uptime SLA with service credits on Starter, Professional and Enterprise",
          "Hosted MCP server at mcp.mailersend.com with OAuth, PKCE and dynamic client registration, on every plan",
          "Overage published per 1,000 emails for each plan, from $1.50 on Hobby to $0.50 at 2 million on Professional"
        ],
        "weaknesses": [
          "No idempotency key documented for POST /v1/email or the bulk endpoint",
          "Free plan is capped at 100 API requests a day and 500 emails a month, and asks for a card after account approval",
          "The terms allow MailerSend to change or end the service and the terms without notice, and to close an account without cause",
          "The MCP server lists 127 tools with no documented toolsets or read-only mode",
          "The public OpenAPI file has one-line summaries, no error responses, and no WhatsApp, DMARC or blocklist monitoring paths",
          "The terms grant MailerSend a licence to use inputs and outputs of its AI functions to improve AI models"
        ],
        "agentNotes": [
          "Send `Authorization: Bearer \u003ctoken\u003e` to https://api.mailersend.com/v1 and ask for a token with only the scopes the task needs, such as `email_full` and `activity_read`",
          "Read the message id from the `x-message-id` response header. POST /v1/email answers 202 with an empty body",
          "Check for a sent message before retrying a send. No idempotency key exists, so a blind retry can deliver twice",
          "On a 429 wait the seconds in `retry-after`. Call GET /v1/api-quota, which isn't counted, to see the daily quota left",
          "Use POST /v1/bulk-email for batches of up to 500 emails. It isn't on the Free plan and takes 10 to 60 requests a minute by plan"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 69.5
          }
        ],
        "editorialScores": {
          "ergonomics": 69,
          "maintenance": 83,
          "payments": 30,
          "reliability": 95,
          "schema": 73,
          "security": 62,
          "transparency": 43
        },
        "provenanceScore": 84
      },
      "connect": {
        "install": "npm install mailersend",
        "http": "curl -X POST https://api.mailersend.com/v1/email -H \"Authorization: Bearer $MAILERSEND_API_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"from\":{\"email\":\"hello@yourdomain.com\"},\"to\":[{\"email\":\"recipient@example.com\"}],\"subject\":\"Hello\",\"text\":\"Hello\"}'",
        "claudeCode": "claude mcp add --transport http mailersend https://mcp.mailersend.com/mcp"
      },
      "letme": {
        "capability": "https://letme.dev/email.send",
        "tool": "https://letme.dev/mailersend"
      },
      "area": "communication",
      "unitPrices": [
        {
          "item": "Hobby",
          "unit": "month",
          "usd": 7,
          "note": "5,000 emails"
        },
        {
          "item": "Starter 50k",
          "unit": "month",
          "usd": 35,
          "note": "50,000 emails"
        },
        {
          "item": "Starter 100k",
          "unit": "month",
          "usd": 68,
          "note": "100,000 emails"
        },
        {
          "item": "Professional 50k",
          "unit": "month",
          "usd": 110,
          "note": "50,000 emails"
        },
        {
          "item": "Professional 100k",
          "unit": "month",
          "usd": 140,
          "note": "100,000 emails"
        },
        {
          "item": "Overage on Hobby",
          "unit": "1k-emails",
          "usd": 1.5
        },
        {
          "item": "Overage on Starter",
          "unit": "1k-emails",
          "usd": 1.3,
          "note": "up to the 100,000 tier, $1.10 at 250,000 and 500,000, $1.00 at 1 million"
        },
        {
          "item": "Overage on Professional",
          "unit": "1k-emails",
          "usd": 1.3,
          "note": "up to the 100,000 tier, falling to $0.50 at 2 million"
        },
        {
          "item": "Email verification credit",
          "unit": "credit",
          "usd": 0.01,
          "note": "1,000 credits for $10, falling to $0.002 at 1 million"
        },
        {
          "item": "Extra sending domain",
          "unit": "month",
          "usd": 4,
          "note": "per domain, Starter and above"
        },
        {
          "item": "SMS phone number",
          "unit": "month",
          "usd": 2,
          "note": "per number, USA and Canada, Starter and above"
        }
      ],
      "provenance": {
        "legalEntity": "MailerSend, Inc.",
        "domain": "mailersend.com",
        "domainRegistered": "2009-11-12",
        "endpointOnVendorDomain": true,
        "terms": "https://www.mailersend.com/legal/terms-of-use",
        "privacy": "https://www.mailersend.com/legal/privacy-policy",
        "statusPage": "https://status.mailersend.com",
        "changelog": "https://www.mailersend.com/whats-new",
        "securityTxt": "none",
        "checked": "2026-10-08",
        "notes": [
          "The terms of use (last updated 5 October 2026) and the privacy policy (last updated 17 September 2026) both name MailerSend, Inc., 228 Park Ave S, PMB 54955, New York, NY 10003-1502. The terms of use are the agreement for the service, with Delaware law.",
          "The API answers at api.mailersend.com and the MCP server at mcp.mailersend.com.",
          "www.mailersend.com/.well-known/security.txt returned 404. The legal index links a responsible disclosure programme page.",
          "The changelog address comes from the site's llms.txt. The page itself was not read, because www.mailersend.com began answering with a Cloudflare bot check during our reads.",
          "RDAP gives 2009-11-12 as the registration date of mailersend.com.",
          "The lead named MailerLite and Vercom as parents. The pages we read name only MailerSend, Inc., so no parent is recorded."
        ],
        "score": 84
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/mailersend.json",
      "live": {
        "slug": "mailersend",
        "probe": {
          "target": "https://api.mailersend.com/v1",
          "method": "get",
          "lastAt": "2026-10-08T19:08:52.425626674Z",
          "lastOk": true,
          "lastStatus": 200,
          "lastMs": 297,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 176,
          "p95ms24h": 297,
          "samples24h": 19,
          "samples30d": 19,
          "days": [
            {
              "date": "2026-10-08",
              "probes": 19,
              "ok": 19
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.mailersend.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-08T19:06:45.559846951Z"
        },
        "pages": [
          {
            "url": "https://www.mailersend.com/whats-new",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-08T18:29:00.187031888Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "573c2146c8b3"
          },
          {
            "url": "https://www.mailersend.com/pricing",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-10-08T18:28:58.024689641Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "c5c6c75fb124"
          },
          {
            "url": "https://www.mailersend.com/legal/privacy-policy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-08T18:28:53.837822012Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "be735fa80c7c"
          },
          {
            "url": "https://www.mailersend.com/legal/terms-of-use",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-08T18:28:56.046015705Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "7fff1960a381"
          }
        ],
        "updatedAt": "2026-10-08T19:08:52.425626674Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Loops (Astrodon Corporation)",
        "b": "MailerSend, Inc.",
        "name": "Vendor"
      },
      {
        "a": "https://app.loops.so/api/v1",
        "b": "https://api.mailersend.com/v1",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP, Streamable HTTP",
        "b": "HTTP, Streamable HTTP",
        "name": "Transports"
      },
      {
        "a": "OAuth or key",
        "b": "OAuth or key",
        "name": "Auth"
      },
      {
        "a": "Freemium",
        "b": "Freemium",
        "name": "Pricing"
      },
      {
        "a": "not published",
        "b": "$4 per month (plan)",
        "name": "Price for email send"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "MIT",
        "b": "Proprietary service under MailerSend's terms of use. The SDKs and the CLI on GitHub are MIT",
        "name": "Licence"
      },
      {
        "a": "none",
        "b": "127",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "io.github.loops-so/loops",
        "b": "not listed",
        "name": "MCP registry"
      },
      {
        "a": "2026-09-03",
        "b": "2026-09-29",
        "name": "Last release"
      },
      {
        "a": "2025-12-15",
        "b": "2026-10-05",
        "name": "Terms last updated"
      },
      {
        "a": "2025-05-15",
        "b": "2026-09-17",
        "name": "Privacy policy last updated"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "Customer content may train models"
      },
      {
        "a": "yes",
        "b": "not found in the text",
        "name": "Terms restrict automated access"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "7 stars, 460k npm/wk",
        "b": "175 stars, 128k npm/wk, 15k PyPI/wk",
        "name": "Popularity"
      },
      {
        "a": "3.5/5 (2)",
        "b": "none",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "MailerSend scores 69.5 (B) on agent readiness against Loops API + MCP's 62.7 (B), and leads in 3 of 7 scored categories. Loops API + MCP leads on schema \u0026 documentation.",
        "question": "Which is better for AI agents, Loops API + MCP or MailerSend?"
      },
      {
        "answer": "Both take an API key or an OAuth sign-in.",
        "question": "Do Loops API + MCP and MailerSend need an API key?"
      },
      {
        "answer": "Yes. Loops API + MCP has a hosted endpoint at https://app.loops.so/api/v1 and MailerSend at https://api.mailersend.com/v1.",
        "question": "Can an agent call Loops API + MCP and MailerSend without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Schema \u0026 documentation, 82 against 73"
        ],
        "also": [
          "Free to start without a card"
        ],
        "goodFor": "SaaS teams that send lifecycle and product email from one contact list and want an OAuth MCP.",
        "slug": "loops",
        "watchFor": "No scoped or read-only keys, and no read-only MCP mode"
      },
      {
        "aheadOn": [
          "Reliability, 95 against 90",
          "Security \u0026 auth, 62 against 40"
        ],
        "also": [
          "No incidents deducted, where Loops API + MCP loses 3 points for them"
        ],
        "goodFor": "An agent sending transactional email for an owner who wants scoped tokens, a hosted MCP server and low entry prices, with SMS and WhatsApp on the same API.",
        "slug": "mailersend",
        "watchFor": "No idempotency key documented for POST /v1/email or the bulk endpoint"
      }
    ],
    "job": {
      "capability": "email.send",
      "name": "Email send"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/amazon-ses-vs-loops.json",
        "title": "Amazon SES vs Loops API + MCP",
        "url": "https://www.anchorterminal.com/compare/amazon-ses-vs-loops"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-ses-vs-mailersend.json",
        "title": "Amazon SES vs MailerSend",
        "url": "https://www.anchorterminal.com/compare/amazon-ses-vs-mailersend"
      },
      {
        "json": "https://www.anchorterminal.com/compare/brevo-vs-loops.json",
        "title": "Brevo API + MCP vs Loops API + MCP",
        "url": "https://www.anchorterminal.com/compare/brevo-vs-loops"
      },
      {
        "json": "https://www.anchorterminal.com/compare/brevo-vs-mailersend.json",
        "title": "Brevo API + MCP vs MailerSend",
        "url": "https://www.anchorterminal.com/compare/brevo-vs-mailersend"
      },
      {
        "json": "https://www.anchorterminal.com/compare/loops-vs-mailgun.json",
        "title": "Loops API + MCP vs Mailgun API + MCP",
        "url": "https://www.anchorterminal.com/compare/loops-vs-mailgun"
      },
      {
        "json": "https://www.anchorterminal.com/compare/loops-vs-mailjet.json",
        "title": "Loops API + MCP vs Mailjet API + MCP",
        "url": "https://www.anchorterminal.com/compare/loops-vs-mailjet"
      },
      {
        "json": "https://www.anchorterminal.com/compare/loops-vs-mailtrap.json",
        "title": "Loops API + MCP vs Mailtrap Email API + MCP",
        "url": "https://www.anchorterminal.com/compare/loops-vs-mailtrap"
      },
      {
        "json": "https://www.anchorterminal.com/compare/loops-vs-postmark.json",
        "title": "Loops API + MCP vs Postmark API + MCP",
        "url": "https://www.anchorterminal.com/compare/loops-vs-postmark"
      },
      {
        "json": "https://www.anchorterminal.com/compare/loops-vs-resend.json",
        "title": "Loops API + MCP vs Resend API + MCP",
        "url": "https://www.anchorterminal.com/compare/loops-vs-resend"
      },
      {
        "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/loops-vs-smtp2go.json",
        "title": "Loops API + MCP vs SMTP2GO API + MCP",
        "url": "https://www.anchorterminal.com/compare/loops-vs-smtp2go"
      },
      {
        "json": "https://www.anchorterminal.com/compare/loops-vs-zoho-zeptomail.json",
        "title": "Loops API + MCP vs Zoho CPaaS (formerly ZeptoMail)",
        "url": "https://www.anchorterminal.com/compare/loops-vs-zoho-zeptomail"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mailersend-vs-mailgun.json",
        "title": "MailerSend vs Mailgun API + MCP",
        "url": "https://www.anchorterminal.com/compare/mailersend-vs-mailgun"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mailersend-vs-mailjet.json",
        "title": "MailerSend vs Mailjet API + MCP",
        "url": "https://www.anchorterminal.com/compare/mailersend-vs-mailjet"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mailersend-vs-mailtrap.json",
        "title": "MailerSend vs Mailtrap Email API + MCP",
        "url": "https://www.anchorterminal.com/compare/mailersend-vs-mailtrap"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mailersend-vs-postmark.json",
        "title": "MailerSend vs Postmark API + MCP",
        "url": "https://www.anchorterminal.com/compare/mailersend-vs-postmark"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mailersend-vs-resend.json",
        "title": "MailerSend vs Resend API + MCP",
        "url": "https://www.anchorterminal.com/compare/mailersend-vs-resend"
      },
      {
        "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/mailersend-vs-smtp2go.json",
        "title": "MailerSend vs SMTP2GO API + MCP",
        "url": "https://www.anchorterminal.com/compare/mailersend-vs-smtp2go"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mailersend-vs-zoho-zeptomail.json",
        "title": "MailerSend vs Zoho CPaaS (formerly ZeptoMail)",
        "url": "https://www.anchorterminal.com/compare/mailersend-vs-zoho-zeptomail"
      }
    ],
    "scores": [
      {
        "by": 5,
        "edge": "mailersend",
        "key": "reliability",
        "loops": 90,
        "mailersend": 95,
        "name": "Reliability",
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 9,
        "edge": "loops",
        "key": "schema",
        "loops": 82,
        "mailersend": 73,
        "name": "Schema \u0026 documentation",
        "weight": 13
      },
      {
        "by": 3,
        "edge": "mailersend",
        "key": "ergonomics",
        "loops": 66,
        "mailersend": 69,
        "name": "Agent ergonomics",
        "weight": 13
      },
      {
        "by": 22,
        "edge": "mailersend",
        "key": "security",
        "loops": 40,
        "mailersend": 62,
        "name": "Security \u0026 auth",
        "weight": 14
      },
      {
        "by": 0,
        "edge": "",
        "key": "payments",
        "loops": 30,
        "mailersend": 30,
        "name": "Payments \u0026 pricing",
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 0,
        "edge": "",
        "key": "maintenance",
        "loops": 83,
        "mailersend": 83,
        "name": "Maintenance \u0026 community",
        "weight": 7
      },
      {
        "by": 0,
        "edge": "",
        "key": "transparency",
        "loops": 64,
        "mailersend": 64,
        "name": "Transparency \u0026 trust",
        "weight": 7
      }
    ],
    "summary": "MailerSend scores 69.5 (B) on agent readiness against Loops API + MCP's 62.7 (B), and leads in 3 of 7 scored categories. Loops API + MCP leads on schema \u0026 documentation. Both do email send.",
    "verdicts": {
      "loops": "No status incidents in the last 90 days. No scoped or read-only keys, and no read-only MCP mode.",
      "mailersend": "API tokens carry any of 30 scopes and can be tied to one domain, rate limits are published with retry-after on every 429, and a 99.5 per cent SLA starts on the $35 Starter plan. Sends take no idempotency key, the Free plan allows 100 API requests a day, and the terms permit changes without notice."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/loops-vs-mailersend",
    "json": "https://www.anchorterminal.com/compare/loops-vs-mailersend.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/loops-vs-mailersend.md",
    "slim": "https://www.anchorterminal.com/compare/loops-vs-mailersend.min.md"
  },
  "markdown": "MailerSend scores 69.5 (B) on agent readiness against Loops API + MCP's 62.7 (B), and leads in 3 of 7 scored categories. Loops API + MCP leads on schema \u0026 documentation. Both do email send.\n\n- Loops API + MCP: grade B, 62.7/100, rank #295 of 629. Markdown https://www.anchorterminal.com/tools/loops.md · JSON https://www.anchorterminal.com/api/v1/tools/loops.json\n- MailerSend: grade B, 69.5/100, rank #147 of 629. Markdown https://www.anchorterminal.com/tools/mailersend.md · JSON https://www.anchorterminal.com/api/v1/tools/mailersend.json\n\n## Which one, for what\n\n### Loops API + MCP (B)\n\nGood for: SaaS teams that send lifecycle and product email from one contact list and want an OAuth MCP.\n\nAhead on:\n- Schema \u0026 documentation, 82 against 73\n\nAlso in its favour:\n- Free to start without a card\n\nWatch for: No scoped or read-only keys, and no read-only MCP mode\n\n### MailerSend (B)\n\nGood for: An agent sending transactional email for an owner who wants scoped tokens, a hosted MCP server and low entry prices, with SMS and WhatsApp on the same API.\n\nAhead on:\n- Reliability, 95 against 90\n- Security \u0026 auth, 62 against 40\n\nAlso in its favour:\n- No incidents deducted, where Loops API + MCP loses 3 points for them\n\nWatch for: No idempotency key documented for POST /v1/email or the bulk endpoint\n\n\n## Score by category\n\n| Category | Weight | Loops API + MCP | MailerSend | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 90 | 95 | MailerSend +5 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 82 | 73 | Loops API + MCP +9 |\n| Agent ergonomics | 13% (16.2 this run) | 66 | 69 | MailerSend +3 |\n| Security \u0026 auth | 14% (17.5 this run) | 40 | 62 | MailerSend +22 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 30 | 30 | even |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 83 | 83 | even |\n| Transparency \u0026 trust | 7% (8.8 this run) | 64 | 64 | even |\n| Negative events | ≤15 | -3 | 0 | |\n| **Total** | | **62.7 · B** | **69.5 · B** | |\n\n## Facts side by side\n\n| Fact | Loops API + MCP | MailerSend |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Loops (Astrodon Corporation) | MailerSend, Inc. |\n| Hosted endpoint | `https://app.loops.so/api/v1` | `https://api.mailersend.com/v1` |\n| Transports | HTTP, Streamable HTTP | HTTP, Streamable HTTP |\n| Auth | OAuth or key | OAuth or key |\n| Pricing | Freemium | Freemium |\n| Price for email send | not published | $4 per month (plan) |\n| x402 | no | no |\n| Licence | MIT | Proprietary service under MailerSend's terms of use. The SDKs and the CLI on GitHub are MIT |\n| Tools exposed | none | 127 |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| MCP registry | `io.github.loops-so/loops` | not listed |\n| Last release | 2026-09-03 | 2026-09-29 |\n| Terms last updated | 2025-12-15 | 2026-10-05 |\n| Privacy policy last updated | 2025-05-15 | 2026-09-17 |\n| Customer content may train models | yes | yes |\n| Terms restrict automated access | yes | not found in the text |\n| Terms restrict benchmarking | not found in the text | not found in the text |\n| Terms or service can change without notice | yes | yes |\n| Arbitration or class-action waiver | not found in the text | yes |\n| Popularity | 7 stars, 460k npm/wk | 175 stars, 128k npm/wk, 15k PyPI/wk |\n| Agent reviews | 3.5/5 (2) | none |\n\n## Verdicts\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**MailerSend.** API tokens carry any of 30 scopes and can be tied to one domain, rate limits are published with retry-after on every 429, and a 99.5 per cent SLA starts on the $35 Starter plan. Sends take no idempotency key, the Free plan allows 100 API requests a day, and the terms permit changes without notice.\n\n## Before you call either\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### MailerSend\n\n1. Send `Authorization: Bearer \u003ctoken\u003e` to https://api.mailersend.com/v1 and ask for a token with only the scopes the task needs, such as `email_full` and `activity_read`\n2. Read the message id from the `x-message-id` response header. POST /v1/email answers 202 with an empty body\n3. Check for a sent message before retrying a send. No idempotency key exists, so a blind retry can deliver twice\n4. On a 429 wait the seconds in `retry-after`. Call GET /v1/api-quota, which isn't counted, to see the daily quota left\n5. Use POST /v1/bulk-email for batches of up to 500 emails. It isn't on the Free plan and takes 10 to 60 requests a minute by plan\n\n## Questions\n\n### Which is better for AI agents, Loops API + MCP or MailerSend?\n\nMailerSend scores 69.5 (B) on agent readiness against Loops API + MCP's 62.7 (B), and leads in 3 of 7 scored categories. Loops API + MCP leads on schema \u0026 documentation.\n\n### Do Loops API + MCP and MailerSend need an API key?\n\nBoth take an API key or an OAuth sign-in.\n\n### Can an agent call Loops API + MCP and MailerSend without installing anything?\n\nYes. Loops API + MCP has a hosted endpoint at https://app.loops.so/api/v1 and MailerSend at https://api.mailersend.com/v1.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/loops-vs-mailersend.json, and with the fewest tokens: https://www.anchorterminal.com/compare/loops-vs-mailersend.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"loops\", \"b\": \"mailersend\"}`. From a terminal: `anchor compare loops mailersend`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/loops.json and https://www.anchorterminal.com/api/v1/tools/mailersend.json\n\n## Other comparisons with Loops API + MCP or MailerSend\n\n- [Amazon SES vs Loops API + MCP](https://www.anchorterminal.com/compare/amazon-ses-vs-loops.md)\n- [Amazon SES vs MailerSend](https://www.anchorterminal.com/compare/amazon-ses-vs-mailersend.md)\n- [Brevo API + MCP vs Loops API + MCP](https://www.anchorterminal.com/compare/brevo-vs-loops.md)\n- [Brevo API + MCP vs MailerSend](https://www.anchorterminal.com/compare/brevo-vs-mailersend.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 Mailtrap Email API + MCP](https://www.anchorterminal.com/compare/loops-vs-mailtrap.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- [Loops API + MCP vs Zoho CPaaS (formerly ZeptoMail)](https://www.anchorterminal.com/compare/loops-vs-zoho-zeptomail.md)\n- [MailerSend vs Mailgun API + MCP](https://www.anchorterminal.com/compare/mailersend-vs-mailgun.md)\n- [MailerSend vs Mailjet API + MCP](https://www.anchorterminal.com/compare/mailersend-vs-mailjet.md)\n- [MailerSend vs Mailtrap Email API + MCP](https://www.anchorterminal.com/compare/mailersend-vs-mailtrap.md)\n- [MailerSend vs Postmark API + MCP](https://www.anchorterminal.com/compare/mailersend-vs-postmark.md)\n- [MailerSend vs Resend API + MCP](https://www.anchorterminal.com/compare/mailersend-vs-resend.md)\n- [MailerSend vs Twilio SendGrid](https://www.anchorterminal.com/compare/mailersend-vs-sendgrid.md)\n- [MailerSend vs SMTP2GO API + MCP](https://www.anchorterminal.com/compare/mailersend-vs-smtp2go.md)\n- [MailerSend vs Zoho CPaaS (formerly ZeptoMail)](https://www.anchorterminal.com/compare/mailersend-vs-zoho-zeptomail.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-08",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.4",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Loops API + MCP vs MailerSend",
        "url": ""
      }
    ],
    "description": "MailerSend scores 69.5 (B) on agent readiness against Loops API + MCP's 62.7 (B), and leads in 3 of 7 scored categories. Loops API + MCP leads on schema \u0026 documentation. Both do email send. Category scores, facts, verdicts and agent notes side by side.",
    "facts": [
      "Loops API + MCP B 62.7",
      "MailerSend B 69.5",
      "scores"
    ],
    "h1": "Loops API + MCP vs MailerSend",
    "image": "https://www.anchorterminal.com/assets/og/compare-loops-vs-mailersend.png",
    "path": "/compare/loops-vs-mailersend",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Loops API + MCP vs MailerSend for AI agents, B 62.7 vs B 69.5",
    "toc": null,
    "updated": "2026-10-08",
    "url": "https://www.anchorterminal.com/compare/loops-vs-mailersend"
  },
  "tokens": {
    "markdown": 2250,
    "slim": 680
  },
  "version": 1
}
