apple-mail-mcp 2.8.3 → 2.8.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +19 -0
- package/build/index.js +4 -2
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -98,6 +98,25 @@ npm install -g github:sweetrb/apple-mail-mcp
|
|
|
98
98
|
|
|
99
99
|
On first use, macOS will ask for permission to automate Mail.app. Click "OK" to allow.
|
|
100
100
|
|
|
101
|
+
## Configuring email (IMAP & SMTP)
|
|
102
|
+
|
|
103
|
+
The server works out of the box over AppleScript with **no configuration**. Two
|
|
104
|
+
**opt-in** power features take a one-time setup:
|
|
105
|
+
|
|
106
|
+
- **Fast IMAP reads** — server-side search, counts, and large-mailbox handling
|
|
107
|
+
that AppleScript is too slow for (it times out on big Gmail mailboxes).
|
|
108
|
+
- **Clean SMTP sending** — `send-email` submits clean MIME directly, avoiding the
|
|
109
|
+
macOS 15+ Mail.app `<blockquote>` wrapping that otherwise makes sent mail look
|
|
110
|
+
quoted/indented like a reply.
|
|
111
|
+
|
|
112
|
+
Both are driven by non-secret `APPLE_MAIL_MCP_*` settings — supplied via an `env`
|
|
113
|
+
block **or** a `config.json` file (for hosts like Claude Desktop that strip `env`)
|
|
114
|
+
— with passwords kept in the macOS **Keychain**, never in config.
|
|
115
|
+
|
|
116
|
+
👉 **[IMAP / SMTP Setup Guide](docs/IMAP-SETUP.md)** — step-by-step: app passwords,
|
|
117
|
+
Keychain, both config methods, multi-account, SMTP, verification with the `doctor`
|
|
118
|
+
tool, and troubleshooting. Verify any time by running the **`doctor`** tool.
|
|
119
|
+
|
|
101
120
|
## Requirements
|
|
102
121
|
|
|
103
122
|
- **macOS** - Apple Mail and AppleScript are macOS-only
|
package/build/index.js
CHANGED
|
@@ -80733,6 +80733,8 @@ async function routeMessage(id, opts) {
|
|
|
80733
80733
|
}
|
|
80734
80734
|
|
|
80735
80735
|
// src/tools/doctor.ts
|
|
80736
|
+
var SETUP_GUIDE = "https://github.com/sweetrb/apple-mail-mcp/blob/main/docs/IMAP-SETUP.md";
|
|
80737
|
+
var CONFIG_FILE_HINT = "If your MCP host ignores the server 'env' block (e.g. Claude Desktop), put these in ~/Library/Application Support/apple-mail-mcp/config.json instead";
|
|
80736
80738
|
async function runDoctor(mailManager2) {
|
|
80737
80739
|
const checks = [];
|
|
80738
80740
|
const hc = mailManager2.healthCheck();
|
|
@@ -80764,7 +80766,7 @@ async function runDoctor(mailManager2) {
|
|
|
80764
80766
|
checks.push({
|
|
80765
80767
|
name: "IMAP backend",
|
|
80766
80768
|
status: "warn",
|
|
80767
|
-
detail: `not configured \u2014 AppleScript is used for all accounts. Set ${IMAP_ENV.user} (+ Keychain/password), or ${IMAP_ENV.accounts} for multiple accounts, to enable server-side search and server-mailbox ops
|
|
80769
|
+
detail: `not configured \u2014 AppleScript is used for all accounts. Set ${IMAP_ENV.user} (+ Keychain/password), or ${IMAP_ENV.accounts} for multiple accounts, to enable server-side search and server-mailbox ops. ${CONFIG_FILE_HINT}. Setup guide: ${SETUP_GUIDE}`
|
|
80768
80770
|
});
|
|
80769
80771
|
} else {
|
|
80770
80772
|
for (const label of imapAccounts) {
|
|
@@ -80780,7 +80782,7 @@ async function runDoctor(mailManager2) {
|
|
|
80780
80782
|
checks.push({
|
|
80781
80783
|
name: "SMTP transport",
|
|
80782
80784
|
status: isSmtpConfigured() ? "ok" : "warn",
|
|
80783
|
-
detail: isSmtpConfigured() ? `configured (${smtpHost}); send-email auto-prefers clean SMTP (no Mail.app Sent-folder copy; a non-email "account" label still routes to AppleScript). Pass transport:"applescript" to force Mail.app. The apple-mail-send CLI is also available.` : `not configured \u2014 send-email uses AppleScript (subject to macOS 15+ blockquote wrapping). Set ${SMTP_ENV.host} and ${SMTP_ENV.user} (+ password via Keychain) to enable
|
|
80785
|
+
detail: isSmtpConfigured() ? `configured (${smtpHost}); send-email auto-prefers clean SMTP (no Mail.app Sent-folder copy; a non-email "account" label still routes to AppleScript). Pass transport:"applescript" to force Mail.app. The apple-mail-send CLI is also available.` : `not configured \u2014 send-email uses AppleScript (subject to macOS 15+ blockquote wrapping). Set ${SMTP_ENV.host} and ${SMTP_ENV.user} (+ password via Keychain) to enable. ${CONFIG_FILE_HINT}. Setup guide: ${SETUP_GUIDE}`
|
|
80784
80786
|
});
|
|
80785
80787
|
const healthy = !checks.some((c) => c.status === "fail");
|
|
80786
80788
|
return { healthy, checks };
|
package/package.json
CHANGED