Downloads of v 1.12.0


Average downloads per day


Last published

Share on Social Networks



MimeKit is an Open Source library for creating and parsing MIME, S/MIME and PGP messages on desktop and mobile platforms. It also supports parsing of Unix mbox files.

Unlike any other .NET MIME parser, MimeKit's parser does not need to parse string input nor does it use a TextReader. Instead, it parses raw byte streams, thus allowing it to better support undeclared 8bit text in headers as well as message bodies. It also means that MimeKit's parser is significantly faster than other .NET MIME parsers (more than 25x faster than OpenPOP.NET and over 100x faster than AE.Net.Mail and MailSystem.NET).

MimeKit's parser also uses a real tokenizer when parsing the headers rather than regex or string.Split() like most other .NET MIME parsers. This means that MimeKit is much more RFC-compliant than any other .NET MIME parser out there, including the commercial implementations.

In addition to having a far superior parser implementation, MimeKit's object tree is not a derivative of System.Net.Mail objects and thus does not suffer from System.Net.Mail's massive limitations or bugs.

API documentation can be found on the web at http://www.mimekit.net/docs

For those that need SMTP, POP3 or IMAP support, check out https://github.com/jstedfast/MailKit

To install MimeKit, run the following command in the Package Manager Console

Install-Package MimeKit

Requires NuGet 2.8.6 or higher.

Release Notes

* Added new DKIM MimeMessage.Sign() methods that take an IList<string> of header field names to sign.
* Improved the address parser to allow the lack of a terminating ';' character at the end of group addresses.
* Improved the address parser to unquoted ',' and '.' characters in the name component of mailbox and group addresses.
* Added support for CryptographyContext factories by adding new Register() methods that take function callbacks that return a SecureMimeContext or OpenPgpContext. Thanks to Christoph Enzmann for this feature. (issue #283)
* Fixed DefaultSecureMimeContext..cctor() to not call Directory.CreateDirectory() on the default database directory. Instead, let the .ctor() create it instead if and when an instance of the DefaultSecureMimeContext is created. (issue #285)
* Store DBNull in S/MIME SQL backends for null values (SQLite handles `null` but databases such as Postgres do not). (issue #286)



Jeffrey Stedfast


Xamarin Inc.



Version History

Version Downloads Last updated
MimeKit 1.10.1 49,316 Saturday, January 28, 2017
MimeKit 1.10.0 205,858 Monday, October 31, 2016
MimeKit 1.8.0 108,712 Sunday, September 25, 2016
MimeKit 1.6.0 75,932 Sunday, September 11, 2016
MimeKit 1.4.2 148,917 Sunday, August 14, 2016
MimeKit 1.4.1 172,207 Sunday, July 17, 2016
MimeKit 1.4.0 97,357 Friday, July 1, 2016
MimeKit 1.3.0-rc1 29,841 Sunday, May 22, 2016