MIME has no right to exist, not only because it is a recursively nested data format (hell, yes, they allowed to include a MIME container into another MIME container as a part, which is horrible enough already), but generally because it is overcomplicated. It should have never appeared at all, but we have what we have; let's at least not to make the things even worse.
Some support for MIME is allowed for compatibility with widely-adopted software such as web browsers and web servers (alas, we can't, e.g., upload files to sites without using MIME, thanks to all those committees), but it must be limited to the absolute minimum.
In particular, if your program sends electronic mail messages, the messages must not be MIME rich. For compatibility with a lot of existing mail clients, messages composed by your program may (although are not obliged to) include the following headers:
MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8Bit
(replace US-ASCII with the identifier of the encoding being
used). Yes, it is nowadays reasonably safe to assume all existing MUAs and
MTAs support 8-bit transfer.