$npx skillfedfor your agent

aiosmtpd

aiosmtpd - asyncio based SMTP server

Worth itPyPI EmailReleased May 20241.9M downloads / moApache-2.0Pure Python

Decision gist · record as of 2026-08-14

pure-Python wheel — aiosmtpd-1.4.6-py3-none-any.whl
v1.4.6 · released 2024-05-18 · Python >=3.8 · 2 runtime deps: atpublic, attrs

Yes. aiosmtpd is actively maintained, permissively licensed, has low install friction, and fills a genuine gap for async SMTP server use cases. It's well-suited for testing, prototyping, and production email reception in async Python applications. No known vulnerabilities as of the fact sheet date.AI-flagged interpretation of the facts on this page — verify before relying

Before you install

  • Requires Python 3.8 or later; asyncio event loop must be available in the runtime environment.
  • Low install friction with only two lightweight runtime dependencies (atpublic and attrs).
  • The package is actively maintained with a recent commit as of 2026-08-12, supports Python 3.8 through 3.12, and has been in development since 2015-10-20.

License · maintenance · safety

Apache-2.0 (permissive) — Licensed under Apache-2.0 (permissive), allowing commercial and private use with minimal restrictions—suitable for most deployment scenarios.

last release 2024-05-18 (818 days) · last repo commit 2026-08-12 · 373 stars

0 known vulnerabilities (OSV.dev, 2026-08-14) · 1,895,655 downloads/mo, #3,453 on PyPI

Verify before relying

pip install aiosmtpd

import asyncio
from aiosmtpd.smtp import SMTP

async def main():
    smtp = SMTP()
    await smtp.handle_EHLO(None, None)

asyncio.run(main())
  • Whether the package includes built-in handlers for common mail delivery scenarios or requires custom handler implementation.
  • Performance characteristics under high concurrent connection loads.
  • Compatibility with modern mail client authentication schemes (SASL, TLS).
Same gist for agents: .md · .json

What it is and what it does

aiosmtpd is an asyncio-based SMTP server implementation that replaces the synchronous smtpd module from Python's standard library. It allows you to build email servers and mail transport agents (MTAs) that can handle multiple concurrent SMTP connections without blocking. The package is built on asyncio, making it suitable for integration into async Python applications that need to receive, process, or relay email messages.

The server implements SMTP and related MTA protocols, letting you define custom handlers for incoming mail. It runs on Windows, Linux, FreeBSD, and supports both CPython and PyPy across Python 3.8 through 3.12. With only two runtime dependencies (atpublic and attrs), it has minimal overhead and integrates cleanly into existing async codebases.

Use it for

  • Build a test SMTP server for development and integration testing of email-sending applications.
  • Implement a mail relay or gateway that receives SMTP connections and forwards messages to downstream systems.
  • Create a custom email processing pipeline that captures incoming messages for logging, filtering, or transformation.
  • Run a local SMTP listener for development environments to intercept and inspect outgoing mail without sending it.
  • Integrate email reception into an async web application or microservice architecture.

Worth the install?

AI-flagged interpretation of the facts on this page. Verify before relying on it.

Worth it

Yes.

aiosmtpd is actively maintained, permissively licensed, has low install friction, and fills a genuine gap for async SMTP server use cases. It's well-suited for testing, prototyping, and production email reception in async Python applications. No known vulnerabilities as of the fact sheet date.

Install

aiosmtpd on PyPI

Before you install

Low install friction with only two lightweight runtime dependencies (atpublic and attrs). The package is actively maintained with a recent commit as of 2026-08-12, supports Python 3.8 through 3.12, and has been in development since 2015-10-20.

Requires Python 3.8 or later; asyncio event loop must be available in the runtime environment.

License in practice

Licensed under Apache-2.0 (permissive), allowing commercial and private use with minimal restrictions—suitable for most deployment scenarios.

Quickstart

pip install aiosmtpd

import asyncio
from aiosmtpd.smtp import SMTP

