imap-smtp-email
Read and send email via IMAP/SMTP. Check for new/unread messages, fetch content, search mailboxes, mark as read/unread, and send emails with attachments. Works with any IMAP/SMTP server including Gmail, Outlook, 163.com, vip.163.com, 126.com, vip.126.com, 188.com, and vip.188.com.
By boomsystel-code · 1,863 installs
npx skills add boomsystel-code/openclaw-workspace --skill imap-smtp-email
Source repository · Upstream listing
IMAP/SMTP Email Tool
Read, search, and manage email via IMAP protocol. Send email via SMTP. Supports Gmail, Outlook, 163.com, vip.163.com, 126.com, vip.126.com, 188.com, vip.188.com, and any standard IMAP/SMTP server.
Configuration
Create .env in the skill folder or set environment variables:
Common Email Servers
Provider IMAP Host IMAP Port SMTP Host SMTP Port
163.com imap.163.com 993 smtp.163.com 465
vip.163.com imap.vip.163.com 993 smtp.vip.163.com 465
126.com imap.126.com 993 smtp.126.com 465
vip.126.com imap.vip.126.com 993 smtp.vip.126.com 465
188.com imap.188.com 993 smtp.188.com 465
vip.188.com imap.vip.188.com 993 smtp.vip.188.com 465
yeah.net imap.yeah.net 993 smtp.yeah.net 465
Gmail imap.gmail.com 993 smtp.gmail.com 587
Outlook outlook.office365.com 993 smtp.office365.com 587
QQ Mail imap.qq.com 993 smtp.qq.com 587
Important for 163.com:
Use authorization code (授权码), not account password
Enable IMAP/SMTP in web settings first
IMAP Commands (Receiving Email)
check
Check for new/unread emails.
Options:
limit <n : Max results (default: 10)
mailbox <name : Mailbox to check (default: INBOX)
recent <time : Only show emails from last X time (e.g., 30m, 2h, 7d)
fetch
Fetch full email content by UID.
download
Download all attachments from an email, or a specific attachment.
Options:
mailbox <name : Mailbox (default: INBOX)
dir <path : Output directory (default: current directory)
file <filename : Download only the specified attachment (default: download all)
search
Search emails with filters.
mark read / mark unread
Mark message(s) as read or unread.
list mailboxes
List all available mailboxes/folders.
SMTP Commands (Sending Email)
send
Send email via SMTP.
Required:
to <email : Recipient (comma separated for multiple)
subject <text : Email subject, or subject file <file
Optional:
body <text : Plain text body
html : Send body as HTML
body file <file : Read body from file
html file <file : Read HTML from file
cc <email : CC recipients
bcc <email : BCC recipients
attach <file : Attachments (comma separated)
from <email : Override default sender
Examples:
test
Test SMTP connection by sending a test email to yourself.
Dependencies
Security Notes
Store credentials in .env (add to .gitignore )
For Gmail: use App Password if 2FA is enabled
For 163.com: use authorization code (授权码), not account password
Troubleshooting
Connection timeout:
Verify server is running and accessible
Check host/port configuration
Authentication failed:
Verify username (usually full email address)
Check password is correct
For 163.com: use authorization code, not account password
For Gmail: use App Password if 2FA enabled
TLS/SSL errors:
Match IMAP TLS / SMTP SECURE setting to server requirements
For self signed certs: set IMAP REJECT UNAUTHORIZED=false or SMTP REJECT UNAUTHORIZED=false