Skip to content
Writing

Writing

Deliverability, email infrastructure, and the awkward questions that come up when an agent holds a sending credential. Written for people who have to make it work.

Showing 68 of 68 articles

Deliverability and email infrastructure

Authentication, reputation, queues, and the reasons transactional mail does not arrive.

  • NewSendGridMigrationDevOpsEmail InfrastructureTypeScript4 min read

    Why Developers Are Leaving SendGrid for SadaSend: The 2026 Migration Guide

    SendGrid was built in 2009 for batch enterprise marketing. In 2026, modern engineering teams are ditching its bloated SDKs, degraded shared IPs, and expensive add-ons for SadaSend's type-safe transactional infrastructure.

    Tayyab MughalFounder & AI Chief

  • NewMCPClaudeTutorialAI agents2 min read

    MCP email tutorial: connecting Claude to SadaSend

    Learn how to connect Claude Desktop and MCP-compatible agents directly to SadaSend without writing boilerplate REST API wrappers.

    Tayyab MughalFounder & AI Chief

  • NewArchitectureAI agentsEmail InfrastructureOutbox Pattern4 min read

    Email agent architecture: the five-stage pipeline

    An agent that calls a send API directly has no architecture, just a function call with consequences. This is the shape of the pipeline that sits between the decision and the mailbox.

    Tayyab MughalFounder & AI Chief

  • AI agentsTutorialCustomer SupportLangChain2 min read

    Building an AI customer support agent with email

    Learn how to build an autonomous support email agent that ingests tickets, drafts accurate answers, routes edge cases, and holds sensitive actions for human approval.

    Tayyab MughalFounder & AI Chief

  • NewMCPAI agentsSecurity5 min read

    What happens when you give an agent your email key

    Every email MCP server on the market hands your agent the full platform. That is a capability claim with no control story — and it is the reason your engineering lead keeps saying no.

    Tayyab MughalFounder & AI Chief

  • NewTutorialAI agentsLangChainCrewAI3 min read

    How to give an AI agent email access safely

    Step-by-step tutorial on minting a scoped agent key, setting up domain allowlists, and integrating email tools into LangChain, CrewAI, and TypeScript loops safely.

    Tayyab MughalFounder & AI Chief

  • NewAI agentsMCPEvaluationDevTools3 min read

    The best email API for AI agents in 2026

    Agents break traditional email APIs by retrying blindly, improvising addresses, and falling for prompt injections. Here is the evaluation matrix for agent-ready email infrastructure.

    Tayyab MughalFounder & AI Chief

  • NewSecurityPrompt InjectionAI agentsThreat Modeling3 min read

    Indirect prompt injection via email

    When an AI agent reads incoming emails and holds a sending key, an attacker can embed invisible instructions. Here is how indirect prompt injection works and how to neutralize it.

    Tayyab MughalFounder & AI Chief

  • NewComparisonAgentMailAI agentsDeliverability2 min read

    SadaSend vs AgentMail: outbound vs inbound

    AgentMail provides throwaway mailboxes for agents to scrape and sign up for services. SadaSend provides production transactional deliverability and key containment on your own domain.

    Tayyab MughalFounder & AI Chief

  • NewComparisonPostmarkTransactional EmailAI agents3 min read

    SadaSend vs Postmark: how the two are shaped

    Postmark earned developer trust by separating marketing from transactional mail. But in 2026, autonomous AI agents need hard credential ceilings and MCP integration — not just fast SMTP servers.

    Tayyab MughalFounder & AI Chief

  • NewComparisonSendGridEmail InfrastructureEnterprise3 min read

    SadaSend vs Twilio SendGrid: how they differ

    SendGrid was built in 2009 for high-volume enterprise mailings. SadaSend is built for the agent era with instant Bun/Node quickstarts, MCP native support, and key-level containment.

    Tayyab MughalFounder & AI Chief

  • NewBunTypeScriptTutorialIdempotency7 min read

    Send transactional email with Bun and TypeScript

    Bun ships fetch, TypeScript and a test runner, so sending email needs no packages at all. What it does need is the handful of decisions that separate a send that works from one that fails quietly.

    Tayyab MughalFounder & AI Chief

  • BunBullMQQueuesPostgresArchitecture4 min read

    A transactional email queue on Bun and BullMQ

    The worst bug an email service can have is not a crash. It is accepting a message, returning 202, and never sending it.

    Tayyab MughalFounder & AI Chief

  • ComplianceDeliverability3 min read

    Gmail and Yahoo sender requirements: 2026 checklist

    The consequence changed. Non-compliant mail used to land in spam, where you might eventually notice. It is now refused at the door.

    Tayyab MughalFounder & AI Chief

  • NewDeliverabilityDedicated IPEmail InfrastructureDevOps5 min read

    Dedicated IP vs shared IP: do you need one?

    A dedicated IP sounds like an upgrade. Below roughly 100,000 messages a month it is usually a downgrade, because reputation is built from volume and you will not have enough of it.

    Tayyab MughalFounder & AI Chief

  • DeliverabilityReputation3 min read

    Why your transactional email goes to spam

    People assume transactional mail is exempt from filtering because it was requested. Mailbox providers do not know that, and mostly do not care.

    Tayyab MughalFounder & AI Chief

  • NewDeliverabilityDNSAuthentication4 min read

    SPF, DKIM and DMARC: what each one actually does

    Three records, endlessly confused with each other. Here is the mental model that makes them stop being confusing, and the two mistakes that cause most failures.

    Tayyab MughalFounder & AI Chief