async def main():
    smtp = SMTP()
    await smtp.handle_EHLO(None, None)

asyncio.run(main())

Verify before relying

  • Whether the package includes built-in handlers for common mail delivery scenarios or requires custom handler implementation.
  • Performance characteristics under high concurrent connection loads.
  • Compatibility with modern mail client authentication schemes (SASL, TLS).

Package facts

LicenseApache-2.0 permissive
Python supportSupports the current Python release >=3.8
Install frictionLow. Pure-Python wheel
Runtime dependencies
2 packages
atpublicattrs
MaintenanceActively maintained 818 days since the last release
Last repo commit
First released
Downloads1,895,655 / month, #3,453 on PyPI 30-day window, as of 2026-08-14
Known vulnerabilitiesNone known OSV.dev, checked 2026-08-14
Classifiers
Framework :: AsyncIOIntended Audience :: DevelopersLicense :: OSI ApprovedLicense :: OSI Approved :: Apache Software LicenseOperating System :: Microsoft :: WindowsOperating System :: POSIX :: BSD :: FreeBSDOperating System :: POSIX :: LinuxProgramming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Programming Language :: Python :: Implementation :: CPythonProgramming Language :: Python :: Implementation :: PyPyTopic :: Communications :: Email :: Mail Transport Agents

Evidence: aiosmtpd-1.4.6-py3-none-any.whl

Tags

Capabilities
asyncio smtp serverasync email serversmtp daemon pythonemail message handlingmta protocol serverconcurrent smtppython email relay
Topics
smtp-serverasyncioemail-handling
PyPI keywords
emailsmtpdsmtp

Let your AI agent find packages like this

Example. Real query, live index.

You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.

wish › “asyncio smtp server”

  • aiosmtpdaiosmtpd is an asyncio-based SMTP server that handles email message…
  • aiosmtplibaiosmtplib is an asynchronous SMTP client that sends email messages…
  • pytest-localserverProvides pytest fixtures that spin up local HTTP and SMTP servers for…

Give your agent the search over MCP, or paste the wish link into any chat.

More Email packages

Markdown Worth it
PyPI · Python Modules · released Jul 2026

Converts Markdown text to HTML using a Python implementation of John Gruber's Markdown specification, with support for extensions.

Install it if you need to parse Markdown in Python.

BSD-3-Clausepure Python · 3.10+
121.7Mdownloads / mo
aiosmtplib Worth it
PyPI · Libraries · released Jun 2026

aiosmtplib is an asynchronous SMTP client that sends email messages using asyncio, allowing non-blocking email operations in async Python applications.

permissive licensepure Python · 3.10+
19.6Mdownloads / mo
Wikipedia-API Worth it
PyPI · Python Modules · released May 2026

Wikipedia-API is a Python wrapper for Wikipedia's MediaWiki API that retrieves page content, sections, links, categories, and metadata in both synchronous and asynchronous modes.

MITpure Python · 3.10+
19.1Mdownloads / mo
RTFDE With conditions
PyPI · HTML · released Dec 2025

Extracts encapsulated HTML and plain text content from RTF bodies in .msg email files, reversing the RTF encapsulation that Microsoft Exchange applies.

LGPL-3.0-onlypure Python · 3.8+aging
6.6Mdownloads / mo
python-oxmsg With conditions
PyPI · Libraries · released Feb 2025

Parses Outlook MSG files to extract email messages, attachments, and message properties like sent date and sender information.

MITpure Python · 3.9+dormant
3.4Mdownloads / mo
django-anymail Worth it
PyPI · Python Modules · released Jul 2026

Sends and receives email in Django through multiple transactional email service providers (ESPs) with a unified API that avoids vendor lock-in.

Install it if you're using Django and any transactional ESP; the abstraction pays for itself the moment you need to switch providers.

BSD-3-Clausepure Python · 3.10+
3.2Mdownloads / mo

See also yagmail · fastapi-mail · redmail · apache-airflow-providers-smtp · mailosaur · mailsuite · aiogoogle · Flask-Mail · emails