About a year ago, we introduced something experimental from Postmark Labs: an MCP server that let an AI assistant send email through Postmark. It shipped with exactly one useful tool, sendEmail, plus three supporting ones (four total). You gave it a recipient, a subject, and a body, and it sent. We said at the time we'd started with a single Postmark server "because we had to start somewhere."A lot has happened since. The project graduated from Labs and became the official @activecampaign/postmark-mcp package, and along the way, we learned a lot about what it actually takes to put an AI…
Bulk email has a reputation problem, but users often misplace the blame. Recipients associate bulk email with spam, inbox clutter, and irrelevant marketing campaigns. Senders associate it with poor deliverability, complicated orchestration, and the constant fear of landing in spam folders.If you handle bulk email, these problems may sound familiar. The DIY Python approach — install smtplib, divvy up your mailing list in a CSV file, set up a loop function, hope for the best — all but guarantees delivery problems. The mail itself isn’t the problem, though.Done properly, bulk email remains one…
Some of the most important emails require attachments, such as receipts, order confirmations, contracts, or digital assets. You need those emails to arrive automatically and reliably when customers and partners expect them.But attachments tend to increase bounce rates due to either security concerns, reduced engagement signals, or inbox provider policies, making deliverability harder to guarantee.A few key practices help you get top-tier deliverability when email attachments really matter:Follow general email guidelinesUnderstand where problems happen and how to spot themCreate processes that…
If you need to send emails from an application, it’s a good idea to think about how your usage changes over time. As with many technology choices, there’s a tradeoff between up-front efficiency and long-term flexibility.You have two main choices for sending emails through your Python application. The first is SMTP — the standard protocol for outgoing email. The second option sidesteps SMTP's complexities by using an email provider’s API for richer functionality.This article compares sending email in Python using SMTP and API. SMTP is quick to set up—especially with a library like smtplib—but…
If you've been sending email through Postmark lately, your messages have been moving through an entirely new engine (and you probably didn't notice a thing). That's exactly how we wanted it.We've completed our migration from PowerMTA to KumoMTA, an open-source, high-performance mail transfer agent (MTA). Every email Postmark sends now runs through KumoMTA. It's the biggest infrastructure change we've made in years, and it sets the stage for everything we want to build next.Wait, what's an MTA?An MTA,or mail transfer agent,is the software responsible for delivering your email. When you send a…
If you've ever asked an AI coding agent to help you integrate email into your app, you've probably gotten code that looks right but isn't quite right. Maybe it used an outdated endpoint. Maybe it forgot about Message Streams entirely. Maybe it hallucinated a method that doesn't exist. (We've seen all three.)AI agents are only as good as the context they have, and until now, most of them had to rely on whatever fragments of Postmark documentation made it into their training data.Today, we're releasing Postmark Skills, a set of open source Agent Skills that teach AI coding agents how to work…
If you've been sending emails for a while, you know that deliverability can feel like a moving target. Inbox providers are constantly tweaking their rules, and what worked yesterday might cause problems tomorrow. Recently, we made some behind-the-scenes improvements to how Postmark generates unsubscribe links. And while you might not have noticed anything different, these changes are helping your emails land in more inboxes.The problem: header length matters more than you'd thinkEmail headers have character limits defined by RFC standards. Most of the time, you don't need to think about this,…
Getting an AI assistant to help with your email integration shouldn't feel like explaining SMTP to your cat. But until recently, that's kind of what it was like - AI tools could tell you about email APIs, but they often got the details wrong or gave you outdated information.We've been thinking about this problem, and we've shipped three updates to make AI assistants genuinely useful when you're working with Postmark.What we built1. llms.txt: Context for AI assistantsWe published an llms.txt file that gives AI tools like ChatGPT and Claude accurate, structured information about Postmark's API,…
Your Postmark API tokens are the keys to your email kingdom. One exposed token can mean unauthorized access to your account, potential data breaches, and a whole lot of stress you don't need. The good news? Keeping your account secure doesn't have to be complicated.This guide covers the essential practices that'll help you sleep better at night, knowing your Postmark credentials are locked down tight. Following Industry Standards: OWASP GuidelinesWhen it comes to web application security, you don't have to reinvent the wheel. The Open Web Application Security Project (OWASP) provides…
We recently became aware of a malicious npm package called "postmark-mcp" on npm that was impersonating Postmark and stealing user emails. We want to be crystal clear: Postmark had absolutely nothing to do with this package or the malicious activity.Here's what happened: A malicious actor created a fake package on npm impersonating our name, built trust over 15 versions, then added a backdoor in version 1.0.16 that secretly BCC’d emails to an external server. What you should know:This is not an official Postmark tool. We have not published our Postmark MCP server on npm prior to this…
Read at the source
Your visit, your choice.
Optional Google Analytics helps us understand visits. Microsoft Clarity records masked interactions to improve the site. Optional tools stay off unless you choose them. Privacy details.