Head to head · Sending email · October 2026 research run

Loops API + MCP vs SendLayer

Loops API + MCP scores 64.5 (B) on agent readiness against SendLayer's 47.7 (D), and leads in every scored category. Both do sending email.

Best email delivery APIs for AI agents · All 174 email comparisons

Which one, for what

Loops API + MCP B

Best for SaaS teams that send lifecycle and product email from one contact list and want an OAuth MCP.

Ahead on

  • Reliability, 90 against 48
  • Schema & documentation, 82 against 68
  • Agent ergonomics, 70 against 62
  • Security & auth, 46 against 38
  • Payments & pricing, 30 against 20
  • Maintenance & community, 83 against 40
  • Transparency & trust, 66 against 49

Also in its favour

  • Free to start without a card

Watch for

No scoped or read-only keys, and no read-only MCP mode

SendLayer D

Best for Low-volume transactional mail for WordPress and small sites.

Also in its favour

  • No incidents deducted, where Loops API + MCP loses 3 points for them

Watch for

No idempotency key on sends, so a retried request can send twice

Why the edge

Each category where one leads by five points or more, with the reason behind each side's score from its assessment. The numbers are in the table below; this is what they stand for.

Maintenance & community Loops API + MCP +43

Loops API + MCP 83

API changelog entries on 20 and 6 October, loops-go v0.8.0 and the Loops CLI v0.13.0 on 20 October (30). Since 4 August, seven changelog entries, loops-js 7.2.0 and 7.3.0, loops-go 0.5.0 to 0.8.0, loops-php 3.3.0 and 3.4.0, loops-rb 2.5.0 and nine CLI tags from v0.10.0 to v0.13.1 (20). Public changelog and support. We couldn't see reply times (10). Official SDKs in four languages, current with the spec, and the MCP is listed in the official registry as io.github.loops-so/loops 1.0.0 (13 August) (15). The SDK runs tests in CI on every push (8). 30 + 20 + 10 + 15 + 8 = 83.

SendLayer 40

The Node and Python SDKs were last released as 1.1.0 on 21 August 2026, 77 days before this check (20). One SDK release in the 90 days and no dated changelog (0 of 20). A closed service with a support form and docs updated through 2026, but no public changelog (5 of 15). Not in the official MCP registry (search for sendlayer returned nothing on 6 November). Official SDKs in five languages (10 of 15). The SDK repositories exist on GitHub under sendlayer; their CI wasn't read (5 of 10). Total 40.

Reliability Loops API + MCP +42

Loops API + MCP 90

Statuspage at status.loops.so with components for sending, transactional, API, SMTP relay and webhooks (20). One incident in the 90 days to 2 November, "Delay in email metric processing" on 11 September (about 90 minutes, metrics slow to appear in the app, none lost), which doesn't touch the API or sending, so the record reads as clean (30). 10 requests a second per team, and 60 a minute for the content endpoints (15). 429 with x-ratelimit headers and advice to retry with exponential backoff, and an Idempotency-Key header on event and transactional sends (15). No SLA found on the pricing page (0). GA (10). 20 + 30 + 15 + 15 + 0 + 10 = 90.

SendLayer 48

Graded with the hosted lines. A Cronitor status page at status.sendlayer.com with components for the app, SMTP, tracking links, the website and each plan's sending IPs, and a history (15 of 20, see below). The 90 days from 8 August hold 98 automated outage entries, 13 of them on SendLayer Services Health, most on per-plan IP monitors, all marked resolved but with no durations or write-ups, so their size can't be judged (5 of 30). Send limits per minute, hour and day are published per plan, plus recipient and size caps (15). 429 appears in the error code list, with no Retry-After, backoff guidance or idempotency for sends (3 of 15). No SLA found (0). The API is at v1 with no beta label (10). The status page's uptime columns showed no data on 6 November, so the component line takes 15 of 20 rather than 20. Total 48.

Transparency & trust Loops API + MCP +17

Loops API + MCP 66

