Starter
For your first email program.
$192 billed yearly.
20,000 emails / month
Choose Starter- 5 brands · 3 seats
- 5 custom sending domains
- 500 email verifications/month
- $1.50 / 1,000 extra emails
An AI agent should send email through an API or an MCP server, not SMTP. SMTP makes the agent hold a long-lived username and password, runs a multi-step conversation for every connection, and reports a failure as a three-digit code with free text. An API key can be scoped and revoked, and an API error names the field that broke. An MCP server goes a step further and hands the agent its email tools directly, so Claude, ChatGPT, Cursor or Codex can see what it is allowed to do before it does it. To send email from an AI agent with Nitrosend, add its hosted MCP server at api.nitrosend.com/mcp to Claude, ChatGPT, Cursor or Codex, sign in with OAuth in the browser, and ask for the email: a transactional message goes out on the call, and a campaign or flow waits as a draft until it is approved. Nitrosend also has a REST API and a CLI, an agent can create the account and get a working sender on its own, and it costs $20 a month for 20,000 emails. Nitrosend has no SMTP relay, so for software that can only speak SMTP, Amazon SES is the cheapest relay and Postmark the most careful one.
Here are the eight questions that decide how an agent should send. A tick means that way of sending does it, a cross means it does not, and a dash means the answer is not a clean yes or no.
| Service | Answer |
|---|---|
| No. No. SMTP authentication sends a username and password when each connection opens (RFC 4954). | |
| Yes. Yes. A bearer API key, which the provider can scope and revoke. | |
| Yes. Yes on a hosted server, which signs in with OAuth. A local server reads an API key from its config. |
| Service | Answer |
|---|---|
| No. No. EHLO, MAIL FROM, RCPT TO and DATA each wait for a reply from the server (RFC 5321). | |
| Yes. Yes. One HTTPS POST carries the recipient, subject and body. | |
| Yes. Yes. One tool call, which the server turns into an API request. |
| Service | Answer |
|---|---|
| Not a yes or no. Partly. A three-digit reply code plus free text that each provider words differently (RFC 5321). | |
| Yes. Yes. A JSON error body that names the field that failed. | |
| Yes. Yes. The tool returns a structured result the model reads directly. |
| Service | Answer |
|---|---|
| No. No. Ports 25, 465, 587 and 2525, and many networks and cloud hosts block some of them. | |
| Yes. Yes. HTTPS on port 443. | |
| Yes. Yes. A hosted server is reached over HTTPS on port 443. |
| Service | Answer |
|---|---|
| No. No. SMTP only moves a message, it has no list of actions. | |
| Not a yes or no. Only if the agent reads the docs or an OpenAPI spec first. | |
| Yes. Yes. The server lists its tools and their inputs when the agent connects (MCP specification). |
| Service | Answer |
|---|---|
| No. No. Sending is all SMTP does. | |
| Yes. Yes, where the provider exposes endpoints for it. | |
| Yes. Yes, where the server exposes tools for it. |
| Service | Answer |
|---|---|
| Yes. Yes. Almost anything that sends mail can be pointed at an SMTP host. | |
| No. No. The software needs an HTTP client and code written against the API. | |
| No. No. It needs an MCP client, such as Claude, ChatGPT, Cursor or Codex. |
| Service | Answer |
|---|---|
| Yes. Yes. Change the host, port, username and password. | |
| No. No. Each provider's API is different, so moving is a code change. | |
| Not a yes or no. Partly. The agent adapts to the new server's tools, but a person connects and signs in again. |
The protocol answers come from the SMTP standard, RFC 5321, its authentication extension, RFC 4954, and the Model Context Protocol specification. SMTP wins two rows, older software and switching providers, and both matter only when nobody is writing new code.
The next question is which services sit behind each path. Nitrosend and Resend both host an MCP server (Resend's is at mcp.resend.com). Nitrosend is the only one of these six where the agent can create the account and get a working sender on its own, and the only one with no SMTP relay.
| Service | Answer |
|---|---|
| No. No. Sending is through the API, the CLI and the MCP server. | |
| Yes. Yes. An SMTP relay on every plan. | |
| Yes. Yes. An SMTP relay. | |
| Yes. Yes. SMTP alongside the API. | |
| Yes. Yes. An SMTP relay. | |
| Yes. Yes. An SMTP interface. |
| Service | Answer |
|---|---|
| Yes. Yes. A remote server at api.nitrosend.com/mcp, with OAuth sign-in. | |
| Yes. Yes. A remote server at mcp.resend.com/mcp, with OAuth sign-in. | |
| No. No. Mailgun's docs say the server runs locally and no hosted version exists. | |
| No. No. The official server runs locally through npx with an API token. | |
| No. No. Every SendGrid server on the official MCP registry is community built, none hosted by Twilio. | |
| No. No hosted SES MCP server. |
| Service | Answer |
|---|---|
| Yes. Yes, through the MCP server. A single transactional email sends on the call; campaigns and flows stay drafts until approved. | |
| Yes. Yes, once a person has created the account and verified a sending domain. | |
| Yes. Yes, once a person has created the account and handed the MCP server an API key. | |
| Yes. Yes, once a person has set up the account and handed the MCP server a server token. | |
| Not a yes or no. Only by writing code against the API. Twilio's own MCP server searches the docs and does not send. | |
| Not a yes or no. Only through a sample or general AWS MCP server, with AWS credentials a person sets up. |
| Service | Answer |
|---|---|
| Yes. Yes. Signup is an API call, and each brand gets a ready sender on a Nitrosend subdomain. | |
| No. No. Resend's own agent guide says a person must create the account. | |
| No. No. A person signs up and verifies a sending domain first. | |
| No. No. A person signs up and confirms a sender signature or domain first. | |
| No. No. A sender or a domain has to be verified before real sending. | |
| No. No. A person opens the AWS account, verifies a domain and requests production access. |
| Service | 20,000 emails a month | 1,000,000 emails a month |
|---|---|---|
| Nitrosend (pricing page) | $20Pro, contacts unlimited | $650Scale, contacts unlimited, including overage |
| SES (pricing page) | $3.20Lowest. Essentials, the default for a new account, or $2 a la carte. Charged per email | $160Lowest. Essentials, the default for a new account, or $100 a la carte. Charged per email |
| Resend (pricing page) | $20Pro, which covers 50,000 | $650Scale |
| Mailgun (pricing page) | $33Basic, 10,000 included and $1.80 per 1,000 after | $700Scale |
| Postmark (pricing page) | $29.50Pro, 10,000 included and $1.30 per 1,000 after. Basic is $33 | $775Basic, the 1,500,000 plan. Pro is $852.50 |
| SendGrid (pricing page) | $19.95Essentials, which covers 50,000 | $799Pro, the 1,500,000 plan. The 700,000 plan is $499 |
At a million emails a month Nitrosend is $650, then Resend at $650, Mailgun $700, Postmark $775 and SendGrid $799. Amazon SES is $160 because it is a relay with no product on top, so the campaigns, flows and contact management are yours to build. Nitrosend's $650 includes those, which is what to count before you compare the two numbers.
Nitrosend
Add Nitrosend's MCP server to Claude, ChatGPT, Cursor or Codex, point Brand Kit at your site, and ask for the email. Campaigns and flows wait for your approval before they send.
Free: 5,000 emails to start, then 500 a month. No credit card.
Start freeSMTP is not slow because it is old. It is slow because it is a conversation. EHLO, AUTH, MAIL FROM, RCPT TO and DATA each wait for the server to answer, and opened fresh for every message from a short-lived function, that back and forth takes up most of the send. The SMTP commands page walks through each step, and the SMTP protocol page covers the rest.
From a cloud sandbox, port 25 may not connect at all. Google Compute Engine blocks outbound connections to port 25 for anything outside your own network, and points senders at 587, 465 or a sending service instead. An agent that runs in hosted infrastructure meets that wall before it sends a word. An API or MCP call is an HTTPS request on port 443, which every host allows.
The bigger problem for an agent is the password. SMTP authentication uses a username and password that usually work for the whole account and rarely expire. Put that in an agent's configuration and anything that can read the agent's context can send as you. OWASP names this, a model holding more permission than its task needs, as a root cause of Excessive Agency in LLM applications. A mail password is the extreme case, because it hands an unpredictable process a side effect with no limit on who gets what. An API key can be limited to sending and revoked in one step, and a hosted MCP server signs the agent in with OAuth, so no secret sits in the prompt at all. Both paths are encrypted in transit with SMTP TLS or HTTPS, so the difference is how the credential is handled, not the wire.
Errors are the third reason. SMTP answers with a numeric code and a line of English that every provider words differently. An agent that gets a 550 back for one of 500 recipients has to guess which one and why. An API returns a structured body that names the field, and an MCP tool returns a result the model reads the same way it reads everything else.
The SMTP reply also covers only the hand-off. If the receiving server refuses the message later, the news comes back as another email, a delivery status notification, sent to the bounce address. An agent on SMTP would have to read a mailbox to learn that a send failed. Over an API or MCP it asks the provider instead: on Nitrosend that is GET /v1/my/messages/{id}, a webhook, or a query from the chat.
George Hartley, Nitrosend's co-founder, goes a step further than SMTP versus API. On SaaS Stories in September 2026 he said that when agents do most of the work, "email actually isn't an optimal channel because it is designed for humans. So I've been thinking about, you know, what is a better channel that is kind of backwards compatible with all of these open source kind of ways we communicate, but is much more optimized for how ... an agent ... interact[s] with the outside world of other agents". Until that exists, the practical answer is the one above: give the agent an API or MCP tool with a scoped key, and keep SMTP for the systems that cannot speak anything else.
They are layers, not rivals. An MCP server calls the provider's API for the agent, so the choice is about who is doing the work.
POST /v1/my/messages.For agents built in code, the @nitrosend/ai-sdk package, listed in the Vercel AI SDK tools registry, wraps the remote MCP server as AI SDK tools, so an agent can send email and SMS, manage contacts and segments, build flows and run campaigns without a hand-written client.
The same split applies inside one job. Tool calls suit decisions: which segment, which draft, whether a send went out. They do not suit bulk data, because every tool result passes through the model's context, and Anthropic's engineers note that intermediate tool results consume additional tokens and slow the agent down. For a large contact import, the agent plans the move over MCP and the rows travel over the REST API, where a failed batch can be retried without the model reading it.
Nitrosend's own usage shows what agents do once they are connected. In July 2026 the read tool, nitro_query, made up 43% of agent traffic, and the first packaged MCP client was polling every 15 minutes. The agents were checking on sends and results, not only writing emails, which is work an SMTP connection cannot do at all.
Nitrosend was built with the agent as the first user, so its MCP tools cover the whole account, from reviewing a draft and sending a test to approving a flow, and not only the send. Email MCP explains what the protocol adds on top of a plain API.
SMTP is the right path when the software cannot be changed. A printer, a CRM, a WordPress install or an older application that speaks SMTP and nothing else should keep it. It is also the more portable choice, because moving between SMTP hosts is a settings change while moving between APIs is a code change.
For that path, Amazon SES is the cheapest, at $3.20 a month for 20,000 emails and $160 for a million on the Essentials plan new accounts start on. You manage your own reputation and there is no product layer. Nitrosend and Amazon SES compared covers the trade. If deliverability matters more than unit cost, Postmark keeps transactional and broadcast mail on separate message streams, at $29.50 a month for 20,000 emails and $775 for its 1.5 million plan. The SMTP relay page covers setup for either.
Nitrosend has no SMTP relay. A team that needs one can keep Amazon SES, Postmark, Mailgun, SendGrid or Resend underneath Nitrosend with bring-your-own sending keys, so the SMTP path stays where it is and the agent runs campaigns and flows on top.
SMTP's portability has a limit. Changing the host moves the settings, not the sending reputation, which belongs to the domain and IP addresses that earned it. Gmail's sender guidelines tell senders to increase sending volume slowly, and more slowly the more mail it sends. So the expensive part of any move, off SMTP or between SMTP hosts, is the ramp rather than the code. Keeping the current provider underneath with your own sending keys lets the agent move first while the reputation stays where it is.
Do not send bulk mail through a transactional path because it is the one already wired up, and that goes double for an agent that can loop. A mail merge or an outreach blast through a single-recipient transactional endpoint mixes the streams, defeats the separation you set up, and puts password resets behind a queue of marketing.
The related mistake is treating cold outreach as marketing email. Cold outreach, marketing email and transactional email need different domains, mailboxes, volumes and deliverability rules, whichever way you send. Transactional versus marketing email covers where the line sits.
An API, or an MCP server built on one. SMTP makes the agent hold a long-lived username and password and answers errors with a code and free text. An API key can be scoped and revoked, and a hosted MCP server signs the agent in with OAuth and lists the tools it can use. Nitrosend is built for this, with a hosted MCP server, a REST API and a CLI, from $20 a month for 20,000 emails.
Add Nitrosend's hosted MCP server, api.nitrosend.com/mcp, to Claude as a connector, sign in with OAuth in the browser, and ask for the email. Claude can review the draft and send a test first. A transactional email goes out on the call, and a campaign or flow stays a draft until it is approved. The same server works in ChatGPT, Cursor and Codex, with no SMTP settings involved.
Usually, yes. SMTP runs a multi-step conversation on every connection, so each message carries more overhead unless you keep a pooled connection open. From short-lived or serverless code the difference is large.
An API is a set of endpoints your code calls. An MCP server wraps those endpoints as tools an AI assistant can discover and call itself, so Claude, ChatGPT, Cursor or Codex can send email, manage contacts and read results without anyone writing a client. The MCP server calls the API underneath. What is MCP covers the protocol.
SMTP authentication sends a username and password, and those credentials are usually long-lived and account-wide. API keys can be scoped and revoked. Both are encrypted in transit with TLS, so the difference is how the credential is managed, not the wire.
Yes, and many teams do: SMTP for software that cannot be changed, an API or MCP server for new code and for agents. Keep them on separate subdomains so each keeps its own reputation.
No. Nitrosend sends through its REST API, its CLI and its MCP server. Software that only speaks SMTP can keep Amazon SES, Postmark, Mailgun, SendGrid or Resend underneath Nitrosend with bring-your-own sending keys, and move its campaigns and flows over.
Every plan includes full stack emailing: Flows, Newsletter Campaigns and Transactional Email, plus our NitroWheel LLM and all agent integrations (Claude, ChatGPT, Codex, Cursor and others). Pay for what you send, not who you store.
Every paid plan includes 3 agent inboxes and no Nitrosend footer.
For your first email program.
$192 billed yearly.
20,000 emails / month
Choose StarterFor a growing audience.
$480 billed yearly.
60,000 emails / month
Choose ProFor teams and agencies.
$1,440 billed yearly.
200,000 emails / month
Choose GrowthFor high-volume sending.
$2,880 billed yearly.
500,000 emails / month
Choose ScaleSending 500,000+ emails a month? Get a custom plan designed for you, with volume pricing for sending, verification and enrichment.
5,000 emails to start, then 500 emails every month. No expiry on your starter emails.
Daily allowances depend on your plan and sender standing. Strong list, domain and delivery evidence can raise standing, including on day one. Trusted receives the full plan allowance; available email credits, safety checks and delivery pacing still apply.
Free forever. No credit card required. See full comparison →