| Version | Supported |
|---|---|
| 0.x.x | :white_check_mark: |
If you discover a security vulnerability, please report it by emailing:
rob@superiortech.io
Please include:
You will receive a response within 48 hours acknowledging receipt. Security issues will be prioritized and addressed as quickly as possible.
This MCP server:
The server requires macOS automation permissions to function. These permissions are managed by macOS and can be revoked at any time in System Preferences > Privacy & Security > Automation.
The server enforces multiple layers of input validation to prevent injection and abuse:
All message IDs are validated against a numeric-only schema (/^\d+$/). Non-numeric IDs are rejected before reaching AppleScript. As a defense-in-depth measure, all ID values are also coerced through Number(id) at every AppleScript interpolation point.
Batch operations (batch-delete-messages, batch-move-messages, batch-mark-as-read, batch-mark-as-unread, batch-flag-messages, batch-unflag-messages) are capped at 100 messages per request to prevent resource exhaustion.
Date filter parameters (dateFrom, dateTo) are validated to accept only alphanumeric characters and safe punctuation (spaces, commas, slashes, hyphens, colons, periods). An additional escapeForAppleScript() call is applied as a belt-and-suspenders safeguard before any date string is interpolated into AppleScript.
The save-attachment tool prevents path traversal attacks:
path.resolve/tmp, /private/tmp, and /Volumes are allowed/, \, null bytes (\0), or .. are rejectedThe send-email and create-draft tools accept a maximum of 20 file attachments per message. The send-serial-email tool enforces a maximum of 100 recipients per batch and a maximum inter-send delay of 10,000ms.
When using this server with AI assistants: