proton-mail-bridge-client 2.1.0 → 2.1.1

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 CHANGED
@@ -264,6 +264,82 @@ Reload the Cline extension after saving. Proton Mail tools will appear in Cline'
264
264
 
265
265
  ---
266
266
 
267
+ ## Multi-account support (v2.1.0+)
268
+
269
+ Support multiple Proton Mail addresses configured in Bridge (using Bridge's **Split Addresses** feature). Each address gets its own isolated service stack, local index, and drafts storage.
270
+
271
+ ### Setup
272
+
273
+ First, enable **Split Addresses** in Proton Bridge and configure each address as a separate account. Bridge will generate a separate password for each address. Then set `PROTONMAIL_ACCOUNTS_JSON`:
274
+
275
+ ```json
276
+ {
277
+ "mcpServers": {
278
+ "proton-mail-bridge": {
279
+ "command": "proton-mail-bridge-mcp",
280
+ "env": {
281
+ "PROTONMAIL_USERNAME": "primary@proton.me",
282
+ "PROTONMAIL_PASSWORD": "primary-bridge-password",
283
+ "PROTONMAIL_IMAP_HOST": "127.0.0.1",
284
+ "PROTONMAIL_IMAP_PORT": "1143",
285
+ "PROTONMAIL_IMAP_SECURE": "false",
286
+ "PROTONMAIL_SMTP_HOST": "127.0.0.1",
287
+ "PROTONMAIL_SMTP_PORT": "1025",
288
+ "PROTONMAIL_ACCOUNTS_JSON": "[
289
+ { \"address\": \"primary@proton.me\", \"password\": \"primary-bridge-password\" },
290
+ { \"address\": \"alias@proton.me\", \"password\": \"alias-bridge-password\" },
291
+ { \"address\": \"business@custom.com\", \"password\": \"business-bridge-password\" }
292
+ ]"
293
+ }
294
+ }
295
+ }
296
+ }
297
+ ```
298
+
299
+ **Note:** The password is the **Bridge password for each address**, not your Proton account password. Bridge generates a unique password for each Split Address.
300
+
301
+ ### How it works
302
+
303
+ - **Primary account:** the first entry in `PROTONMAIL_ACCOUNTS_JSON` (or the main `PROTONMAIL_USERNAME`/`PROTONMAIL_PASSWORD` pair if not set). Email IDs from the primary account have no prefix.
304
+ - **Additional accounts:** each has an auto-generated slug (e.g., `alias`, `business`). Email IDs carry an account prefix: `alias::message-id`, `business::message-id`.
305
+ - **Sending:** `send_email`, `reply_to_email`, etc. route through the account matching the `from` address. If no account matches, the primary connection is used with a header override (for non-configured aliases).
306
+ - **Search and read:** all read tools (search, threads, analytics, digest) automatically fan out across all configured accounts and merge results, preserving the account prefix in returned IDs.
307
+
308
+ ### Tools across accounts
309
+
310
+ **Fan out across all accounts:**
311
+ - Search & read: `search_indexed_emails`, `get_emails`, `get_threads`, `get_thread_by_id`, `count_messages`, `get_labels`, `folder_stats`, `top_senders`, `get_contacts`, `get_volume_trends`, `get_email_analytics`, `get_email_stats`, `get_folders`
312
+ - Triage: `get_inbox_digest`, `get_follow_up_candidates`, `get_actionable_threads`, `find_document_threads`, `prepare_meeting_context`
313
+ - Diagnostics: `get_connection_status`, `get_runtime_status`, `run_doctor` (include an `accounts` array showing per-account status)
314
+
315
+ **Account-specific (prefix to target):**
316
+ - Actions: `mark_email_read`, `star_email`, `move_email`, `delete_email`, etc. — prefix the `emailId` with account slug if targeting a non-primary account
317
+ - Drafts: `create_draft`, `get_draft`, `send_draft`, etc. — drafts live per account; prefix `draftId` to access non-primary drafts
318
+ - Send: `send_email`, `reply_to_email`, `forward_email` — match the `from` address to route through the correct account's SMTP
319
+
320
+ **Primary-only (for now):**
321
+ - `list_drafts`, `list_remote_drafts` — show primary account drafts only
322
+ - Thread actions (`move_thread`, `delete_thread`, `flag_thread`) — operate on the account the thread ID's prefix names
323
+
324
+ ### Verify setup
325
+
326
+ Use `list_accounts` to check configured accounts and verify connection status:
327
+
328
+ ```bash
329
+ proton-mail-bridge-client list_accounts --json
330
+ ```
331
+
332
+ Output:
333
+ ```json
334
+ [
335
+ { "slug": "primary", "address": "primary@proton.me", "isPrimary": true, "index": "fresh", "imap": "ok", "smtp": "ok" },
336
+ { "slug": "alias", "address": "alias@proton.me", "isPrimary": false, "index": "fresh", "imap": "ok", "smtp": "ok" },
337
+ { "slug": "business", "address": "business@custom.com", "isPrimary": false, "index": "stale", "imap": "timeout", "smtp": "ok" }
338
+ ]
339
+ ```
340
+
341
+ ---
342
+
267
343
  ## Try it: example Claude prompts
268
344
 
269
345
  **Morning triage**
@@ -370,7 +446,13 @@ PROTONMAIL_ALLOW_REMOTE_DRAFT_SYNC='true'
370
446
  PROTONMAIL_ALLOWED_ACTIONS='mark_read,mark_unread,star,unstar,archive,trash,restore,move,delete'
371
447
  PROTONMAIL_CONFIRM_DESTRUCTIVE='false'
372
448
  PROTONMAIL_SEND_DELAY_SECONDS='0' # >0: send_email queues instead of sending immediately, cancelable via cancel_send. Only fires while this server stays running.
373
- PROTONMAIL_SIGNATURE='' # Plain text, appended to send_email/reply_to_email/reply_all_email/forward_email bodies (text + HTML), after your own text and before any quoted/forwarded content. Opt out per-message with appendSignature: false. Never applied to send_draft/schedule_draft — draft content is already finalized.
449
+ PROTONMAIL_SIGNATURE='' # Plain text, appended to send_email/reply_to_email/reply_all_email/forward_email bodies (text + HTML), after your own text and before any quoted/forwarded content. Every send now goes out multipart (a plain-text send auto-gets an html alternative too), so the signature always gets its HTML treatment, not just the text/plain part. Opt out per-message with appendSignature: false. Never applied to send_draft/schedule_draft — draft content is already finalized.
450
+ #
451
+ # Note: a signature configured inside Proton Mail itself (Settings → Identity and addressing)
452
+ # is only inserted by Proton's own web/app compose UI — it is NEVER applied to mail submitted
453
+ # over SMTP by an external client, including this one. There is no way to make Bridge apply it
454
+ # for you. Set PROTONMAIL_SIGNATURE above instead if you want a signature on messages this
455
+ # server sends.
374
456
 
375
457
  # Sync
376
458
  PROTONMAIL_AUTO_SYNC='true'
@@ -1 +1 @@
1
- {"version":3,"file":"smtp-service.d.ts","sourceRoot":"","sources":["../../src/services/smtp-service.ts"],"names":[],"mappings":"AACA,OAAmB,EAAE,KAAK,eAAe,EAAoB,MAAM,YAAY,CAAC;AAGhF,OAAO,KAAK,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAI1E,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEpD;AAoBD,wBAAgB,cAAc,CAC5B,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,eAAe,EAAE,OAAO,GAAG,SAAS,GACnC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,CAUhD;AAED,qBAAa,WAAW;IAGV,OAAO,CAAC,QAAQ,CAAC,MAAM;IAFnC,OAAO,CAAC,WAAW,CAAC,CAAc;gBAEL,MAAM,EAAE,gBAAgB;IAE/C,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;IAKjC,SAAS,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,eAAe,CAAC;IAK1D,eAAe,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC;IAavD,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;IAkB1F,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAS5B,OAAO,CAAC,cAAc;IAoBtB,OAAO,CAAC,mBAAmB;IAyC3B,OAAO,CAAC,gBAAgB;CAmGzB"}
1
+ {"version":3,"file":"smtp-service.d.ts","sourceRoot":"","sources":["../../src/services/smtp-service.ts"],"names":[],"mappings":"AACA,OAAmB,EAAE,KAAK,eAAe,EAAoB,MAAM,YAAY,CAAC;AAGhF,OAAO,KAAK,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAI1E,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEpD;AAgCD,wBAAgB,cAAc,CAC5B,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,eAAe,EAAE,OAAO,GAAG,SAAS,GACnC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,CAUhD;AAED,qBAAa,WAAW;IAGV,OAAO,CAAC,QAAQ,CAAC,MAAM;IAFnC,OAAO,CAAC,WAAW,CAAC,CAAc;gBAEL,MAAM,EAAE,gBAAgB;IAE/C,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;IAKjC,SAAS,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,eAAe,CAAC;IAK1D,eAAe,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC;IAavD,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;IAkB1F,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAS5B,OAAO,CAAC,cAAc;IAoBtB,OAAO,CAAC,mBAAmB;IAyC3B,OAAO,CAAC,gBAAgB;CAuGzB"}
@@ -15,6 +15,17 @@ function escapeHtml(value) {
15
15
  .replace(/"/g, """)
16
16
  .replace(/'/g, "'");
17
17
  }
18
+ // Plain-text sends (isHtml: false, no explicit htmlBody) used to go out with NO html
19
+ // part at all — a real mail client renders that as "plain text", not "normal text",
20
+ // and applySignature's html branch never fires because there's no htmlBody for it to
21
+ // append the (HTML-escaped, <br>-joined) signature block to. So a plain-text send's
22
+ // signature only ever reached the text/plain part, and any client preferring the html
23
+ // part just... didn't show one. Auto-deriving an html alternative from the same text
24
+ // (escaped, newlines as <br>) means every send is multipart/alternative like a normal
25
+ // mail client, and the signature gets its HTML treatment on this path too.
26
+ function plainTextToHtml(text) {
27
+ return escapeHtml(text).replace(/\n/g, "<br>");
28
+ }
18
29
  // PROTONMAIL_SIGNATURE is plain text; appended to both the text body and,
19
30
  // for HTML mail, as a <br><br> separated block escaped into the markup
20
31
  // (kept simple — not itself HTML, so no separate sanitization concern).
@@ -183,7 +194,11 @@ export class SMTPService {
183
194
  }
184
195
  const shouldSanitize = (input.sanitizeHtml !== false || !unsafeHtmlAllowed)
185
196
  && (input.isHtml || input.htmlBody !== undefined);
186
- const htmlContent = input.htmlBody ?? (input.isHtml ? input.body : undefined);
197
+ // Plain-text case (isHtml false, no htmlBody supplied): derive an html
198
+ // alternative from the same text instead of sending text-only — see
199
+ // plainTextToHtml's comment. Already escaped, so it's excluded from
200
+ // shouldSanitize above (sanitizing it again would be a no-op anyway).
201
+ const htmlContent = input.htmlBody ?? (input.isHtml ? input.body : (input.body ? plainTextToHtml(input.body) : undefined));
187
202
  const sanitizedHtml = shouldSanitize && htmlContent
188
203
  ? this.sanitizeHtmlContent(htmlContent)
189
204
  : htmlContent;
@@ -1 +1 @@
1
- {"version":3,"file":"smtp-service.js","sourceRoot":"","sources":["../../src/services/smtp-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"smtp-service.js","sourceRoot":"","sources":["../../src/services/smtp-service.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "proton-mail-bridge-client",
3
- "version": "2.1.0",
3
+ "version": "2.1.1",
4
4
  "description": "Proton Mail Bridge Client — full-featured CLI and Claude Desktop MCP for Proton Mail via Proton Bridge. Read, search, send, draft, archive, manage folders, and more.",
5
5
  "mcpName": "io.github.googlarz/proton-mail-bridge-client",
6
6
  "type": "module",