v0.2.2
·
2 commits
to main
since this release
Immutable
release. Only release title and notes can be modified.
Same fix as the (unpublished) v0.2.1 — re-tagged because GitHub's immutable
releases permanently bound the v0.2.1 tag to a release created without assets.
Fixes
- Don't crash the server when Full Disk Access is missing. When a GUI MCP client (e.g. Claude Desktop) launches the server as a subprocess without Full Disk Access,
find_mail_directory()used to raisePermissionErrorout of startup and the whole server exited — the client showed "Server disconnected" with a bare traceback. The server now starts anyway and logs a clear, actionable Full-Disk-Access warning; read/search/index tools reportfull_disk_access_denieduntil the grant is in place, while write tools (Mail.app scripting, gated by Automation) keep working. Newlibrary_mail_permission_denied()helper distinguishes "denied" from "no mailbox"; regression test included.
Install from this release (no PyPI needed)
# wheel (persistent CLI):
uv tool install --force ./cobos_apple_mail_mcp-0.2.2-py3-none-any.whl
# or single-file .pyz — run with Python 3.12 (the ABI it was built for):
python3.12 apple-mail-mcp.pyz serve
# -full.pyz additionally bundles [watch]+[semantic]+[attachments].Verify with shasum -a 256 -c SHA256SUMS.txt. Then grant the app running the server
Full Disk Access (System Settings → Privacy & Security) — see the wiki's
Permissions & troubleshooting for the "Server disconnected" symptom and fix.