CALIBRE-SMTP(1)

✨ NAME ✨

calibre-smtp β€” okay so bestie, this is the calibre manual's very own calibre-smtp(1) situation, and it is literally the tool that sends mail using the SMTP protocol πŸ’Œ


🌸 SYNOPSIS 🌸

calibre-smtp [options] [from to text]

πŸ¦‹ DESCRIPTION πŸ¦‹

Send mail using the SMTP protocol. No cap, that's the whole gig. calibre-smtp has two modes of operation, and honestly she's flexible like that:

  • 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. And here's the lil plot twist πŸ‘€ 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" β€” the spaces will absolutely betray you otherwise 🫢

πŸ’– OPTIONS πŸ’–

  • --fork, -f β€” Fork and deliver message in background. If you use this option, you should also use --outbox to handle delivery failures. (main character energy, but make sure someone catches her if she trips πŸŽ€)
  • --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
  • --version β€” show program's version number and exit

πŸ“¬ COMPOSE MAIL πŸ“¬

Options to compose an email. Ignored if text is not specified β€” like, she's not gonna build a message out of thin air bestie 😭

  • --attachment, -a β€” File to attach to the email
  • --subject, -s β€” Subject of the email

🌈 SMTP RELAY 🌈

Options to use an SMTP relay server to send mail. calibre will try to send the email directly unless --relay is specified. So the relay is opt-in, periodt πŸ’…

  • --cafile β€” 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.
  • --dont-verify-server-certificate β€” 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. Like, do not unless you truly know what you're doing πŸ™ˆ
  • --password, -p β€” Password for relay
  • --port β€” 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

πŸ‘‘ AUTHOR πŸ‘‘

Kovid Goyal

Kovid Goyal


okay that's the whole page, you ate that πŸ’– This was calibre-smtp from the calibre manual, version 9.14.0, dated August 28, 2026 β€” mwah, go send some mail bestie, ily πŸ«Άβœ¨πŸ’…

πŸ“¦ where this page comes from