AI agent frameworks and tool calling

Giving an agent a sending credential without giving it the account.

  • NewDifyFlowiseAI AgentsTool CallingSadaSend3 min read

    Connecting Email Tools to AI Agents in Dify and Flowise with SadaSend

    Giving visual AI agents unrestricted email access is an existential security risk. Here is how to connect SadaSend to Dify and Flowise with hardware-grade safety ceilings.

    Tayyab MughalFounder & AI Chief

  • NewLangGraphPythonState MachinesHuman in the Loop2 min read

    LangGraph email approval state machines

    LangGraph allows developers to pause agent workflows indefinitely waiting for human approval. Learn how to construct an email state graph with durable checkpoints.

    Tayyab MughalFounder & AI Chief

  • NewOpenAI SwarmPythonMulti-AgentArchitecture3 min read

    OpenAI Swarm email delegation with scoped keys

    Learn how to implement lightweight multi-agent delegation routines using OpenAI Swarm patterns to isolate email credentials and enforce permission boundaries.

    Tayyab MughalFounder & AI Chief

  • CrewAIPythonMulti-AgentHuman in the Loop2 min read

    CrewAI email agent with human sign-off

    CrewAI lets multi-agent swarms collaborate on complex tasks. Learn how to isolate email sending into a dedicated role with human approval gates.

    Tayyab MughalFounder & AI Chief

  • NewVercel AI SDKNext.jsTypeScriptAI agents5 min read

    Email tool calling with the Vercel AI SDK

    Giving a model an email tool takes about ten lines. The interesting question is what happens between the model deciding to send and the message leaving, because by default the answer is nothing.

    Tayyab MughalFounder & AI Chief

  • LlamaIndexRAGVector SearchPython2 min read

    LlamaIndex RAG email auto-responder

    Turn incoming customer queries into accurate, source-grounded email responses using LlamaIndex query engines and SadaSend scoped keys.

    Tayyab MughalFounder & AI Chief

  • LangChainPythonAI agentsTool Calling3 min read

    LangChain email tool calling with allowlists

    Connecting LangChain agents to raw SMTP credentials risks uncontrolled outbound email. Here is the architectural guide to building safe email tools using Pydantic schemas and scoped credentials.

    Tayyab MughalFounder & AI Chief

  • CursorWindsurfDevToolsTypeScript2 min read

    Cursor and Windsurf rules for email agents

    Supercharge your AI-assisted development workflow with battle-tested Cursor and Windsurf rules tailored for transactional email and MCP integrations.

    Tayyab MughalFounder & AI Chief

  • SecurityArchitectureAI agentsRate Limiting2 min read

    Preventing infinite email loops in AI agents

    When two autonomous email agents start talking to each other, they can trigger an infinite email loop in minutes. Here is how to engineer circuit breakers, token buckets, and idempotency safeguards.

    Tayyab MughalFounder & AI Chief

  • NewSemantic RouterPythonMachine LearningArchitecture2 min read

    Semantic routing for outbound AI email

    Before letting an AI agent send an email, use semantic routing to classify its intent. Route critical requests to human review while instantly dispatching standard notifications.

    Tayyab MughalFounder & AI Chief

Model Context Protocol

