@ni-c/imap-mcp 0.2.0 → 0.3.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.
Files changed (52) hide show
  1. package/README.md +122 -31
  2. package/dist/analyze.d.ts +22 -3
  3. package/dist/analyze.js +202 -23
  4. package/dist/analyze.js.map +1 -1
  5. package/dist/attachments.d.ts +25 -0
  6. package/dist/attachments.js +20 -2
  7. package/dist/attachments.js.map +1 -1
  8. package/dist/audit.d.ts +7 -0
  9. package/dist/audit.js +11 -3
  10. package/dist/audit.js.map +1 -1
  11. package/dist/config.d.ts +21 -0
  12. package/dist/config.js +44 -5
  13. package/dist/config.js.map +1 -1
  14. package/dist/errors.js.map +1 -1
  15. package/dist/imap.js.map +1 -1
  16. package/dist/index.js +32 -5
  17. package/dist/index.js.map +1 -1
  18. package/dist/output-schema.d.ts +62 -0
  19. package/dist/output-schema.js +81 -0
  20. package/dist/output-schema.js.map +1 -0
  21. package/dist/resources.d.ts +1 -1
  22. package/dist/resources.js +1 -1
  23. package/dist/resources.js.map +1 -1
  24. package/dist/result.d.ts +32 -5
  25. package/dist/result.js +128 -24
  26. package/dist/result.js.map +1 -1
  27. package/dist/schema.d.ts +13 -1
  28. package/dist/schema.js +20 -2
  29. package/dist/schema.js.map +1 -1
  30. package/dist/server.d.ts +1 -1
  31. package/dist/server.js +30 -5
  32. package/dist/server.js.map +1 -1
  33. package/dist/tools/annotations.d.ts +32 -0
  34. package/dist/tools/annotations.js +33 -0
  35. package/dist/tools/annotations.js.map +1 -0
  36. package/dist/tools/catalogue.d.ts +2 -2
  37. package/dist/tools/read.d.ts +1 -1
  38. package/dist/tools/read.js +345 -50
  39. package/dist/tools/read.js.map +1 -1
  40. package/dist/tools/write.d.ts +3 -3
  41. package/dist/tools/write.js +165 -38
  42. package/dist/tools/write.js.map +1 -1
  43. package/package.json +15 -11
  44. package/dist/approval.d.ts +0 -45
  45. package/dist/approval.js +0 -69
  46. package/dist/approval.js.map +0 -1
  47. package/dist/confirm.d.ts +0 -59
  48. package/dist/confirm.js +0 -92
  49. package/dist/confirm.js.map +0 -1
  50. package/dist/tool-filter.d.ts +0 -45
  51. package/dist/tool-filter.js +0 -171
  52. package/dist/tool-filter.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"read.js","sourceRoot":"","sources":["../../src/tools/read.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"read.js","sourceRoot":"","sources":["../../src/tools/read.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
1
+ import type { McpServer } from '@modelcontextprotocol/server';
2
+ import type { Approver, ConfirmationStore } from 'mcp-approval';
2
3
  import type { Config } from '../config.js';
3
- import { type ConfirmationStore } from '../confirm.js';
4
4
  import { ImapClient } from '../imap.js';
5
- export declare function registerWriteTools(server: McpServer, client: ImapClient, config: Config, confirmations: ConfirmationStore): void;
5
+ export declare function registerWriteTools(server: McpServer, client: ImapClient, config: Config, confirmations: ConfirmationStore, approval: Approver): void;
@@ -1,13 +1,31 @@
1
1
  import { z } from 'zod';
2
- import { requestApproval } from '../approval.js';
2
+ import { confirmationPrompt, setResourceKey } from 'mcp-approval';
3
+ import { addressListParam, confirmTokenParam, flagListParam, mailboxParam, optionalMailboxParam, uidListParam, uidParam, } from '../schema.js';
4
+ import { escapeInvisible, stripInvisible } from '../analyze.js';
3
5
  import { audit } from '../audit.js';
4
- import { confirmationPrompt, setResourceKey, } from '../confirm.js';
5
6
  import { ToolInputError } from '../errors.js';
6
7
  import { withTimeout } from '../imap.js';
7
8
  import { buildDraft } from '../draft.js';
8
- import { jsonResult, run, textResult } from '../result.js';
9
- import { addressListParam, confirmTokenParam, flagListParam, mailboxParam, optionalMailboxParam, uidListParam, uidParam, } from '../schema.js';
10
- export function registerWriteTools(server, client, config, confirmations) {
9
+ import { errorResult, jsonResult, run } from '../result.js';
10
+ /**
11
+ * A caller-chosen value as the person deciding should see it.
12
+ *
13
+ * mcp-approval already keeps these off the server's own sentence and onto their
14
+ * own labelled line, which answers a name that reads like an instruction. It
15
+ * cannot answer a name that reads like a *different name*: `Archive` and
16
+ * `Archive<U+200B>` occupy the same space on a screen, so a dialog that renders
17
+ * the second one verbatim asks about the folder the person recognises and then
18
+ * acts on the one they do not. Here the invisible characters are removed from
19
+ * what is shown and spelled out beside it, so the answer is to the question
20
+ * that was actually asked.
21
+ */
22
+ function shownValue(raw) {
23
+ const visible = stripInvisible(raw);
24
+ return visible === raw
25
+ ? raw
26
+ : `${visible} — as written: ${escapeInvisible(raw)}`;
27
+ }
28
+ export function registerWriteTools(server, client, config, confirmations, approval) {
11
29
  server.registerTool('set_message_flags', {
12
30
  title: 'Add or remove message flags',
13
31
  description: 'Adds or removes IMAP flags and keywords on one or more messages: ' +
@@ -17,15 +35,29 @@ export function registerWriteTools(server, client, config, confirmations) {
17
35
  'here; use delete_messages, which asks first. Removing \\Deleted is ' +
18
36
  'allowed, since that undoes one. Removing the new-mail keyword makes ' +
19
37
  'those messages show up in list_new_messages again.',
20
- inputSchema: {
38
+ inputSchema: z.object({
21
39
  uids: uidListParam,
22
40
  mailbox: optionalMailboxParam,
23
41
  add: flagListParam.optional().describe('Flags or keywords to set.'),
24
42
  remove: flagListParam
25
43
  .optional()
26
44
  .describe('Flags or keywords to clear.'),
45
+ }),
46
+ annotations: {
47
+ // A flag is a marker and comes back off, so this is not destructive.
48
+ // freshrss-mcp answers the opposite for mark_articles and is right
49
+ // to: FreshRSS keeps no record of what was unread, IMAP does.
50
+ readOnlyHint: false,
51
+ destructiveHint: false,
52
+ idempotentHint: true,
53
+ openWorldHint: false,
27
54
  },
28
- annotations: { readOnlyHint: false, destructiveHint: false },
55
+ outputSchema: z.object({
56
+ mailbox: z.string(),
57
+ uids: z.array(z.number().int()),
58
+ added: z.array(z.string()),
59
+ removed: z.array(z.string()),
60
+ }),
29
61
  }, async ({ uids, mailbox, add, remove }) => run(async () => {
30
62
  if (add === undefined && remove === undefined) {
31
63
  throw new ToolInputError('imap-mcp: give at least one of "add" or "remove".');
@@ -69,9 +101,10 @@ export function registerWriteTools(server, client, config, confirmations) {
69
101
  server.registerTool('move_messages', {
70
102
  title: 'Move or copy messages',
71
103
  description: 'Moves messages to another mailbox, or copies them when mode is ' +
72
- '"copy". Both require confirmation: call once to receive a token, ' +
104
+ '"copy". Both ask the user to confirm; where the client cannot show a ' +
105
+ 'prompt, they fall back to a two-call token — call once to receive it, ' +
73
106
  'then again with that token and the same UID list and destination.',
74
- inputSchema: {
107
+ inputSchema: z.object({
75
108
  uids: uidListParam,
76
109
  destination: mailboxParam.describe('Mailbox the messages end up in, exactly as listed by list_mailboxes.'),
77
110
  mailbox: optionalMailboxParam,
@@ -80,9 +113,23 @@ export function registerWriteTools(server, client, config, confirmations) {
80
113
  .optional()
81
114
  .describe('"move" (default) removes the originals, "copy" keeps them.'),
82
115
  confirm_token: confirmTokenParam,
116
+ }),
117
+ annotations: {
118
+ // Destructive: the messages keep their content but get new UIDs, so
119
+ // every reference to the old ones stops working. Copying into a shared
120
+ // folder is the irreversible half — it cannot be unread.
121
+ readOnlyHint: false,
122
+ destructiveHint: true,
123
+ idempotentHint: false,
124
+ openWorldHint: false,
83
125
  },
84
- annotations: { readOnlyHint: false, destructiveHint: false },
85
- }, async ({ uids, destination, mailbox, mode, confirm_token }) => run(async () => {
126
+ outputSchema: z.object({
127
+ action: z.enum(['moved', 'copied']),
128
+ source: z.string(),
129
+ destination: z.string(),
130
+ uids: z.array(z.number().int()),
131
+ }),
132
+ }, async ({ uids, destination, mailbox, mode, confirm_token }, mcp) => run(async () => {
86
133
  const copying = mode === 'copy';
87
134
  const source = mailbox ?? client.defaultMailbox;
88
135
  // Copying is confirmed as well. The old rule — a token for "move",
@@ -93,18 +140,35 @@ export function registerWriteTools(server, client, config, confirmations) {
93
140
  // that folder. Disclosure is the irreversible part, and copying is the
94
141
  // mode that does it while leaving no trace in the source folder.
95
142
  //
143
+ // Which is also why this now goes the whole way rather than only to the
144
+ // token: the token proves the call was made twice, and a disclosure
145
+ // that cannot be taken back is exactly the case where the model
146
+ // agreeing with itself is not enough.
147
+ //
96
148
  // The key covers the exact UID set and both mailboxes: a confirmation
97
149
  // for [1] must not execute [1, 2], where the model picked the second
98
150
  // list, and one for Archive must not execute against Public/Shared.
99
- const key = setResourceKey(`${copying ? 'copy_messages' : 'move_messages'}:${source}:${destination}`, uids.map(String));
100
- if (!confirmations.consume(key, confirm_token)) {
101
- return textResult(confirmationPrompt(`${copying ? 'copy' : 'move'} ${uids.length} message(s) between mailboxes`, confirmations.issue(key), confirmations.ttlMinutes, copying
151
+ const outcome = await approval.requestApproval(server, mcp, confirmations, {
152
+ what: `${copying ? 'copy' : 'move'} ${uids.length} message(s) between mailboxes`,
153
+ consequence: copying
102
154
  ? 'Everyone with access to the destination can read the copies, and taking them back does not unsee them.'
103
- : 'The messages keep their content but get new UIDs, so the current ones stop working.', [
104
- { label: 'From', value: source },
105
- { label: 'To', value: destination },
106
- ]));
155
+ : 'The messages keep their content but get new UIDs, so the current ones stop working.',
156
+ resourceKey: setResourceKey(`${copying ? 'copy_messages' : 'move_messages'}:${source}:${destination}`, uids.map(String)),
157
+ token: confirm_token,
158
+ details: [
159
+ { label: 'From', value: shownValue(source) },
160
+ { label: 'To', value: shownValue(destination) },
161
+ ],
162
+ toolName: copying ? 'copy_messages' : 'move_messages',
163
+ });
164
+ if (outcome.decision === 'rejected') {
165
+ throw new ToolInputError(`imap-mcp: ${outcome.reason}`);
107
166
  }
167
+ if (outcome.decision === 'declined') {
168
+ throw new ToolInputError('imap-mcp: the user declined. Nothing was moved.');
169
+ }
170
+ if (outcome.decision === 'pending')
171
+ return outcome.result;
108
172
  return client.withMailbox(mailbox, false, async (connection) => {
109
173
  if (copying) {
110
174
  await withTimeout(connection.messageCopy(uids, destination, { uid: true }), 'COPY');
@@ -131,23 +195,42 @@ export function registerWriteTools(server, client, config, confirmations) {
131
195
  'most servers this does not go to Trash — move them there instead if ' +
132
196
  'that is what is meant. Asks the user to confirm; where the client ' +
133
197
  'cannot show a prompt, it falls back to a two-call token.',
134
- inputSchema: {
198
+ inputSchema: z.object({
135
199
  uids: uidListParam,
136
200
  mailbox: optionalMailboxParam,
137
201
  confirm_token: confirmTokenParam,
202
+ }),
203
+ annotations: {
204
+ // Expunged, not moved to Trash. Idempotent by the specification's
205
+ // wording — the second call finds nothing, and the world is the same.
206
+ readOnlyHint: false,
207
+ destructiveHint: true,
208
+ idempotentHint: true,
209
+ openWorldHint: false,
138
210
  },
139
- annotations: { readOnlyHint: false, destructiveHint: true },
140
- }, async ({ uids, mailbox, confirm_token }) => run(async () => {
211
+ outputSchema: z.object({
212
+ action: z.literal('deleted'),
213
+ mailbox: z.string(),
214
+ uids: z.array(z.number().int()),
215
+ }),
216
+ }, async ({ uids, mailbox, confirm_token }, mcp) => run(async () => {
141
217
  const source = mailbox ?? client.defaultMailbox;
142
- const approval = await requestApproval(server, confirmations, {
218
+ const outcome = await approval.requestApproval(server, mcp, confirmations, {
143
219
  what: `Permanently delete ${uids.length} message(s) (UIDs ${uids.slice(0, 20).join(', ')}${uids.length > 20 ? ', …' : ''})`,
144
220
  consequence: 'The messages are expunged, not moved to Trash. They cannot be recovered from here.',
145
221
  resourceKey: setResourceKey(`delete_messages:${source}`, uids.map(String)),
146
222
  token: confirm_token,
147
- details: [{ label: 'Mailbox', value: source }],
223
+ toolName: 'delete_messages',
224
+ details: [{ label: 'Mailbox', value: shownValue(source) }],
148
225
  });
149
- if (!approval.approved)
150
- return approval.result;
226
+ if (outcome.decision === 'rejected') {
227
+ throw new ToolInputError(`imap-mcp: ${outcome.reason}`);
228
+ }
229
+ if (outcome.decision === 'declined') {
230
+ throw new ToolInputError('imap-mcp: the user declined. Nothing was changed.');
231
+ }
232
+ if (outcome.decision === 'pending')
233
+ return outcome.result;
151
234
  return client.withMailbox(mailbox, false, async (connection) => {
152
235
  await withTimeout(connection.messageDelete(uids, { uid: true }), 'EXPUNGE');
153
236
  audit('delete', { mailbox: source, uids });
@@ -159,7 +242,7 @@ export function registerWriteTools(server, client, config, confirmations) {
159
242
  description: 'Creates a folder, renames one, or deletes one. Deleting asks the user ' +
160
243
  'to confirm and takes every message in the folder with it; renaming ' +
161
244
  'uses the two-call token because it is reversible.',
162
- inputSchema: {
245
+ inputSchema: z.object({
163
246
  action: z
164
247
  .enum(['create', 'rename', 'delete'])
165
248
  .describe('What to do with the mailbox.'),
@@ -168,30 +251,61 @@ export function registerWriteTools(server, client, config, confirmations) {
168
251
  .optional()
169
252
  .describe('Required for "rename": the full new path.'),
170
253
  confirm_token: confirmTokenParam,
254
+ }),
255
+ annotations: {
256
+ // Destructive in its delete mode, which takes every message in the
257
+ // folder; create and rename are the additive ones. One tool, so the
258
+ // annotation has to describe its strongest mode.
259
+ readOnlyHint: false,
260
+ destructiveHint: true,
261
+ idempotentHint: true,
262
+ openWorldHint: false,
171
263
  },
172
- annotations: { readOnlyHint: false, destructiveHint: true },
173
- }, async ({ action, mailbox, new_name, confirm_token }) => run(async () => {
264
+ outputSchema: z.object({
265
+ action: z.enum(['create', 'rename', 'delete']),
266
+ mailbox: z.string(),
267
+ new_name: z.string().optional(),
268
+ }),
269
+ }, async ({ action, mailbox, new_name, confirm_token }, mcp) => run(async () => {
174
270
  if (action === 'rename' && new_name === undefined) {
175
271
  throw new ToolInputError('imap-mcp: "rename" needs new_name — the full new mailbox path.');
176
272
  }
177
273
  if (action === 'delete') {
178
- const approval = await requestApproval(server, confirmations, {
274
+ const outcome = await approval.requestApproval(server, mcp, confirmations, {
179
275
  what: 'Delete a mailbox',
180
276
  consequence: 'Every message in the folder is deleted with it, and it cannot be recovered from here.',
181
277
  resourceKey: `manage_mailbox:delete:${mailbox}`,
182
278
  token: confirm_token,
183
- details: [{ label: 'Mailbox', value: mailbox }],
279
+ toolName: 'manage_mailbox',
280
+ details: [{ label: 'Mailbox', value: shownValue(mailbox) }],
184
281
  });
185
- if (!approval.approved)
186
- return approval.result;
282
+ if (outcome.decision === 'rejected') {
283
+ throw new ToolInputError(`imap-mcp: ${outcome.reason}`);
284
+ }
285
+ if (outcome.decision === 'declined') {
286
+ throw new ToolInputError('imap-mcp: the user declined. Nothing was changed.');
287
+ }
288
+ if (outcome.decision === 'pending')
289
+ return outcome.result;
187
290
  }
188
291
  else if (action === 'rename') {
189
292
  const key = `manage_mailbox:rename:${mailbox}:${new_name ?? ''}`;
190
293
  if (!confirmations.consume(key, confirm_token)) {
191
- return textResult(confirmationPrompt('rename a mailbox', confirmations.issue(key), confirmations.ttlMinutes, 'Clients that cached the old path will have to resynchronise.', [
192
- { label: 'Mailbox', value: mailbox },
193
- { label: 'New name', value: new_name ?? '' },
194
- ]));
294
+ // An error result, like `mcp-approval`'s own prompt: the rename
295
+ // was asked for and did not happen. It is also what lets this tool
296
+ // declare an output schema the SDK requires `structuredContent`
297
+ // from a tool that has one, and a prompt has none to give.
298
+ return errorResult(confirmationPrompt({
299
+ what: 'rename a mailbox',
300
+ token: confirmations.issue(key),
301
+ ttlMinutes: confirmations.ttlMinutes,
302
+ consequence: 'Clients that cached the old path will have to resynchronise.',
303
+ details: [
304
+ { label: 'Mailbox', value: shownValue(mailbox) },
305
+ { label: 'New name', value: shownValue(new_name ?? '') },
306
+ ],
307
+ toolName: 'manage_mailbox',
308
+ }));
195
309
  }
196
310
  }
197
311
  return client.withConnection(async (connection) => {
@@ -219,7 +333,7 @@ export function registerWriteTools(server, client, config, confirmations) {
219
333
  'person opens it in their own mail client and sends it from there. ' +
220
334
  'That is deliberate: it keeps the composing useful while leaving the ' +
221
335
  'decision to send with a human.',
222
- inputSchema: {
336
+ inputSchema: z.object({
223
337
  to: addressListParam,
224
338
  cc: addressListParam.optional(),
225
339
  bcc: addressListParam.optional(),
@@ -237,8 +351,21 @@ export function registerWriteTools(server, client, config, confirmations) {
237
351
  .optional()
238
352
  .describe('UID of the message being answered; threads the draft through In-Reply-To and References.'),
239
353
  mailbox: optionalMailboxParam.describe('Where to look for reply_to_uid. Defaults to the configured mailbox.'),
354
+ }),
355
+ annotations: {
356
+ // Additive: it appends a message to the drafts folder. Two calls
357
+ // leave two drafts.
358
+ readOnlyHint: false,
359
+ destructiveHint: false,
360
+ idempotentHint: false,
361
+ openWorldHint: false,
240
362
  },
241
- annotations: { readOnlyHint: false, destructiveHint: false },
363
+ outputSchema: z.object({
364
+ action: z.literal('draft_saved'),
365
+ mailbox: z.string().describe('The Drafts folder this server found.'),
366
+ recipients: z.array(z.string()),
367
+ note: z.string(),
368
+ }),
242
369
  }, async ({ to, cc, bcc, subject, body, reply_to_uid, mailbox }) => run(async () => {
243
370
  const thread = reply_to_uid === undefined
244
371
  ? undefined
@@ -1 +1 @@
1
- {"version":3,"file":"write.js","sourceRoot":"","sources":["../../src/tools/write.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"write.js","sourceRoot":"","sources":["../../src/tools/write.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ni-c/imap-mcp",
3
- "version": "0.2.0",
3
+ "version": "0.3.0",
4
4
  "mcpName": "io.github.ni-c/imap-mcp",
5
5
  "description": "MCP server for IMAP mailboxes: read, search, organise and draft mail — it cannot send",
6
6
  "keywords": [
@@ -38,33 +38,37 @@
38
38
  "node": ">=22"
39
39
  },
40
40
  "scripts": {
41
- "prepublishOnly": "npm run lint && npm run build && npm test",
41
+ "prepublishOnly": "npm run lint && npm run typecheck && npm run build && npm test",
42
42
  "prebuild": "node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"",
43
43
  "build": "tsc",
44
+ "typecheck": "tsc --project tsconfig.test.json",
44
45
  "watch": "tsc --watch",
45
- "lint": "eslint . && prettier --check .",
46
+ "lint": "oxlint --deny-warnings && prettier --check .",
46
47
  "format": "prettier --write .",
47
48
  "test": "vitest run",
48
49
  "test:coverage": "vitest run --coverage",
49
- "assets": "node scripts/gen-assets.mjs",
50
- "assets:check": "node scripts/gen-assets.mjs --check"
50
+ "test:integration": "vitest run --config vitest.integration.config.ts",
51
+ "assets": "svg-asset-set",
52
+ "assets:check": "svg-asset-set --check"
51
53
  },
52
54
  "dependencies": {
53
- "@modelcontextprotocol/sdk": "^1.30.0",
55
+ "@modelcontextprotocol/server": "^2.0.0",
54
56
  "imapflow": "^1.7.6",
55
57
  "mailparser": "^3.9.17",
58
+ "mcp-approval": "^0.8.0",
59
+ "mcp-tool-allowlist": "^0.2.1",
56
60
  "zod": "^4.5.4"
57
61
  },
58
62
  "devDependencies": {
59
- "@eslint/js": "^10.0.1",
60
- "@resvg/resvg-js": "^2.6.2",
63
+ "@modelcontextprotocol/client": "^2.0.0",
61
64
  "@types/mailparser": "^3.4.6",
62
65
  "@types/node": "^26.4.0",
63
66
  "@vitest/coverage-v8": "4.1.11",
64
- "eslint": "^10.9.1",
67
+ "mcp-integration-harness": "^0.4.0",
68
+ "oxlint": "^1.80.0",
65
69
  "prettier": "^3.9.6",
66
- "typescript": "^6.0.3",
67
- "typescript-eslint": "^8.68.0",
70
+ "svg-asset-set": "https://github.com/ni-c/svg-asset-set/releases/download/v0.2.0/svg-asset-set-0.2.0.tgz",
71
+ "typescript": "^7.0.2",
68
72
  "vitest": "^4.1.11"
69
73
  }
70
74
  }
@@ -1,45 +0,0 @@
1
- import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
- import { type ConfirmationDetail, type ConfirmationStore } from './confirm.js';
3
- import type { CallToolResult } from '@modelcontextprotocol/sdk/types.js';
4
- export interface ApprovalRequest {
5
- /** What is about to happen, in server-side facts only. */
6
- what: string;
7
- /** Why it cannot be undone. */
8
- consequence: string;
9
- /** Stable key binding the fallback token to this exact target set. */
10
- resourceKey: string;
11
- /** Token the caller supplied, if any. Only used on the fallback path. */
12
- token: string | undefined;
13
- /**
14
- * Names the caller chose — mailboxes above all. Rendered on their own labelled
15
- * lines rather than inside {@link what}, so a folder named to read like an
16
- * instruction cannot become part of the server's sentence.
17
- */
18
- details?: readonly ConfirmationDetail[];
19
- }
20
- /**
21
- * Either a result to return to the caller instead of acting, or permission to
22
- * proceed.
23
- */
24
- export type ApprovalOutcome = {
25
- approved: true;
26
- } | {
27
- approved: false;
28
- result: CallToolResult;
29
- };
30
- /**
31
- * Asks a human before an irreversible operation.
32
- *
33
- * Why this exists next to {@link ConfirmationStore}: the confirmation token is
34
- * not a human-in-the-loop gate and never was. It is returned inside a tool
35
- * result, which means the model reads it and can call again in the same turn
36
- * without anyone seeing the dialog. That still catches a model that widens the
37
- * target set by accident, but a model which has been talked into deleting the
38
- * mailbox will happily call twice.
39
- *
40
- * MCP elicitation closes that hole: the request goes to the client, which shows
41
- * it to the person sitting there, and the model cannot answer on their behalf.
42
- * Clients that do not support it fall back to the token, because refusing to
43
- * work at all would push people towards turning the guard off entirely.
44
- */
45
- export declare function requestApproval(server: McpServer, confirmations: ConfirmationStore, request: ApprovalRequest): Promise<ApprovalOutcome>;