@aaronsb/google-workspace-mcp 4.6.1 → 4.7.0

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.
@@ -0,0 +1,116 @@
1
+ /**
2
+ * Hydration — turn the bare ids Gmail's list methods return into rows a reader can use.
3
+ *
4
+ * `messages.list` and `drafts.list` return ids and nothing else, so every row costs one
5
+ * `messages.get`. Shared by search, triage, listDrafts and the filter preview.
6
+ */
7
+ import { call } from '../../google/client.js';
8
+ import { GoogleApiError } from '../../google/errors.js';
9
+ /**
10
+ * Hydrate message IDs with metadata (From, Subject, Date, snippet).
11
+ * Reused from the original email handler.
12
+ */
13
+ export async function hydrateMessages(messageIds, account) {
14
+ // Google throttles per USER, not per process, so this burst competes with every
15
+ // other client signed in to the same account. Firing all 50 at once is the surest
16
+ // way to be told no. A modest window is barely slower — the calls still overlap —
17
+ // and it is far less likely to be throttled in the first place.
18
+ return mapLimited(messageIds, HYDRATE_CONCURRENCY, async (msg) => {
19
+ try {
20
+ const data = await call('gmail', 'users.messages.get', {
21
+ userId: 'me',
22
+ id: msg.id,
23
+ format: 'metadata',
24
+ metadataHeaders: ['From', 'Subject', 'Date'],
25
+ }, { account });
26
+ const headers = (data.payload?.headers ?? []);
27
+ const getHeader = (name) => headers.find(h => h.name.toLowerCase() === name.toLowerCase())?.value;
28
+ return {
29
+ id: data.id,
30
+ threadId: data.threadId,
31
+ from: getHeader('from'),
32
+ subject: getHeader('subject'),
33
+ date: getHeader('date'),
34
+ snippet: data.snippet,
35
+ };
36
+ }
37
+ catch (err) {
38
+ // A message we could not READ must never look like a message with NOTHING IN IT.
39
+ //
40
+ // This used to `catch { return { id: msg.id } }` — every failure became a row
41
+ // with no sender, no subject and no date, indistinguishable from a genuinely
42
+ // empty message. Under rate limiting the tail of an inbox silently rendered as
43
+ // blank lines, and the tool reported success while showing the user nothing.
44
+ //
45
+ // The client retries a 429 now, so reaching here means it did not recover. Say
46
+ // so, in the row, where the person reading the list will actually see it.
47
+ return {
48
+ id: msg.id,
49
+ error: err instanceof GoogleApiError
50
+ ? `could not load (${err.status}${err.reason ? ' ' + err.reason : ''})`
51
+ : `could not load (${err instanceof Error ? err.message : String(err)})`,
52
+ };
53
+ }
54
+ });
55
+ }
56
+ /** Concurrent, but bounded. */
57
+ const HYDRATE_CONCURRENCY = 8;
58
+ /**
59
+ * Hydrate draft resources with message metadata (From, To, Subject, Date, snippet).
60
+ *
61
+ * users.drafts.list returns one bare {id: draftId, message: {id, threadId}} per draft —
62
+ * enough to identify a draft, nothing to tell drafts apart. Each draft's message is
63
+ * fetched (metadata format, exactly like the search/triage hydration) and the DRAFT id
64
+ * stays on the row, because it — not the message id — is what deleteDraft addresses.
65
+ */
66
+ export async function hydrateDrafts(drafts, account) {
67
+ return mapLimited(drafts, HYDRATE_CONCURRENCY, async (draft) => {
68
+ const draftId = draft.id;
69
+ const messageId = draft.message?.id;
70
+ if (!messageId) {
71
+ return { draftId, error: 'draft carries no message id' };
72
+ }
73
+ try {
74
+ const data = await call('gmail', 'users.messages.get', {
75
+ userId: 'me',
76
+ id: messageId,
77
+ format: 'metadata',
78
+ metadataHeaders: ['From', 'To', 'Subject', 'Date'],
79
+ }, { account });
80
+ const headers = (data.payload?.headers ?? []);
81
+ const getHeader = (name) => headers.find(h => h.name.toLowerCase() === name.toLowerCase())?.value;
82
+ return {
83
+ draftId,
84
+ messageId: data.id,
85
+ threadId: data.threadId,
86
+ to: getHeader('to'),
87
+ from: getHeader('from'),
88
+ subject: getHeader('subject'),
89
+ date: getHeader('date'),
90
+ snippet: data.snippet,
91
+ };
92
+ }
93
+ catch (err) {
94
+ return {
95
+ draftId,
96
+ messageId,
97
+ error: err instanceof GoogleApiError
98
+ ? `could not load (${err.status}${err.reason ? ' ' + err.reason : ''})`
99
+ : `could not load (${err instanceof Error ? err.message : String(err)})`,
100
+ };
101
+ }
102
+ });
103
+ }
104
+ export async function mapLimited(items, limit, fn) {
105
+ const results = new Array(items.length);
106
+ let next = 0;
107
+ const workers = Array.from({ length: Math.min(limit, items.length) }, async () => {
108
+ while (next < items.length) {
109
+ const i = next++;
110
+ results[i] = await fn(items[i]); // fn never rejects — it catches internally
111
+ }
112
+ });
113
+ await Promise.all(workers);
114
+ return results;
115
+ }
116
+ //# sourceMappingURL=hydrate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hydrate.js","sourceRoot":"","sources":["../../../src/services/gmail/hydrate.ts"],"names":[],"mappings":"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"}
@@ -9,119 +9,13 @@
9
9
  import { mkdir, writeFile } from 'node:fs/promises';
