Skip to content

v2.3.3

Choose a tag to compare

@github-actions github-actions released this 25 Jan 06:48
· 324 commits to main since this release

Microsoft Graph & SMTP Testing Tools

Portable CLI tools for comprehensive email infrastructure testing - both cloud (Exchange Online via Microsoft Graph) and on-premises (SMTP servers).

What's Included

Each ZIP archive contains:

  • msgraphgolangtestingtool - Microsoft Graph API tool for Exchange Online
  • smtptool - SMTP connectivity testing tool with comprehensive TLS diagnostics
  • README.md - Main documentation
  • SMTP_TOOL_README.md - Complete SMTP tool guide
  • BUILD.md - Build instructions for both tools
  • EXAMPLES.md - Microsoft Graph tool usage examples
  • LICENSE - MIT License

Installation

Windows:

  1. Download msgraphgolangtestingtool-windows.zip
  2. Extract the ZIP file
  3. Run msgraphgolangtestingtool.exe or smtptool.exe directly

Linux:

  1. Download msgraphgolangtestingtool-linux.zip
  2. Extract: unzip msgraphgolangtestingtool-linux.zip
  3. Make executable: chmod +x msgraphgolangtestingtool smtptool
  4. Run: ./msgraphgolangtestingtool or ./smtptool

macOS:

  1. Download msgraphgolangtestingtool-macos.zip
  2. Extract: unzip msgraphgolangtestingtool-macos.zip
  3. Make executable: chmod +x msgraphgolangtestingtool smtptool
  4. Run: ./msgraphgolangtestingtool or ./smtptool

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 msgraphgolangtestingtool smtptool

Quick Start

Microsoft Graph Tool:

# Windows
.\msgraphgolangtestingtool.exe -tenantid "..." -clientid "..." -secret "..." -mailbox "user@example.com" -action getinbox

# Linux/macOS
./msgraphgolangtestingtool -tenantid "..." -clientid "..." -secret "..." -mailbox "user@example.com" -action getinbox

SMTP Tool:

# Windows - Test connectivity
.\smtptool.exe -action testconnect -host smtp.example.com -port 25

# Windows - Comprehensive TLS diagnostics
.\smtptool.exe -action teststarttls -host smtp.example.com -port 587

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

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

Documentation

  • README.md - Overview and quick start for both tools
  • SMTP_TOOL_README.md - Complete SMTP tool documentation with all actions
  • EXAMPLES.md - Detailed Microsoft Graph tool examples
  • BUILD.md - Build from source instructions
  • Online: GitHub Repository

Tools Overview

msgraphgolangtestingtool - Microsoft Graph API operations:

  • Send emails, create calendar events
  • List inbox messages and calendar events
  • Check availability, export data
  • Multiple authentication methods (Client Secret, PFX Certificate, Windows Certificate Store)

smtptool - SMTP connectivity testing:

  • Test basic SMTP connectivity with capability detection
  • Comprehensive TLS/SSL handshake analysis
  • Certificate chain validation and expiry warnings
  • SMTP authentication testing
  • Send test emails
  • Exchange server detection (2003-2019)