Skip to content

v2.6.18

Choose a tag to compare

@github-actions github-actions released this 03 Feb 19:11
· 277 commits to main since this release

gomailtesttool Suite - Email Infrastructure Testing Tools

Portable CLI tools for comprehensive email infrastructure testing - covering cloud services (Exchange Online via Microsoft Graph), SMTP, IMAP, POP3, and JMAP protocols.

What's Included

Each ZIP archive contains 5 tools:

  • msgraphtool - Microsoft Graph API tool for Exchange Online
  • smtptool - SMTP connectivity and TLS testing
  • imaptool - IMAP server testing with XOAUTH2 support
  • pop3tool - POP3 server testing with XOAUTH2 support
  • jmaptool - JMAP protocol testing

Plus documentation:

  • README.md - Main documentation
  • ** _TOOL_README.md* - specific protocols tool guide
  • EXAMPLES.md - Usage examples
  • LICENSE - MIT License

Installation

Windows (amd64):

  1. Download gomailtesttool-windows-amd64.zip
  2. Extract the ZIP file
  3. Run any tool directly (e.g., smtptool.exe -help)

Linux (amd64):

  1. Download gomailtesttool-linux-amd64.zip
  2. Extract: unzip gomailtesttool-linux-amd64.zip
  3. Make executable: chmod +x *tool
  4. Run: ./smtptool -help

macOS (Apple Silicon/arm64):

  1. Download gomailtesttool-macos-arm64.zip
  2. Extract: unzip gomailtesttool-macos-arm64.zip
  3. Make executable: chmod +x *tool
  4. Run: ./smtptool -help

Note for macOS: If you see "cannot be opened because the developer cannot be verified":

  • Right-click the binary and select "Open", or
  • Run: xattr -d com.apple.quarantine *tool

Quick Start Examples

SMTP Testing:

# Test connectivity
./smtptool -action testconnect -host smtp.example.com -port 25

# TLS diagnostics
./smtptool -action teststarttls -host smtp.example.com -port 587

IMAP Testing:

# Test connection
./imaptool -action testconnect -host imap.gmail.com -imaps

# List folders with OAuth2
./imaptool -action listfolders -host imap.gmail.com -imaps \
  -username user@gmail.com -accesstoken "ya29..."

POP3 Testing:

# Test connection
./pop3tool -action testconnect -host pop.gmail.com -pop3s

# List mail
./pop3tool -action listmail -host pop.gmail.com -pop3s \
  -username user@gmail.com -password "app-password"

JMAP Testing:

# Discover session
./jmaptool -action testconnect -host jmap.fastmail.com

# Get mailboxes
./jmaptool -action getmailboxes -host jmap.fastmail.com \
  -username user@fastmail.com -accesstoken "token"

Microsoft Graph:

./msgraphtool -tenantid "..." -clientid "..." -secret "..." \
  -mailbox "user@example.com" -action getinbox

Tools Overview

Tool Protocol Ports Auth Methods
smtptool SMTP 25, 587, 465 PLAIN, LOGIN, CRAM-MD5, XOAUTH2
imaptool IMAP 143, 993 PLAIN, LOGIN, XOAUTH2
pop3tool POP3 110, 995 USER/PASS, APOP, XOAUTH2
jmaptool JMAP 443 Basic, Bearer
msgraphtool Graph API 443 Client Secret, Certificate, Bearer

Documentation