Growl's MailMe display does this. We used to use the Message framework, but its public API went away in the 64-bit transition, so we had to find something else to make it 64-bit clean.
For awhile (prior to starting the beta cycle), we were using Scripting Bridge to tell Mail to send the message. This worked, according to the patch author, but it's a very strong dependency on Mail, and I'm sure our users who don't use Mail wouldn't like it.
I looked at Pantomime, EDMessage, and SKPSMTPMessage. Every single one either was way too complex for our needs (i.e., it was a framework for implementing a complete mail client), didn't work on Mac OS X, or both.
What I ended up doing was writing a Python script to send the message using Python's smtplib module. Here's the script, under a BSD license. We use NSTask to run the python interpreter and give the script to it, and NSPipe to give the password and message body to the script. You can run the script from the command line with the --help option to see how to run it.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…