Nylas Agent Accounts Alternative: Compliance vs Controls
Nylas wins on compliance paperwork, free quota, custom domains, calendar and existing-mailbox reach, and a procurement team should pick them. Pick Email for Agents when the human approval step has to be enforced by the server rather than written by you, and the agent's tool list has to shrink with its grant.
At a glance
| Dimension | Email for Agents | Nylas |
|---|---|---|
| Compliance attestations They win this outright. A BAA is Enterprise only. | None. We hold no SOC 2 report, ISO certification or HIPAA attestation | SOC 2 Type II, ISO 27001, ISO 27701, HIPAA, CSA STAR Level One, PCI-DSS SAQ A |
| Free tier They win this outright. | One live inbox and 100 email units a month per verified owner identity | 3 Agent Accounts, 3,000 agent emails a month, 3 GB storage, 200 sends a day per account |
| Paid plans | Builder and Team are proposed, not purchasable; checkout is disabled | Essentials $15/mo, Pro $49/mo ($43 on annual), Enterprise by quote; Free, Essentials and Pro are self-serve |
| Custom domains | Require a paid plan, and paid plans are not purchasable yet | 1 on Essentials, 10 on Pro, 20 on Pro annual; free *.nylas.email trial subdomain |
| Calendar and existing mailboxes | Neither. Agent-owned inboxes on agents.emailforagents.ai only | Calendar, RSVP and Contacts on Agent Accounts; OAuth into Google, Microsoft, IMAP and more |
| Human approval before send Their MCP docs make the builder responsible for user confirmation. | Server-held approval record, seven-day expiry, emits approval.requested and approval.rejected | MCP send needs a prior confirm_send_message call; none of the seven documented rule actions holds a send for review |
| MCP credential and tool list | OAuth connection grant only; six tools, filtered by grant | Application API key as Bearer token; 38 tools listed; we found no documented per-credential tool filter |
| Testing without real mail | Non-routable .mail.invalid inboxes, simulated transport, efa_test_ keys | Trial-domain accounts send real mail; we found no non-transmitting test mode in their docs |
Choose Nylas if
- Procurement needs attestations. Nylas lists SOC 2 Type II, ISO 27001, ISO 27701, HIPAA, CSA STAR Level One and PCI-DSS SAQ A. We hold no SOC 2 report or ISO certification.
- You handle protected health information and need a signed BAA. Nylas offers one on Enterprise; we offer none on any plan.
- The agent must work inside mailboxes people already have. Nylas connects Google, Microsoft, Exchange, iCloud, IMAP and Yahoo accounts through one API.
- The agent books meetings. Agent Accounts come with a primary calendar, RSVP and a Contacts API; we have no calendar at all.
- You need volume or your own domain today: 3,000 free agent emails a month, and a custom sending domain from $15 a month.
Choose Email for Agents if
- A send that needs review must stop on the server as an approval record, not rely on your agent calling a confirm tool first.
- An agent granted read and draft must not see a send tool at all, because tools/list is filtered by the grant.
- Every key holds named scopes from a vocabulary of 32, cannot exceed the human who created it, and narrows on the next request after that human loses access.
- Your CI must exercise the inbound loop against a non-routable inbox whose efa_test_ key cannot reach live.
If your security review will not start without a SOC 2 Type II report, choose Nylas and stop reading. Nylas lists that report alongside ISO 27001, ISO 27701, HIPAA, CSA STAR Level One and PCI-DSS SAQ A on its own security page. We hold no SOC 2 report or ISO certification, and no HIPAA attestation either. That is the first fork, and for many buyers it is the only one that matters.
This page settles the other fork: when paperwork is not the gate, which Nylas Agent Accounts alternative gives you controls you can check yourself? It covers what Nylas actually ships for agents today, what it costs, and the one design difference that is not about quota. If you want the wider field, the comparison hub lists every vendor we have checked.
What Nylas Agent Accounts are in September 2026
Agent Accounts are new mailboxes, not connections to old ones. Nylas describes them as
“fully functional email and calendar identities that you create and control through the
API, with no user accounts to connect”. You create one with POST /v3/connect/custom and
"provider": "nylas", the same endpoint Nylas uses for bring-your-own-authentication
grants, or with nylas agent account create from their CLI. You get back a grant_id
and use it in the path of every later call.
Three facts frame the rest of this page.
It is generally available. The Nylas pricing page carries the banner “Agent Accounts is generally available”, and the launch post is dated 17 June 2026.
Pricing is published. Free, Essentials and Pro are self-serve, every plan includes Agent Accounts, and only Enterprise is quoted.
It is more than email. Each Agent Account gets a primary calendar with event creation
and RSVP, full CRUD through the Contacts API, system folders, and IMAP and SMTP
submission so a person can open the same mailbox in a normal mail client. Addresses
live on a domain you register with MX and TXT records, or on a free *.nylas.email
trial subdomain that needs no DNS.
Alongside Agent Accounts sits the product Nylas is known for: OAuth into mailboxes people already own. Their getting-started guide lists Google, Microsoft, Exchange (EWS), iCloud, IMAP and Yahoo behind one API, plus Zoom for meetings. Both kinds of account are grants, addressed the same way in the API path, so one integration can serve an agent’s own mailbox and a person’s.
Where Nylas wins, plainly
Five rows in the table go to Nylas, and none of them is close.
Compliance. The Nylas security page lists SOC 2 Type II covering the security, availability and confidentiality criteria, ISO 27001, ISO 27701, CSA STAR Level One, PCI-DSS SAQ A for fully outsourced cardholder data, HIPAA and the GLBA Privacy Rule. The SOC 2 report is available under NDA through their trust centre at trust.nylas.com, and the page states independent penetration testing conducted annually. The Agent Accounts launch post says every account is covered by SOC 2 Type II, ISO 27001, ISO 27701, HIPAA and GDPR on every plan. One nuance for regulated buyers: the pricing page puts the HIPAA and HITECH BAA in the Enterprise column only, so the controls apply from the free plan but the signed agreement is a sales conversation. We have no report, no certificate and no BAA, and our security page says so in a list rather than a footnote.
Free quota. Nylas Free gives you 3 Agent Accounts, 3,000 agent emails a month, 3 GB of storage and 3 GB of bandwidth, with a cap of 200 sends a day per account and 30 days of inbox retention. Ours is one complimentary live inbox and 100 email units a month per verified owner identity, where a unit is one message received or one recipient sent to. Their monthly figure counts sent mail only and ours also counts every message received, so the real gap is wider than the thirtyfold the headline numbers suggest.
Paid plans you can actually buy. Essentials is $15 a month with 10 Agent Accounts, 10,000 agent emails and one custom sending domain. Pro is $49 a month, or $43 on an annual commitment, with 50 Agent Accounts, 50,000 agent emails and 10 domains (20 on annual). Pro bills overage at $0.40 per extra account ($0.20 annual) and from $0.80 per thousand extra emails ($0.70 annual); Free and Essentials are hard caps with no overage. Our Builder ($19) and Team ($79) plans are proposed launch prices and are not purchasable. Stripe checkout is disabled, which also means custom domains, which need a paid plan, are not something you can get from us yet. See pricing for the exact wording.
Calendar and contacts. An agent that schedules meetings needs somewhere for the invitation to land and a way to accept it. Nylas has that on the same grant as the mailbox. We have no calendar and no contacts API.
Existing mailboxes. If the agent assists a person inside their Gmail or Outlook, Nylas does that and we do not. Every inbox here belongs to the agent.
Where the send approval lives
This is the difference that is not about quota, and it is the reason this page exists.
Nylas’s hosted MCP server, at mcp.us.nylas.com or mcp.eu.nylas.com, lists 38 email,
calendar, contacts and Notetaker tools. Its documentation says send_message and
send_draft “require a preceding call to confirm_send_message or
confirm_send_draft”, and that this “prevents your agent from sending email without
explicit confirmation”. The tool list describes confirm_send_message as generating
“the confirmation hash required before calling send_message”. Read that carefully. The
confirm tool is in the same catalog as the send tool, and it is the agent that calls it.
The same page’s security section warns that malicious content can “trick your agent into
sending email”, then says: “You are responsible for implementing safeguards: Always
require explicit user confirmation before sending email.”
That is an honest description, and the two-step call does catch a model that fires off a send by accident. As documented, though, it does not route the send to a person. An injected email that talks the model into sending can talk it into calling the confirm tool first.
Their server-side policy layer does not fill the gap either. Nylas Policies, Rules and
Lists offer seven actions: block, mark_as_spam, assign_to_folder, mark_as_read,
mark_as_starred, archive and trash. An outbound block returns HTTP 403, which is
a real control. The non-blocking outbound actions, by their own docs, change only the
stored sent copy, not what the recipient receives. None of the seven holds a message for
review, so as documented an outbound message is either blocked or sent. Their Agent
Accounts overview does describe a support agent where an LLM drafts replies and “humans
approve the sensitive ones via a webhook flow”, which is the part you build yourself.
Here, the hold is a record on the server. When an inbox policy requires review, the
send request returns HTTP 202 with "result": "approval_required", a draft_id and an
approval_id, and the API writes an approvals row in state pending with an expiry
seven days out, then emits approval.requested. A reviewer’s refusal emits
approval.rejected. An approval moves the send on, which you observe as
message.queued. Those are the two approval events this build emits. Two more names,
approval.approved and approval.invalidated, are declared in the event catalogue and
never fire, so do not build a handler for them.
The rest of the design hangs off that record. The approval is bound to a SHA-256 hash of
the canonical payload, so a draft edited after review is refused with version_conflict
instead of sent. Authority is re-checked when the decision is made, so revoking the
agent’s key while its draft waits makes the approval fail. And a credential that holds
drafts:submit without messages:send can compose a complete message that always lands
in the approval queue, with reason code draft_only_principal. No agent-side call can
skip that, because the agent has no call that sends. The mechanics are on
controls and walked through in
human approval for agent email.
A tool list that shrinks with the grant
The second half of the same argument is what the agent can see.
Nylas’s MCP server authenticates with a Bearer token carrying “your Nylas API key in
the Authorization header”, which the page calls “the same key you use for direct API
calls”, and the tool catalog on that page is one list. For data isolation it advises you
to “configure your agent’s system prompt to ensure each user’s data is only accessed
through their own grant”. Nylas’s API reference, explaining why the /grants/me/
shorthand does not work with API keys, notes that “there is no grant associated with an
API key”. Nylas does document per-grant provider scopes for connected Google and
Microsoft accounts, which limit what that grant can do at the provider. We found no
documented way, on the pages listed below, to give an MCP session fewer tools or to
scope the API key itself to one grant. That may exist somewhere we did not read. It is
not on the MCP page, and that is where a builder would look.
Our MCP endpoint rejects API keys outright. The only credential it accepts is an OAuth
connection grant tied to the human who authorised it. The server exposes six tools,
list_inboxes, list_threads, list_messages, get_message, create_draft and
send_message, and it filters tools/list by the grant before it builds the response,
then re-checks the same rule in tools/call. A grant of read plus draft produces a
session in which send_message does not appear, and create_draft cannot transmit
mail. The model has nothing to be talked into.
A denied call is an audit line after the fact. An absent tool never had a name. That distinction is the subject of the MCP tool surface as a permission boundary.
Controls you can check without a report
A SOC 2 report is an auditor’s opinion that controls operated over a window. It is worth a great deal and we do not have one. What we can offer instead is narrower: every control below is stated in the API reference with the exact string or error it produces, so you can test it in an afternoon.
- 32 scopes, all named. From
projects:readtobilling:manage, includingmessages:send,drafts:submit,approvals:decideandtest:simulate. A key holds only the ones you list. The full vocabulary is in agent email permissions and scopes. - A credential cannot exceed its creator. Asking for a scope your own role lacks
fails at creation with
permission_denied, not later when the key is used. - Authority is re-read on every request. A key is a lookup handle, not a claim set. Remove the human’s project access and every key they minted narrows on the next call.
- Test keys cannot reach live. The environment is in the prefix. An
efa_test_key resolves only to test projects and test inboxes, and no flag crosses it. - The MCP surface follows the grant, as above.
- Held sends are records, with two events that fire and two names that do not.
None of that replaces an attestation for a buyer who needs one. For a buyer who is allowed to judge on evidence, it is evidence they can reproduce. How to run that evaluation is laid out in evaluating agent email security without certificates.
Testing: which mailbox the message lands in
Nylas’s quickstart is built on real mail. A trial *.nylas.email subdomain works the
moment you create it, and the guide has you send from the Agent Account and watch a
reply arrive, noting that “the recipient sees a normal message from your Agent Account’s
address”. That is the right design for proving deliverability. We found no test mode
that stops transmission in the Agent Accounts docs we read. Their limits page does
distinguish sandbox applications, at 1 request per second, from others at 5.
Our test inboxes take the other approach. They use a non-routable .mail.invalid
address and a simulated transport, so an agent under test cannot email a real person.
You inject inbound mail with the test:simulate scope through
POST /v1/projects/{project_id}/test/inbound, and it lands in the agent’s own inbox.
The allowance is small and stated: 3 active test inboxes per workspace, the last 100
messages, 10 MB, content expiring after 7 days. The CI pattern is in
testing agent email without sending.
Neither approach is unique in the market. The question is whether your test suite should cross a real transport or not, and on that one the two products differ.
Choosing a Nylas Agent Accounts alternative by requirement
The reasoning behind the two lists at the top of this page fits in four questions.
Is there a questionnaire with a SOC 2 or ISO line on it? Choose Nylas. Nothing on this page changes that answer, and pretending otherwise would waste your procurement cycle.
Does the agent act inside a person’s existing mailbox, or book meetings? Choose Nylas. Their core product is connecting existing Google, Microsoft, Exchange, iCloud, IMAP and Yahoo accounts, and Agent Accounts add a calendar and contacts on the agent’s own grant.
Is volume or your own domain the constraint? Choose Nylas. 3,000 free agent emails a month against our 100 units, and a custom domain for $15 a month against nothing purchasable here.
Is the constraint that a hostile email must not be able to cause a send? That is
the case for us. Nylas gives you an agent-called confirm step and a block rule, and
leaves the human in the loop to your code. We put the human in the loop on the server,
as a record with an expiry, a payload hash and a re-check of authority, and we remove
the send tool from any MCP session whose grant lacks messages:send.
If that last question is the one keeping you up, start with the free inbox and the
sending controls docs, point a hostile test email at a
read-and-draft agent, and check that send_message is not in its tool list.
Sources
Everything stated above about Nylas was read from these pages on . Products change; if a claim here is stale, it is a bug worth reporting.
- https://www.nylas.com/pricing/
- https://www.nylas.com/products/agent-accounts/
- https://www.nylas.com/blog/introducing-nylas-agent-accounts/
- https://www.nylas.com/security/
- https://developer.nylas.com/docs/v3/agent-accounts/
- https://developer.nylas.com/docs/v3/agent-accounts/send-limits/
- https://developer.nylas.com/docs/v3/agent-accounts/policies-rules-lists/
- https://developer.nylas.com/docs/v3/agent-accounts/provisioning/
- https://developer.nylas.com/docs/v3/getting-started/agent-accounts/
- https://developer.nylas.com/docs/v3/getting-started/
- https://developer.nylas.com/docs/dev-guide/mcp/
- https://developer.nylas.com/docs/v3/auth/
- https://developer.nylas.com/docs/reference/api/