@rndmjoker/proton-mcp 0.4.7 → 0.4.12

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.
Files changed (105) hide show
  1. package/README.md +69 -21
  2. package/dist/bridge/certificate.d.ts +33 -1
  3. package/dist/bridge/certificate.js +82 -9
  4. package/dist/bridge/certificate.js.map +1 -1
  5. package/dist/bridge/connection.js +31 -6
  6. package/dist/bridge/connection.js.map +1 -1
  7. package/dist/bridge/errors.d.ts +8 -0
  8. package/dist/bridge/errors.js +28 -3
  9. package/dist/bridge/errors.js.map +1 -1
  10. package/dist/config.d.ts +6 -0
  11. package/dist/config.js +1 -0
  12. package/dist/config.js.map +1 -1
  13. package/dist/credentials/availability.d.ts +5 -0
  14. package/dist/credentials/availability.js +7 -0
  15. package/dist/credentials/availability.js.map +1 -1
  16. package/dist/credentials/encrypted-file.js +7 -2
  17. package/dist/credentials/encrypted-file.js.map +1 -1
  18. package/dist/credentials/keyring.d.ts +12 -2
  19. package/dist/credentials/keyring.js +44 -6
  20. package/dist/credentials/keyring.js.map +1 -1
  21. package/dist/credentials/plain-file.js +8 -2
  22. package/dist/credentials/plain-file.js.map +1 -1
  23. package/dist/credentials/session-bus.d.ts +38 -0
  24. package/dist/credentials/session-bus.js +68 -0
  25. package/dist/credentials/session-bus.js.map +1 -0
  26. package/dist/credentials/store.d.ts +5 -1
  27. package/dist/credentials/store.js.map +1 -1
  28. package/dist/in-flight.d.ts +6 -3
  29. package/dist/in-flight.js +6 -3
  30. package/dist/in-flight.js.map +1 -1
  31. package/dist/mail/actions.d.ts +0 -2
  32. package/dist/mail/actions.js +8 -7
  33. package/dist/mail/actions.js.map +1 -1
  34. package/dist/mail/attachments.d.ts +12 -2
  35. package/dist/mail/attachments.js +19 -11
  36. package/dist/mail/attachments.js.map +1 -1
  37. package/dist/mail/compose.d.ts +70 -15
  38. package/dist/mail/compose.js +147 -11
  39. package/dist/mail/compose.js.map +1 -1
  40. package/dist/mail/drafts.d.ts +28 -2
  41. package/dist/mail/drafts.js +91 -21
  42. package/dist/mail/drafts.js.map +1 -1
  43. package/dist/mail/ids.d.ts +10 -0
  44. package/dist/mail/ids.js +16 -4
  45. package/dist/mail/ids.js.map +1 -1
  46. package/dist/mail/labels.js +9 -4
  47. package/dist/mail/labels.js.map +1 -1
  48. package/dist/mail/messages.d.ts +50 -10
  49. package/dist/mail/messages.js +94 -6
  50. package/dist/mail/messages.js.map +1 -1
  51. package/dist/mail/saved-attachments.d.ts +128 -0
  52. package/dist/mail/saved-attachments.js +448 -0
  53. package/dist/mail/saved-attachments.js.map +1 -0
  54. package/dist/mail/search.d.ts +73 -5
  55. package/dist/mail/search.js +150 -27
  56. package/dist/mail/search.js.map +1 -1
  57. package/dist/mail/send.js +24 -9
  58. package/dist/mail/send.js.map +1 -1
  59. package/dist/mail/uid-search.d.ts +17 -0
  60. package/dist/mail/uid-search.js +25 -0
  61. package/dist/mail/uid-search.js.map +1 -0
  62. package/dist/mime/filenames.d.ts +24 -0
  63. package/dist/mime/filenames.js +58 -0
  64. package/dist/mime/filenames.js.map +1 -0
  65. package/dist/mime/parts.d.ts +34 -0
  66. package/dist/mime/parts.js +92 -0
  67. package/dist/mime/parts.js.map +1 -0
  68. package/dist/server.js +39 -8
  69. package/dist/server.js.map +1 -1
  70. package/dist/session.d.ts +15 -3
  71. package/dist/session.js +35 -8
  72. package/dist/session.js.map +1 -1
  73. package/dist/tools/actions.js +2 -1
  74. package/dist/tools/actions.js.map +1 -1
  75. package/dist/tools/confirm.js +47 -11
  76. package/dist/tools/confirm.js.map +1 -1
  77. package/dist/tools/drafts.d.ts +3 -0
  78. package/dist/tools/drafts.js +31 -10
  79. package/dist/tools/drafts.js.map +1 -1
  80. package/dist/tools/format.d.ts +8 -0
  81. package/dist/tools/format.js +44 -6
  82. package/dist/tools/format.js.map +1 -1
  83. package/dist/tools/guidance.js +27 -3
  84. package/dist/tools/guidance.js.map +1 -1
  85. package/dist/tools/messages.js +41 -13
  86. package/dist/tools/messages.js.map +1 -1
  87. package/dist/tools/pending-view.d.ts +7 -0
  88. package/dist/tools/pending-view.js +4 -1
  89. package/dist/tools/pending-view.js.map +1 -1
  90. package/dist/tools/saved.d.ts +15 -0
  91. package/dist/tools/saved.js +107 -0
  92. package/dist/tools/saved.js.map +1 -0
  93. package/dist/tools/send.js +12 -4
  94. package/dist/tools/send.js.map +1 -1
  95. package/dist/web/layout.js +2 -0
  96. package/dist/web/layout.js.map +1 -1
  97. package/dist/web/pages.js +1 -0
  98. package/dist/web/pages.js.map +1 -1
  99. package/dist/web/pending.d.ts +4 -0
  100. package/dist/web/pending.js +32 -4
  101. package/dist/web/pending.js.map +1 -1
  102. package/dist/web/server.d.ts +16 -5
  103. package/dist/web/server.js +12 -8
  104. package/dist/web/server.js.map +1 -1
  105. package/package.json +21 -18