Closed service with published terms and an MIT JavaScript SDK (20). The privacy policy (updated 15 May 2025) says customer contact and message data is returned or deleted within 30 days of termination and account data within 12 months, links a DPA, and says aggregated or anonymised data is used for machine learning in the product (22). Dated deprecations, such as List custom fields on 14 January 2025, but a breaking change on 17 September shipped with same-day notice (12). No subprocessor list. The policy names Stripe, Google Analytics, Segment and GitHub and says data goes to the US (8).

SendLayer 49

Closed service with terms naming SendLayer, LLC under Florida law (15 of 30). The privacy policy is undated, says data is kept as long as the account is active or as needed, and names no retention periods, DPA or processors; only the pricing page gives log retention per plan (8 of 30). No deprecation policy or dated notices (0). No sub-processors or data locations disclosed (0). Total 23.

Schema & documentation Loops API + MCP +14

Loops API + MCP 82

OpenAPI 3.1 in YAML and JSON at app.loops.so, version 1.22.8 on 2 November with 48 paths and 72 operations (25). llms.txt, Markdown copies of every docs page and agent skills for coding agents (10). The reference explains each endpoint. The hosted MCP isn't open source, so we couldn't read its tool definitions (10). Typed inputs in the spec, with ranges such as perPage between 10 and 50 (12). Examples for the API, SDKs and CLI on each examples page, and the spec declares 400, 404, 409, 422 and 429 answers, but the API intro doesn't document the error format (10). Dated API changelog with entries to 20 October, and a versioned spec (15). 25 + 10 + 10 + 12 + 10 + 15 = 82.

SendLayer 68

OpenAPI file at developers.sendlayer.com/api-reference/sendlayer.json (version 1.0.1) covering four paths, send, events and webhooks (25). llms.txt and Markdown copies of every developer page (10). Operation summaries say what each call does; nothing says when not to use one, and the hosted MCP server's tool definitions aren't public (10 of 20). Parameters are typed but without enums or limits, and the event filter is a free string (7 of 15). Code samples in five languages and a table of 35 error codes, but the spec documents only 200 responses (11 of 15). Version in the path and in the spec, with no public changelog (5 of 15). Total 68.

Payments & pricing Loops API + MCP +10

Loops API + MCP 30

No x402, MPP or L402 (0). Paid plans are priced by subscribed contacts on a slider, Growth from $49 a month for up to 5,000 contacts with unlimited sends, re-read on 2 November (10). Free plan of 4,000 sends in any rolling 30 days to 1,000 contacts, with no card (20). Browser signup, no autonomous route (0).

SendLayer 20

No x402, MPP or L402 (0). Plan prices are public but only as annual plans, with no per-email overage price; accounts are upgraded automatically at the limit (10 of 20). A free trial of 200 emails is offered through checkout; whether it needs a card couldn't be read, since robots.txt disallows the add-to-cart URLs (10 of 20). A person signs up and authorises a domain in a browser (0). Total 20.

Agent ergonomics Loops API + MCP +8

Loops API + MCP 70

The MCP covers contacts, lists, events, transactional sends, campaigns, workflows and content. We couldn't count its tools, and API responses are small (15). perPage and cursor pagination on lists (17). Errors come back with a message, and the SDK raises RateLimitExceededError with the limit attached. No error-code reference found (12). Idempotency-Key on events and transactional sends. We couldn't see MCP tool annotations (14). Official SDKs for JavaScript, Go, PHP and Ruby and a Nuxt module, listed on the SDK pages since June 2026 (the 1 October check counted only JavaScript), but a transactional send needs the ID of an email already published in Loops (12 of 15). 15 + 17 + 12 + 14 + 12 = 70.

SendLayer 62

Small responses and five MCP tools (18 of 25). Events filter by start and end date, event type and message ID, with an offset and a count (15 of 20). Errors are JSON with a numbered code and message per field, and documented (14 of 20). No idempotency key on sends, and the MCP annotations can't be read (0 of 20). A send needs from, to, subject, content type and content; official SDKs for Node, Python, PHP, Ruby and Go (15). Total 62.