Building, securing, debugging and hosting MCP servers that touch real mailboxes.

  • MCPArchitectureAI agentsServerless2 min read

    The 2026 stateless MCP specification explained

    The July 2026 Model Context Protocol update solved MCP’s biggest scaling bottleneck: stateful connection stickiness. Here is how stateless streamable HTTP transports work.

    Tayyab MughalFounder & AI Chief

  • MCPDevOpsArchitectureCloud2 min read

    Local vs remote hosted MCP servers

    Should you run your MCP servers locally via stdio or host them remotely over streamable HTTP? Here is the complete architectural guide to latency, security, and deployment tradeoffs.

    Tayyab MughalFounder & AI Chief

  • NewMCPDebuggingClaudeCursorJSON-RPC8 min read

    Debugging MCP timeouts and tool call failures

    Connection closed. Tools that never appear. A call that hangs until the client gives up. MCP failures nearly always come from one of four causes, and the logs that identify them are not where you would expect.

    Tayyab MughalFounder & AI Chief

  • NewMCPMulti-TenantArchitectureSaaS5 min read

    Multi-tenant MCP architecture for SaaS

    The shortcut in every multi-tenant MCP design is one credential plus a header naming the tenant. The header is supplied by the caller, which makes it a claim rather than a boundary.

    Tayyab MughalFounder & AI Chief

  • MCPReferenceSchemasDevTools2 min read

    Email MCP tools and schemas: a 2026 directory

    Looking for standard MCP schemas for email tools? Here is the complete production directory of tool definitions, input arguments, return types, and error codes.

    Tayyab MughalFounder & AI Chief

  • MCPTypeScriptDevToolsTutorial2 min read

    Building a TypeScript MCP server for email

    Learn how to create a high-performance, type-safe TypeScript MCP server that exposes email sending, domain DNS verification, and delivery log inspection to Claude and Cursor.

    Tayyab MughalFounder & AI Chief

  • MCPRESTSecurityAI agents2 min read

    MCP vs REST APIs for AI agents

    Giving an autonomous agent a static REST API key is like handing an intern your corporate credit card with no transaction limit. Here is why the Model Context Protocol (MCP) replaces REST.

    Tayyab MughalFounder & AI Chief

  • NewMCPSecurityOAuthJWTAppSec7 min read

    Securing MCP servers with scoped OAuth

    Most MCP security guides stop at verifying a token and returning a permissions object. Parsing a permission is not enforcing it, and an agent under prompt injection will find that out before you do.

    Tayyab MughalFounder & AI Chief

Runtimes and frameworks

Sending mail from Bun, Deno, Next.js, NestJS, edge workers and everything adjacent.

  • NewRetoolInternal ToolsAPISMTPSadaSend3 min read

    How to Send Transactional Email from Retool: Custom SMTP & REST API Guide

    Retool's default email sends from an unbranded domain with zero DMARC alignment. Here is how to configure SadaSend in Retool using REST API resources and custom SMTP with per-key staging guardrails.

    Tayyab MughalFounder & AI Chief

  • NewMake.comAutomationNoCodeZapierSadaSend3 min read

    How to Send Transactional Email in Make.com: Complete HTTP Module Guide

    Make.com scenarios require reliable transactional email dispatch. Learn how to connect SadaSend using the HTTP Make a Request module to achieve sub-20ms latency without SendGrid rate limits or account freezes.

    Tayyab MughalFounder & AI Chief

  • NewPrismaDrizzlePostgresOutboxArchitecture7 min read

    The outbox pattern with Prisma and Drizzle

    The outbox pattern guarantees an email is never lost and never phantom-sent. It guarantees neither if the drain loop reads rows without locking them, which is what almost every tutorial shows.

    Tayyab MughalFounder & AI Chief

  • NewSupabasePostgresWebhooksServerless4 min read

    Email from Supabase webhooks and Edge Functions

    A Supabase webhook firing an Edge Function is a good pattern for event-driven email. It is also a public URL that sends mail from your domain, which is worth ten lines of verification.

    Tayyab MughalFounder & AI Chief

  • DenoTypeScriptDevToolsRuntime1 min read

    Transactional email in Deno 2.0

    Deno 2.0 simplifies backend development with native TypeScript support and zero package.json bloat. Learn how to send transactional emails cleanly.

    Tayyab MughalFounder & AI Chief

  • NewNestJSBullMQRedisQueuesTypeScript8 min read

    NestJS email microservice with BullMQ and Redis

    A NestJS controller that awaits an email API is a controller that fails when the API does. Moving the send to a BullMQ worker is the easy part — the parts that bite are retry policy, shutdown, and testing.

    Tayyab MughalFounder & AI Chief

  • SvelteKitAstroTypeScriptWebDev2 min read

    SvelteKit and Astro email integration

    Build ultra-lightweight contact forms and transactional email notifications in SvelteKit and Astro using server actions and edge endpoints.

    Tayyab MughalFounder & AI Chief

  • GoGolangMicroservicesResilience2 min read

    A Go email microservice with circuit breakers

    Learn how to write a production-grade Go service that dispatches millions of emails with resilient circuit breaking, retries, and zero memory leaks.

    Tayyab MughalFounder & AI Chief

  • CloudflareHonoEdgeServerless1 min read

    Edge email dispatch with Cloudflare Workers

    Execute email dispatch within 5ms of your users globally by deploying lightweight Hono applications to Cloudflare Workers.

    Tayyab MughalFounder & AI Chief

  • FastAPIPythonPydanticMicroservices2 min read

    A FastAPI email agent with Pydantic validation

    FastAPI and Pydantic v2 provide unmatched performance for Python backends. Learn how to build an async transactional email microservice with allowlist guards.

    Tayyab MughalFounder & AI Chief

  • RemixReact RouterTypeScriptWebDev2 min read

    Remix and React Router v7 email architecture

    Learn how to handle transactional email sending, contact form submissions, and password resets in Remix and React Router v7 with progressive enhancement.

    Tayyab MughalFounder & AI Chief

  • NewReact EmailTailwindResponsiveDesignTypeScript7 min read

    Responsive React Email Component Library Guide: Outlook & Mobile

    React Email gives you components instead of nested tables from 1999. It does not give you responsive email — that still depends on which rendering engine opens the message, and one of the big ones ignores media queries entirely.

    Tayyab MughalFounder & AI Chief

  • Next.jsReact EmailTypeScriptServer Actions2 min read

    Transactional email in Next.js 15 with React Email

    Render responsive React components to clean HTML strings and dispatch them via Next.js 15 Server Actions with zero external SMTP dependencies.

    Tayyab MughalFounder & AI Chief