package/dist/server.js CHANGED
@@ -29,6 +29,8 @@ import { registerLabelTools } from './tools/labels.js';
29
29
  import { registerActionTools } from './tools/actions.js';
30
30
  import { registerDraftTools } from './tools/drafts.js';
31
31
  import { registerSendTools } from './tools/send.js';
32
+ import { registerSavedAttachmentTools } from './tools/saved.js';
33
+ import { SavedAttachments } from './mail/saved-attachments.js';
32
34
  import { setSignInHint, setLockedCheck } from './tools/failures.js';
33
35
  import { pendingView } from './tools/pending-view.js';
34
36
  import { setHandshakeCapabilities } from './tools/capabilities.js';
@@ -90,6 +92,13 @@ async function main() {
90
92
  // than at startup: a client often spawns the server long before the user wants
91
93
  // anything, and a locked Bridge should not prevent it from starting.
92
94
  const connection = new Connection(config, () => session.credentials(), notify);
95
+ // Attachments saved to disk, one store for the whole process. Starting it
96
+ // clears up what a server that was killed left behind; stopping it, below,
97
+ // deletes what this one saved. The exit handler is the fallback for an exit
98
+ // that does not pass through shutdown.
99
+ const saved = new SavedAttachments({ root: config.attachmentDir });
100
+ saved.start();
101
+ process.on('exit', () => saved.stop());
93
102
  /**
94
103
  * Tries credentials against the Bridge before they are trusted.
95
104
  *
@@ -116,19 +125,30 @@ async function main() {
116
125
  const failure = await verify(credentials);
117
126
  if (failure)
118
127
  return failure;
128
+ let left;
119
129
  try {
120
- await session.signIn(credentials, storeKind, masterPassword);
130
+ left = await session.signIn(credentials, storeKind, masterPassword);
121
131
  }
122
132
  catch (error) {
123
133
  return error.message;
124
134
  }
125
135
  // Drop the old connection so the next call uses the new credentials.
126
136
  await connection.close();
127
- return undefined;
137
+ if (left.length === 0)
138
+ return undefined;
139
+ return {
140
+ warning: `Signed in, and the password is kept where you chose. An earlier one is still stored ` +
141
+ `elsewhere, though. ${left.join(' ')} Until it is gone, the next start may sign in ` +
142
+ 'with it instead.',
143
+ };
128
144
  },
129
145
  onSignOut: async () => {
130
- await session.signOut();
146
+ const left = await session.signOut();
131
147
  await connection.close();
148
+ if (left.length === 0)
149
+ return undefined;
150
+ return (`Signed out here, but not everywhere. ${left.join(' ')} Until that is done, the next start ` +
151
+ 'signs in with what is left.');
132
152
  },
133
153
  onUnlock: async (masterPassword) => {
134
154
  let credentials;
@@ -143,16 +163,23 @@ async function main() {
143
163
  // the user would rather have answered here than at the next tool call.
144
164
  const failure = await verify(credentials);
145
165
  if (failure) {
146
- await session.signOut();
166
+ const left = await session.signOut();
147
167
  return (`${failure}\n\nThe file was decrypted, so the master password was correct, but the ` +
148
- 'Bridge password inside it no longer works. Sign in again with a fresh one.');
168
+ 'Bridge password inside it no longer works. Sign in again with a fresh one.' +
169
+ (left.length ? `\n\nNot everything stored could be removed. ${left.join(' ')}` : ''));
149
170
  }
150
171
  await connection.close();
151
172
  return undefined;
152
173
  },
153
174
  onDiscardEncrypted: async () => {
154
- await session.discardEncrypted();
175
+ try {
176
+ await session.discardEncrypted();
177
+ }
178
+ catch (error) {
179
+ return error.message;
180
+ }
155
181
  notify('the encrypted credentials file was deleted on request');
182
+ return undefined;
156
183
  },
157
184
  getStatus: async () => {
158
185
  const pinned = loadPinned(pinPath());
@@ -329,6 +356,7 @@ async function main() {
329
356
  registerUpdateTool(server, VERSION);
330
357
  registerListFolders(server, connection);
331
358
  registerMessageTools(server, connection);
359
+ registerSavedAttachmentTools(server, connection, saved);
332
360
  // Read as a function rather than a value: whether the server may write is a
333
361
  // property of the configuration, and the tools should ask at call time.
334
362
  registerLabelTools(server, connection, () => config.readOnly);
@@ -370,12 +398,15 @@ async function main() {
370
398
  // work yet. Without this pause the counter would be zero and the server
371
399
  // would exit before the last request even starts.
372
400
  await new Promise((next) => setTimeout(next, 50));
373
- // Let running tool calls finish so their answer still goes out. Bounded,
374
- // so that a stuck call cannot prevent shutdown.
401
+ // Let running tool calls finish their work. Their answer no longer goes
402
+ // out, because the SDK closes the transport once the input ends, but a
403
+ // message being handed to the Bridge is not cut off halfway. Bounded, so
404
+ // that a stuck call cannot prevent shutdown.
375
405
  const idle = await waitForIdle(5000);
376
406
  if (!idle)
377
407
  notify('shutdown forced, a call was still running.');
378
408
  try {
409
+ saved.stop();
379
410
  await web.stop();
380
411
  await connection.close();
381
412
  await handle.close();
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
package/dist/session.d.ts CHANGED
@@ -75,12 +75,24 @@ export declare class Session {
75
75
  *
76
76
  * The caller has already verified them against the Bridge: storing something
77
77
  * that does not work would be worse than not storing it.
78
+ *
79
+ * Every other store is emptied afterwards, so that only the place chosen last
80
+ * holds credentials. Before 2026-11-02 they were left as they were, and on the
81
+ * next start an earlier sign-in into another store won over this one (#53).
82
+ * Returns what could not be emptied; the sign-in stands either way.
78
83
  */
79
84
  signIn(credentials: Credentials, storeKind: StoreKind,
80
85
  /** Required for the encrypted file, meaningless for every other store. */
81
- masterPassword?: string): Promise<void>;
82
- /** Forgets the credentials everywhere they might be. */
83
- signOut(): Promise<void>;
86
+ masterPassword?: string): Promise<string[]>;
87
+ /**
88
+ * Forgets the credentials everywhere they might be.
89
+ *
90
+ * Returns what could not be removed, one explanation per store, and nothing
91
+ * when every store is empty. This process forgets them either way, because
92
+ * signing out is what the user asked for. Until 2026-11-02 a failure here was
93
+ * swallowed and looked like a clean sign-out (#52).
94
+ */
95
+ signOut(): Promise<string[]>;
84
96
  /** Replaces a store. Used by tests and by the startup wiring. */