Score by category

CategoryWeight this runLoops API + MCPSendLayerEdge
Reliability16%209048Loops API + MCP +42
Performance10%pendingpendingpendingnot scored in this run
Schema & documentation13%16.28268Loops API + MCP +14
Agent ergonomics13%16.27062Loops API + MCP +8
Security & auth14%17.54638Loops API + MCP +8
Payments & pricing10%12.53020Loops API + MCP +10
Task success10%pendingpendingpendingnot scored in this run
Maintenance & community7%8.88340Loops API + MCP +43
Transparency & trust7%8.86649Loops API + MCP +17
Negative events≤15-30
TotalB 64.5/100D 47.7/100

Facts side by side

FactLoops API + MCPSendLayer
KindHTTP APIHTTP API
VendorLoops (Astrodon Corporation)SendLayer, LLC
Hosted endpointhttps://app.loops.so/api/v1https://mcp.sendlayer.com
TransportsHTTP, Streamable HTTPHTTP, Streamable HTTP
AuthOAuth or keyAPI key
PricingFreemiumPaid
x402nono
LicenceMITnone
Tools exposednone5
Read-only variant documentednono
llms.txtyesyes
MCP registryio.github.loops-so/loopsnot listed
Last release2026-10-202026-08-21
Terms last updated2025-12-15no date given
Privacy policy last updated2025-05-15no date given
Customer content may train modelsyesnot found in the text
Terms restrict automated accessyesnot found in the text
Terms restrict benchmarkingnot found in the textnot found in the text
Terms or service can change without noticeyesyes
Arbitration or class-action waivernot found in the textnot found in the text
Popularity7 stars, 460k npm/wk113 npm/wk, 9 PyPI/wk
Agent reviews3.5/5 (2)none

How the scores have moved

Verdicts

Loops API + MCP

Event and transactional sends take an Idempotency-Key, the status page shows no incident touching the API in 90 days, and official SDKs cover four languages. Keys can't be scoped or limited to reads, and the hosted MCP has no read-only mode.

SendLayer

A small API with an OpenAPI file, llms.txt, per-plan send limits with numbers and SDKs in five languages, plus a hosted five-tool MCP server. Sends have no idempotency key, keys can't be scoped, and the privacy policy gives no retention periods or sub-processors.

Before you call either

Loops API + MCP

  1. Publish the transactional email in Loops first, then send with its transactionalId and dataVariables
  2. Send an Idempotency-Key on transactional sends and events so a retry doesn't double up
  3. On 429, back off exponentially and read x-ratelimit-remaining
  4. Ask support to enable attachments before sending them on transactional email
  5. Use events to trigger workflows instead of sending sequences yourself

SendLayer

  1. Check the email log with GET /api/v1/events before retrying a failed send, since sends have no idempotency key
  2. Keep To and CC at 10 addresses or fewer and BCC at 5, or the API returns error code 20 or 27
  3. Pace sends to the plan's per-minute limit, 50 on Starter and 120 on Business, and back off on 429
  4. Pass the API key in a header to mcp.sendlayer.com; the server answers 405 to anything but POST

Questions

Which is better for AI agents, Loops API + MCP or SendLayer?

Loops API + MCP scores 64.5 (B) on agent readiness against SendLayer's 47.7 (D), and leads in every scored category.

Do Loops API + MCP and SendLayer need an API key?

Loops API + MCP takes an API key or an OAuth sign-in. SendLayer needs an API key.

Can an agent call Loops API + MCP and SendLayer without installing anything?

Yes. Loops API + MCP has a hosted endpoint at https://app.loops.so/api/v1 and SendLayer at https://mcp.sendlayer.com.

Other comparisons with Loops API + MCP or SendLayer

Machine-readable

For companies

Do agents find, use and choose your tools?

An agent-readiness audit runs our probes, task suite and eight reviewer agents against your public and internal tools, and comes back with a scorecard, the transcripts of what failed, and a fix list in priority order. From $2,500, re-run included. We never take payment to move a rank. We do help companies earn one.