10
10
  import { dirname } from 'node:path';
11
11
  import { call } from '../../google/client.js';
12
- import { GoogleApiError } from '../../google/errors.js';
13
12
  import { formatEmailList, formatEmailDetail, extractBodyFromPayload, extractAttachments, decodeSnippet, truncate, formatShortDate } from '../../server/formatting/markdown.js';
14
- import { requireString } from '../../server/handlers/validate.js';
13
+ import { requireString, clamp } from '../../server/handlers/validate.js';
15
14
  import { ensureWorkspaceDir, resolveWorkspacePath, verifyPathSafety } from '../../executor/workspace.js';
16
15
  import { handleGetAttachment, handleViewAttachment } from './attachments.js';
16
+ import { hydrateMessages, hydrateDrafts } from './hydrate.js';
17
+ import { handleListFilters, handleGetFilter, handlePreviewFilter, handleCreateFilter, handleUpdateFilter, handleDeleteFilter, } from './filters.js';
17
18
  import { sendMail, replyMail, forwardMail } from './mail.js';
18
- /**
19
- * Hydrate message IDs with metadata (From, Subject, Date, snippet).
20
- * Reused from the original email handler.
21
- */
22
- async function hydrateMessages(messageIds, account) {
23
- // Google throttles per USER, not per process, so this burst competes with every
24
- // other client signed in to the same account. Firing all 50 at once is the surest
25
- // way to be told no. A modest window is barely slower — the calls still overlap —
26
- // and it is far less likely to be throttled in the first place.
27
- return mapLimited(messageIds, HYDRATE_CONCURRENCY, async (msg) => {
28
- try {
29
- const data = await call('gmail', 'users.messages.get', {
30
- userId: 'me',
31
- id: msg.id,
32
- format: 'metadata',
33
- metadataHeaders: ['From', 'Subject', 'Date'],
34
- }, { account });
35
- const headers = (data.payload?.headers ?? []);
36
- const getHeader = (name) => headers.find(h => h.name.toLowerCase() === name.toLowerCase())?.value;
37
- return {
38
- id: data.id,
39
- threadId: data.threadId,
40
- from: getHeader('from'),
41
- subject: getHeader('subject'),
42
- date: getHeader('date'),
43
- snippet: data.snippet,
44
- };
45
- }
46
- catch (err) {
47
- // A message we could not READ must never look like a message with NOTHING IN IT.
48
- //
49
- // This used to `catch { return { id: msg.id } }` — every failure became a row
50
- // with no sender, no subject and no date, indistinguishable from a genuinely
51
- // empty message. Under rate limiting the tail of an inbox silently rendered as
52
- // blank lines, and the tool reported success while showing the user nothing.
53
- //
54
- // The client retries a 429 now, so reaching here means it did not recover. Say
55
- // so, in the row, where the person reading the list will actually see it.
56
- return {
57
- id: msg.id,
58
- error: err instanceof GoogleApiError
59
- ? `could not load (${err.status}${err.reason ? ' ' + err.reason : ''})`
60
- : `could not load (${err instanceof Error ? err.message : String(err)})`,
61
- };
62
- }
63
- });
64
- }
65
- /** Concurrent, but bounded. */
66
- const HYDRATE_CONCURRENCY = 8;
67
- /**
68
- * Hydrate draft resources with message metadata (From, To, Subject, Date, snippet).
69
- *
70
- * users.drafts.list returns one bare {id: draftId, message: {id, threadId}} per draft —
71
- * enough to identify a draft, nothing to tell drafts apart. Each draft's message is
72
- * fetched (metadata format, exactly like the search/triage hydration) and the DRAFT id
73
- * stays on the row, because it — not the message id — is what deleteDraft addresses.
74
- */
75
- async function hydrateDrafts(drafts, account) {
76
- return mapLimited(drafts, HYDRATE_CONCURRENCY, async (draft) => {
77
- const draftId = draft.id;
78
- const messageId = draft.message?.id;
79
- if (!messageId) {
80
- return { draftId, error: 'draft carries no message id' };
81
- }
82
- try {
83
- const data = await call('gmail', 'users.messages.get', {
84
- userId: 'me',
85
- id: messageId,
86
- format: 'metadata',
87
- metadataHeaders: ['From', 'To', 'Subject', 'Date'],
88
- }, { account });
89
- const headers = (data.payload?.headers ?? []);
90
- const getHeader = (name) => headers.find(h => h.name.toLowerCase() === name.toLowerCase())?.value;
91
- return {
92
- draftId,
93
- messageId: data.id,
94
- threadId: data.threadId,
95
- to: getHeader('to'),
96
- from: getHeader('from'),
97
- subject: getHeader('subject'),
98
- date: getHeader('date'),
99
- snippet: data.snippet,
100
- };
101
- }
102
- catch (err) {
103
- return {
104
- draftId,
105
- messageId,
106
- error: err instanceof GoogleApiError
107
- ? `could not load (${err.status}${err.reason ? ' ' + err.reason : ''})`
108
- : `could not load (${err instanceof Error ? err.message : String(err)})`,
109
- };
110
- }
111
- });
112
- }
113
- async function mapLimited(items, limit, fn) {
114
- const results = new Array(items.length);
115
- let next = 0;
116
- const workers = Array.from({ length: Math.min(limit, items.length) }, async () => {
117
- while (next < items.length) {
118
- const i = next++;
119
- results[i] = await fn(items[i]); // fn never rejects — it catches internally
120
- }
121
- });
122
- await Promise.all(workers);
123
- return results;
124
- }
125
19
  /** "Tue, 19 Aug 2026 ..." -> "2026-08-19"; '' when the header is not parseable. */