85
97
  setStore(kind: StoreKind, store: CredentialStore): void;
86
98
  }
package/dist/session.js CHANGED
@@ -163,14 +163,20 @@ export class Session {
163
163
  * that matters.
164
164
  */
165
165
  async discardEncrypted() {
166
- await this.#stores['encrypted-file'].clear();
166
+ // Forgotten first: whether or not the file goes, nobody can use it now.
167
167
  this.#masterPassword = undefined;
168
+ await this.#stores['encrypted-file'].clear();
168
169
  }
169
170
  /**
170
171
  * Stores credentials and marks the session as signed in.
171
172
  *
172
173
  * The caller has already verified them against the Bridge: storing something
173
174
  * that does not work would be worse than not storing it.
175
+ *
176
+ * Every other store is emptied afterwards, so that only the place chosen last
177
+ * holds credentials. Before 2026-11-02 they were left as they were, and on the
178
+ * next start an earlier sign-in into another store won over this one (#53).
179
+ * Returns what could not be emptied; the sign-in stands either way.
174
180
  */
175
181
  async signIn(credentials, storeKind,
176
182
  /** Required for the encrypted file, meaningless for every other store. */
@@ -194,23 +200,44 @@ export class Session {
194
200
  this.#credentials = credentials;
195
201
  this.#storeKind = storeKind;
196
202
  this.#restored = true;
203
+ // The encrypted file is about to go if it was not the choice, and with it
204
+ // the only use of its master password.
205
+ if (storeKind !== 'encrypted-file')
206
+ this.#masterPassword = undefined;
207
+ return this.#clearAll(storeKind);
197
208
  }
198
- /** Forgets the credentials everywhere they might be. */
209
+ /**
210
+ * Forgets the credentials everywhere they might be.
211
+ *
212
+ * Returns what could not be removed, one explanation per store, and nothing
213
+ * when every store is empty. This process forgets them either way, because
214
+ * signing out is what the user asked for. Until 2026-11-02 a failure here was
215
+ * swallowed and looked like a clean sign-out (#52).
216
+ */
199
217
  async signOut() {
200
218
  // Every store, not only the one in use: a user signing out means "remove it",
201
219
  // and a leftover in another store would silently sign them back in.
220
+ const left = await this.#clearAll();
221
+ this.#credentials = undefined;
222
+ this.#storeKind = undefined;
223
+ this.#masterPassword = undefined;
224
+ this.#restored = true;
225
+ return left;
226
+ }
227
+ /** Empties every store but the one named, and says which could not be emptied. */
228
+ async #clearAll(except) {
229
+ const left = [];
202
230
  for (const kind of Object.keys(this.#stores)) {
231
+ if (kind === except)
232
+ continue;
203
233
  try {
204
234
  await this.#stores[kind].clear();
205
235
  }
206
- catch {
207
- // Nothing there is the outcome we wanted anyway.
236
+ catch (error) {
237
+ left.push(error.message);
208
238
  }
209
239
  }
210
- this.#credentials = undefined;
211
- this.#storeKind = undefined;
212
- this.#masterPassword = undefined;
213
- this.#restored = true;
240
+ return left;
214
241
  }
215
242
  /** Replaces a store. Used by tests and by the startup wiring. */
216
243
  setStore(kind, store) {
@@ -1 +1 @@
1
- {"version":3,"file":"session.js","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session.js","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"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"}
@@ -17,7 +17,8 @@
17
17
  * Flags are the exception and get no such warning: measured, they hold at once.
18
18
  */
19
19
  import * as z from 'zod';
20
- import { moveMessages, setFlags, trashMessages, MAX_BATCH, TRASH } from '../mail/actions.js';
20
+ import { moveMessages, setFlags, trashMessages, MAX_BATCH } from '../mail/actions.js';
21
+ import { TRASH } from '../mail/ids.js';
21
22
  import { formatBatch } from './format.js';
22
23
  import { describeFailure, withSignIn } from './failures.js';
23
24
  import { track } from '../in-flight.js';
@@ -1 +1 @@
1
- {"version":3,"file":"actions.js","sourceRoot":"","sources":["../../src/tools/actions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"actions.js","sourceRoot":"","sources":["../../src/tools/actions.ts"],"names":[],"mappings":"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"}
@@ -39,7 +39,7 @@
39
39
  */
40
40
  import { createHash } from 'node:crypto';
41
41
  import { inputRequired, acceptedContent } from '@modelcontextprotocol/server';
42
- import { describeAttachments, describeRecipients, describeUrls, fingerprintPart, firstLines, hiddenTextOf, composedBody, showRecipient, summariseQuote, styleNotesOf, } from '../mail/compose.js';
42
+ import { describeAttachments, describeRecipients, describeUrls, fingerprintPart, firstLines, hiddenTextOf, storedBeyondOf, composedBody, showRecipient, carriesQuote, styleNotesOf, } from '../mail/compose.js';
43
43
  import { canElicitForm } from './capabilities.js';
44
44
  /** The key our embedded elicitation is filed under. */
45
45
  export const CONFIRM_KEY = 'protonMcpSendConfirmation';
@@ -64,14 +64,32 @@ export function digestOf(draft) {
64
64
  html: draft.html ?? null,
65
65
  // The quote is part of what goes out, so it is part of what was agreed to.
66
66
  quoted: draft.quotedHtml ?? null,
67
+ // The level the markup was held to. It does not change the bytes that go
68
+ // out, which are covered by `html` above, but it does change what the
69
+ // question says: at `extended` the confirmation carries a warning and the
70
+ // preview lists every property used. Covering it here means a yes given to
71
+ // the warned version cannot be replayed for the unwarned one, or the other
72
+ // way round. The doc comment on Draft.markupLevel claimed this was already
73
+ // the case; now it is.
74
+ markupLevel: draft.markupLevel ?? null,
67
75
  inReplyTo: draft.inReplyTo ?? null,
68
- attached: draft.attachedMessage?.filename ?? null,
76
+ // Name and contents, for the same reason as the parts below. Up to 0.4.11
77
+ // only the name was covered.
78
+ attached: draft.attachedMessage
79
+ ? `${draft.attachedMessage.filename}:${fingerprintPart(draft.attachedMessage.raw)}`
80
+ : null,
81
+ // The body of a stored draft, which is sent unchecked, and so has to be
82
+ // exactly the body that was agreed to.
83
+ stored: draft.storedHtml ?? null,
69
84
  // The contents of every carried file, not just its name. A confirmation
70
85
  // that covered the name alone would let the picture be swapped after it
71
86
  // was agreed to.
72
87
  parts: (draft.inlineParts ?? [])
73
88
  .map((part) => `${part.contentId}:${part.contentType}:${fingerprintPart(part.content)}`)
74
89
  .sort(),
90
+ carried: (draft.carriedFiles ?? [])
91
+ .map((file) => `${file.filename}:${file.contentType}:${file.contentId ?? ''}:${fingerprintPart(file.content)}`)
92
+ .sort(),
75
93
  });
76
94
  return createHash('sha256').update(canonical).digest('hex');
77
95
  }
@@ -138,14 +156,30 @@ export function describeForConfirmation(draft, what, previewUrl) {
138
156
  // something was demonstrably hidden. Whether a value hides anything depends
139
157
  // on where it sits, and a warning clever enough to judge that is a warning
140
158
  // that will be wrong once, in the direction nobody wants.
159
+ //
160
+ // A stored draft is sent as it was stored, without the check composed markup
161
+ // goes through, so it gets the same warning whenever it carries more than
162
+ // `standard` would have let through.
141
163
  const notes = styleNotesOf(draft);
142
- if (notes.length > 0) {
164
+ const beyond = storedBeyondOf(draft);
165
+ if (notes.length > 0 || beyond.length > 0) {
143
166
  const hiding = notes.filter((n) => n.hides);
144
- lines.push('', '!!! THIS MESSAGE USES MARKUP THAT CAN HIDE CONTENT !!!', '', hiding.length > 0
145
- ? `${notes.length} unusual propert(ies) were used, and ${hiding.length} of them put ` +
146
- 'something out of sight. What a recipient sees is not what this message says it is.'
147
- : `${notes.length} unusual propert(ies) were used. None of them hides anything by ` +
148
- 'itself, but they are the ones that can.', 'Open the preview and look before answering. It names every one, its value and where it sat.');
167
+ lines.push('', '!!! THIS MESSAGE USES MARKUP THAT CAN HIDE CONTENT !!!', '');
168
+ if (notes.length > 0) {
169
+ lines.push(hiding.length > 0
170
+ ? `${notes.length} unusual propert(ies) were used, and ${hiding.length} of them put ` +
171
+ 'something out of sight. What a recipient sees is not what this message says it is.'
172
+ : `${notes.length} unusual propert(ies) were used. None of them hides anything by ` +
173
+ 'itself, but they are the ones that can.');
174
+ }
175
+ if (beyond.length > 0) {
176
+ lines.push(
177
+ // A count, not a list: a quoted newsletter repeats such things dozens of
178
+ // times, and a list here is how the question once outgrew its dialog.
179
+ `The stored draft carries ${beyond.length} thing(s) a message written here may not ` +
180
+ 'contain, listed on the preview page. It is sent as it was stored, without that check.');
181
+ }
182
+ lines.push('Open the preview and look before answering. It names every one, its value and where it sat.');
149
183
  }
150
184
  if (previewUrl) {
151
185
  lines.push('', 'Read it as the recipient will see it, with every address in full:', ` ${previewUrl}`);
@@ -170,15 +204,17 @@ function countsFor(draft) {
170
204
  const urls = describeUrls(draft);
171
205
  const hidden = hiddenTextOf(draft);
172
206
  const files = describeAttachments(draft);
173
- const quoted = summariseQuote(draft);
174
207
  const parts = [];
175
208
  if (urls.length)
176
209
  parts.push(`${urls.length} address(es)`);
177
210
  if (hidden.length)
178
211
  parts.push(`${hidden.length} piece(s) of text the body does not show`);
212
+ // "file(s)", not "carried file(s)": the line already begins "It carries".
179
213
  if (files.length)
180
- parts.push(`${files.length} carried file(s)`);
181
- if (quoted)
214
+ parts.push(`${files.length} file(s)`);
215
+ // Seen in the body as well as apart from it, so a stored draft and a plain
216
+ // text reply say so too, see carriesQuote.
217
+ if (carriesQuote(draft))
182
218
  parts.push('a quoted message');
183
219
  if (!parts.length)
184
220
  return undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"confirm.js","sourceRoot":"","sources":["../../src/tools/confirm.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"confirm.js","sourceRoot":"","sources":["../../src/tools/confirm.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,9 @@
11
11
  */
12
12
  import type { McpServer } from '@modelcontextprotocol/server';
13
13
  import type { Connection } from '../bridge/connection.js';
14
+ import { type DraftResult } from '../mail/drafts.js';
15
+ /** Written into every answer that created or changed a draft. */
16
+ export declare function describeDraft(draft: DraftResult, what: string): string;
14
17
  /**
15
18
  * Where the message comes from.
16
19
  *
@@ -18,7 +18,7 @@ import { describeFailure, withSignIn } from './failures.js';
18
18
  import { track } from '../in-flight.js';
19
19
  const ok = (text) => ({ content: [{ type: 'text', text }] });
20
20
  /** Written into every answer that created or changed a draft. */
21
- function describeDraft(draft, what) {
21
+ export function describeDraft(draft, what) {
22
22
  const lines = [
23
23
  `${what} in "${DRAFTS}".`,
24
24
  '',
@@ -26,10 +26,20 @@ function describeDraft(draft, what) {
26
26
  describeRecipients(draft),
27
27
  `Id: ${draft.messageId}`,
28
28
  ];
29
- if (draft.carriedAttachments?.length) {
30
- lines.push('', `The original carried ${draft.carriedAttachments.length} attachment(s): ` +
31
- `${draft.carriedAttachments.join(', ')}. The whole original message is attached to the ` +
32
- 'draft, so nothing of it is lost.');
29
+ if (draft.attachedOriginal) {
30
+ // The attached file and the attachments inside it, named apart. Up to
31
+ // 0.4.11 this said "The original carried 1 attachment(s)" and named the
32
+ // file this server had added, so an assistant reported one attachment
33
+ // where the original held several.
34
+ const { filename, carries } = draft.attachedOriginal;
35
+ lines.push('', `The original is attached as one file, ${filename}, so nothing of it is lost.` +
36
+ (carries.length
37
+ ? ` Inside it travel its own ${carries.length} attachment(s): ${carries.join(', ')}.`
38
+ : ''));
39
+ }
40
+ if (draft.keptFiles?.length) {
41
+ lines.push('', `${draft.keptFiles.length} file(s) stored with the draft stay with it: ` +
42
+ `${draft.keptFiles.join(', ')}.`);
33
43
  }
34
44
  lines.push('', 'Nothing has been sent. Use send_draft when the message is ready; that asks the user to ' +
35
45
  'confirm before anything leaves the machine.');
@@ -92,7 +102,9 @@ export function registerDraftTools(server, connection, readOnly, from) {
92
102
  server.registerTool('update_draft', {
93
103
  title: 'Change a draft',
94
104
  description: 'Replaces a draft with a changed version, keeping the same id. Fields that are not given ' +
95
- 'are carried over, including the blind copies, which drafts written here keep. Only ' +
105
+ 'are carried over, including the blind copies, which drafts written here keep. Files ' +
106
+ 'stored with the draft, a forwarded original among them, stay with it whatever happens ' +
107
+ 'to the body, and giving neither text nor html keeps the stored body exactly as it is. Only ' +
96
108
  'messages in the Drafts mailbox that carry the draft flag can be changed this way. ' +
97
109
  PLAIN_TEXT_NOTE + ' ' + MARKUP_NOTE + ' ' + UTF8_NOTE,
98
110
  inputSchema: z.object({
@@ -164,9 +176,14 @@ export function registerDraftTools(server, connection, readOnly, from) {
164
176
  mailbox: z.string().optional().describe('The mailbox the original is in, if known.'),
165
177
  }),
166
178
  annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false },
167
- }, async ({ messageId, text, replyAll, mailbox, html }, ctx) => track(() => withSignIn(ctx, async () => {
179
+ }, async ({ messageId, text, replyAll, mailbox, html, markupLevel }, ctx) => track(() => withSignIn(ctx, async () => {
168
180
  try {
169
- const draft = await replyDraft(connection, readOnly(), requireFrom(from), messageId, text, { all: replyAll, ...(mailbox ? { mailbox } : {}), ...(html !== undefined ? { html } : {}) });
181
+ const draft = await replyDraft(connection, readOnly(), requireFrom(from), messageId, text, {
182
+ all: replyAll,
183
+ ...(mailbox ? { mailbox } : {}),
184
+ ...(html !== undefined ? { html } : {}),
185
+ ...(markupLevel !== undefined ? { markupLevel } : {}),
186
+ });
170
187
  return ok(describeDraft(draft, 'Reply written'));
171
188
  }
172
189
  catch (error) {
@@ -203,9 +220,13 @@ export function registerDraftTools(server, connection, readOnly, from) {
203
220
  mailbox: z.string().optional().describe('The mailbox the original is in, if known.'),
204
221
  }),
205
222
  annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false },
206
- }, async ({ messageId, to, text, mailbox, html }, ctx) => track(() => withSignIn(ctx, async () => {
223
+ }, async ({ messageId, to, text, mailbox, html, markupLevel }, ctx) => track(() => withSignIn(ctx, async () => {
207
224
  try {
208
- const draft = await forwardDraft(connection, readOnly(), requireFrom(from), messageId, to, text, { ...(mailbox ? { mailbox } : {}), ...(html !== undefined ? { html } : {}) });
225
+ const draft = await forwardDraft(connection, readOnly(), requireFrom(from), messageId, to, text, {
226
+ ...(mailbox ? { mailbox } : {}),
227
+ ...(html !== undefined ? { html } : {}),
228
+ ...(markupLevel !== undefined ? { markupLevel } : {}),
229
+ });
209
230
  return ok(describeDraft(draft, 'Forward written'));
210
231
  }
211
232
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"drafts.js","sourceRoot":"","sources":["../../src/tools/drafts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"drafts.js","sourceRoot":"","sources":["../../src/tools/drafts.ts"],"names":[],"mappings":"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"}
@@ -46,6 +46,14 @@ export declare function formatMessage(m: ParsedMessage & {
46
46
  * Reports the elapsed time, so a caller can tell a cheap criterion from an
47
47
  * expensive one instead of guessing why an answer took seconds.
48
48
  */
49
+ /**
50
+ * What a search could not cover, said in every answer it applies to.
51
+ *
52
+ * A search that found nothing reads the same whether nothing is there or the
53
+ * search could not look, and an assistant reports either as "not there". So the
54
+ * limits are said, not left for anyone to guess.
55
+ */
56
+ export declare function searchNotes(result: SearchResult): string[];
49
57
  export declare function formatSearch(result: SearchResult): string;
50
58
  /** Wraps arbitrary foreign text, for example an attachment's content. */
51
59
  export declare function wrapUntrusted(text: string, description: string): string;