Vercel and SMTP

Runtime: Node.js Functions (default) or Edge Runtime (opt-in)

Verdict: Depends on the runtime. Works on the default Node.js runtime (full net/tls). The separate Edge Runtime has no socket API at all - only fetch.

What actually happens on this platform

Vercel’s own Edge Runtime docs list every supported API by name, and net/tls/any raw-socket API is absent from that list; the only networking primitives offered are fetch, Request and Response. The Node.js runtime carries no such restriction - it is a real Node.js process. Vercel’s own knowledge base has a dedicated article, “Sending Emails from an application on Vercel”, that opens by calling SMTP “the harder path” specifically inside Vercel Functions on the Edge runtime.

The part worth reading twice

Vercel’s own docs now recommend migrating away from the Edge runtime to Node.js entirely (“We recommend migrating from edge to Node.js for improved performance and reliability”) - so the practical answer for a new project is simply: don’t pick Edge if you need SMTP, use the default Node.js runtime and follow the same setup as any other Node.js host.

If it works here

The connection itself is the same as everywhere else: point at mx.msgwing.com on port 587 (STARTTLS) or 465 (SSL/TLS), authenticate with a username and password. Register at msgwing.com first, then use the Node.js/TypeScript example unmodified - nothing about running inside this platform changes the SMTP conversation itself, only whether the platform lets you open that connection in the first place.

Where this came from

Read off Edge Runtime, Vercel’s own documentation, checked 2026-08-30 - rather than recalled. If that page and this one now disagree, that page is right and this one is out of date - say so.

Last reviewed 2026-08-30.

Updated 30 Aug 2026

mx.msgwing.com587 STARTTLS · 465 SSL/TLS Register free