126
20
  const MONTH_TO_MM = {
127
21
  Jan: '01', Feb: '02', Mar: '03', Apr: '04', May: '05', Jun: '06',
@@ -281,26 +175,81 @@ function formatThreadDetail(data) {
281
175
  },
282
176
  };
283
177
  }
178
+ /** Largest page `messages.list` returns; the ids-only page size. */
179
+ const IDS_ONLY_PAGE = 500;
180
+ function isIdsOnly(ctx) {
181
+ return ctx.operation === 'search' && (ctx.params.idsOnly === true || ctx.params.idsOnly === 'true');
182
+ }
183
+ /** The paging fields of a Gmail list response, kept through hydration. */
184
+ function pagingFrom(raw) {
185
+ return {
186
+ ...(typeof raw?.nextPageToken === 'string' && raw.nextPageToken ? { nextPageToken: raw.nextPageToken } : {}),
187
+ ...(typeof raw?.resultSizeEstimate === 'number' ? { resultSizeEstimate: raw.resultSizeEstimate } : {}),
188
+ };
189
+ }
190
+ /**
191
+ * Say when a list stopped before the end (ADR-309).
192
+ *
193
+ * A full page and a complete result look identical otherwise: 50 rows of 50 and 50 rows
194
+ * of 400 render the same, and the reader sizes the problem from the wrong one.
195
+ */
196
+ function withPaging(response, data, ctx) {
197
+ const raw = (data ?? {});
198
+ const nextPageToken = typeof raw.nextPageToken === 'string' ? raw.nextPageToken : '';
199
+ if (!nextPageToken)
200
+ return response;
201
+ const estimate = typeof raw.resultSizeEstimate === 'number' ? raw.resultSizeEstimate : undefined;
202
+ const sized = estimate !== undefined
203
+ ? ` Google estimates about ${estimate} in total; that figure is an estimate and is often wrong.`
204
+ : '';
205
+ return {
206
+ text: `${response.text}\n\nMore results exist.${sized} Call \`${ctx.operation}\` again with the same parameters and pageToken: ${nextPageToken}`,
207
+ refs: { ...response.refs, nextPageToken, ...(estimate !== undefined ? { resultSizeEstimate: estimate } : {}) },
208
+ };
209
+ }
210
+ /** An ids-only search page: the ids, comma-separated, ready for bulk_operations batch. */
211
+ function formatIdList(data) {
212
+ const ids = (data?.ids ?? []);
213
+ if (ids.length === 0)
214
+ return { text: 'No messages found.', refs: { count: 0, ids: [] } };
215
+ return {
216
+ text: `## Message ids (${ids.length})\n\n${ids.join(',')}`,
217
+ refs: { count: ids.length, ids },
218
+ };
219
+ }
284
220
  export const gmailPatch = {
221
+ beforeExecute: {
222
+ // An ids-only page costs one call however long it is, so it pages at the API's own
223
+ // limit rather than at the cap that exists to bound hydration.
224
+ search: (callParams, ctx) => isIdsOnly(ctx)
225
+ ? { ...callParams, maxResults: clamp(ctx.params.maxResults, IDS_ONLY_PAGE, IDS_ONLY_PAGE) }
226
+ : callParams,
227
+ },
285
228
  afterExecute: {
286
229
  // triage IS search, with a different default query. Same raw Google shape
287
230
  // (messages.list -> bare ids), same hydrate, same formatter.
288
231
  triage: async (result, ctx) => gmailPatch.afterExecute.search(result, ctx),
289
232
  search: async (result, ctx) => {
290
- // messages.list returns bare IDs — hydrate with metadata
233
+ // messages.list returns bare IDs. idsOnly hands them back as they are, which is what
234
+ // makes walking thousands of matches cheap; otherwise each row is hydrated.
291
235
  const raw = result;
292
236
  const ids = (raw?.messages ?? []);
237
+ const paging = pagingFrom(raw);
238
+ if (isIdsOnly(ctx)) {
239
+ return { ids: ids.map((m) => m.id), idsOnly: true, ...paging };
240
+ }
293
241
  if (ids.length === 0) {
294
242
  // Preserve resultSizeEstimate so formatters can distinguish
295
243
  // "search ran, no matches" from unexpected empty responses
296
244
  return {
297
245
  messages: [],
246
+ ...paging,
298
247
  resultSizeEstimate: raw?.resultSizeEstimate ?? 0,
299
248
  query: ctx.params.query ?? '',
300
249
  };
301
250
  }
302
251
  const messages = await hydrateMessages(ids, ctx.account);
303
- return { messages, resultSizeEstimate: raw?.resultSizeEstimate };
252
+ return { messages, ...paging };
304
253
  },
305
254
  // users.drafts.list returns bare draft resources ({id, message:{id}}) — hydrate
306
255
  // each with metadata so listDrafts shows recipient/subject/date, not just ids.
@@ -308,10 +257,10 @@ export const gmailPatch = {
308
257
  const raw = result;
309
258
  const drafts = (raw?.drafts ?? []);
310
259
  if (drafts.length === 0) {
311
- return { drafts: [], resultSizeEstimate: raw?.resultSizeEstimate ?? 0 };
260
+ return { drafts: [], ...pagingFrom(raw), resultSizeEstimate: raw?.resultSizeEstimate ?? 0 };
312
261
  }
313
262
  const hydrated = await hydrateDrafts(drafts, ctx.account);
314
- return { drafts: hydrated, resultSizeEstimate: raw?.resultSizeEstimate };
263
+ return { drafts: hydrated, ...pagingFrom(raw) };
315
264
  },
316
265
  },
317
266
  formatList: (data, ctx) => {
@@ -319,11 +268,11 @@ export const gmailPatch = {
319
268
  case 'labels':
320
269
  return formatLabelList(data);
321
270
  case 'threads':
322
- return formatThreadList(data);
271
+ return withPaging(formatThreadList(data), data, ctx);
323
272
  case 'listDrafts':
324
- return formatDraftList(data);
273
+ return withPaging(formatDraftList(data), data, ctx);
325
274
  default:
326
- return formatEmailList(data);
275
+ return withPaging(isIdsOnly(ctx) ? formatIdList(data) : formatEmailList(data), data, ctx);
327
276
  }
328
277
  },
329
278
  formatDetail: (data, ctx) => {
@@ -492,6 +441,13 @@ export const gmailPatch = {
492
441
  },
493
442
  getAttachment: handleGetAttachment,
494
443
  viewAttachment: handleViewAttachment,
444
+ // Filters — the lifecycle and its preview gate live in filters.ts (ADR-309).
445
+ filters: handleListFilters,
446
+ getFilter: handleGetFilter,
447
+ previewFilter: handlePreviewFilter,
448
+ createFilter: handleCreateFilter,
449
+ updateFilter: handleUpdateFilter,
450
+ deleteFilter: handleDeleteFilter,
495
451
  /**
496
452
  * Delete a draft — permanently discard an unsent message.
497
453
  *
@@ -1 +1 @@
1
- {"version":3,"file":"patch.js","sourceRoot":"","sources":["../../../src/services/gmail/patch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"patch.js","sourceRoot":"","sources":["../../../src/services/gmail/patch.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- export declare const VERSION = "4.6.1";
1
+ export declare const VERSION = "4.7.0";
package/build/version.js CHANGED
@@ -1,3 +1,3 @@
1
1
  // Auto-generated by `npm run version-stamp`. Do not edit manually.
2
- export const VERSION = '4.6.1';
2
+ export const VERSION = '4.7.0';
3
3
  //# sourceMappingURL=version.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aaronsb/google-workspace-mcp",
3
- "version": "4.6.1",
3
+ "version": "4.7.0",
4
4
  "license": "Apache-2.0",
5
5
  "mcpName": "io.github.aaronsb/google-workspace",
6
6
  "description": "MCP server for Google Workspace with progressive context disclosure and multi-account orchestration",