calibre-smtp [options] [from to text]

Send mail using the SMTP protocol. calibre-smtp has two modes of operation. In the compose mode you specify from to and text and these are used to build and send an email message. In the filter mode, calibre-smtp reads a complete email message from STDIN and sends it.

text is the body of the email message. If text is not specified, a complete email message is read from STDIN. from is the email address of the sender and to is the email address of the recipient. When a complete email is read from STDIN, from and to are only used in the SMTP negotiation, the message headers are not modified.

Whenever you pass arguments to calibre-smtp that have spaces in them, enclose the arguments in quotation marks. For example: “/some path/with spaces”


--fork, -f

Fork and deliver message in background. If you use this option, you should also use --outbox to handle delivery failures.

--help, -h

show this help message and exit

--localhost, -l

Host name of localhost. Used when connecting to SMTP server.

--outbox, -o

Path to maildir folder to store failed email messages in.

--timeout, -t

Timeout for connection

--verbose, -v

Be more verbose


show program's version number and exit


Options to compose an email. Ignored if text is not specified

--attachment, -a

File to attach to the email

--subject, -s

Subject of the email


Options to use an SMTP relay server to send mail. calibre will try to send the email directly unless –relay is specified.


Path to a file of concatenated CA certificates in PEM format, used to verify the server certificate when using TLS. By default, the system CA certificates are used.


Do not verify the server certificate when connecting using TLS. This used to be the default behavior in calibre versions before 3.27. If you are using a relay with a self-signed or otherwise invalid certificate, you can use this option to restore the pre 3.27 behavior

--encryption-method, -e

Encryption method to use when connecting to relay. Choices are TLS, SSL and NONE. Default is TLS. WARNING: Choosing NONE is highly insecure

--password, -p

Password for relay


Port to connect to on relay server. Default is to use 465 if encryption method is SSL and 25 otherwise.

--relay, -r

An SMTP relay server to use to send mail.

--username, -u

Username for relay