Email security and migrations

Prompt injection, threat models, IP warm-up, and moving off an incumbent provider.

  • NewWebhooksSecurityArchitectureTypeScriptNode3 min read

    Production Email Webhook Architecture: Signatures, Retries & DLQs

    Webhooks deliver delivery, bounce, and complaint events asynchronously. Here is the architecture needed to verify signatures, survive spikes, and prevent data loss with DLQs.

    Tayyab MughalFounder & AI Chief

  • SecurityThreat ModelingAppSecDevOps2 min read

    Email threat modeling for SaaS API keys

    What happens when an engineer accidentally commits an email API key to a public GitHub repo? Here is the threat model and defense blueprint.

    Tayyab MughalFounder & AI Chief

  • NewInbound EmailWebhooksLLMPython2 min read

    Inbound Email Webhook Parsing with LLMs: Complete Guide

    Turn messy incoming email replies, support tickets, and invoices into strictly validated JSON records using LLM structured outputs and webhooks.

    Tayyab MughalFounder & AI Chief

  • NewBIMIVMCDMARCDeliverability7 min read

    BIMI and VMC certificates: your logo in Gmail

    Everyone arrives at BIMI wanting the logo. The logo is the last five percent — the work underneath it is DMARC enforcement, which is also the part that actually protects your domain.

    Tayyab MughalFounder & AI Chief

  • MTA-STSTLS-RPTSecurityDNS1 min read

    MTA-STS and TLS-RPT: enforcing email encryption

    Standard SMTP opportunistic TLS (STARTTLS) is vulnerable to downgrade attacks. Here is how to configure MTA-STS policy files and TLS-RPT records for enterprise email transit security.

    Tayyab MughalFounder & AI Chief

  • DeliverabilityIP WarmupDevOpsEmail Infrastructure2 min read

    How to warm up a dedicated IP pool

    Moving to a dedicated IP address requires systematic warm-up. Follow this 30-day mathematical schedule to build stellar IP reputation with Gmail, Yahoo, and Outlook.

    Tayyab MughalFounder & AI Chief

  • NewAWSSESMigrationCloud2 min read

    Migrating from AWS SES to SadaSend

    AWS SES is cheap until you spend 3 days navigating AWS IAM policies, submitting support tickets to leave the sandbox, and wrestling with CloudWatch deliverability dashboards.

    Tayyab MughalFounder & AI Chief

  • NewMailgunMigrationEmail APIDevOps2 min read

    Migrating from Mailgun to SadaSend

    Tired of complex Mailgun domain setups, confusing invoice add-ons, and legacy SDKs? Here is the step-by-step guide to migrating to SadaSend in under 10 minutes.

    Tayyab MughalFounder & AI Chief

  • NewRFC 8058DeliverabilityComplianceReact Email5 min read

    RFC 8058 one-click unsubscribe in React Email

    Gmail and Yahoo require one-click unsubscribe on bulk mail. The header pair is easy; the parts that fail audit are an unsigned token and an endpoint that returns 200 without suppressing anything.

    Tayyab MughalFounder & AI Chief