@iterable/mcp 1.1.0 → 1.2.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.
package/TOOLS.md CHANGED
@@ -1,21 +1,25 @@
1
1
  # Available Iterable MCP Tools (104 tools)
2
2
 
3
- **Legend:** 🔒 = Contains PII, ✏️ = Write operation
3
+ **Legend:**
4
+ - 🔒 = Requires enabling user PII access
5
+ - ✏️ = Requires enabling writes
6
+ - ✉️ = Requires enabling sends
7
+
4
8
 
5
9
  ## Campaigns (13 tools)
6
10
  - **abort_campaign** ✏️: Abort a campaign that is currently running
7
- - **activate_triggered_campaign** ✏️: Activate a triggered campaign (requires API triggered campaign activation enabled)
11
+ - **activate_triggered_campaign** ✏️✉️: Activate a triggered campaign (requires API triggered campaign activation enabled)
8
12
  - **archive_campaigns** ✏️: Archive one or more campaigns. Scheduled/recurring campaigns will be cancelled, running campaigns will be aborted.
9
13
  - **cancel_campaign** ✏️: Cancel a scheduled or recurring campaign
10
- - **create_campaign** ✏️: Create a new blast or triggered campaign from an existing template. If listIds are provided, the campaign will be a blast campaign, otherwise it will be a triggered campaign. Blast campaigns will be sent immediately if sendAt is not provided.
14
+ - **create_campaign** ✏️✉️: Create a new blast or triggered campaign from an existing template. If listIds are provided, the campaign will be a blast campaign, otherwise it will be a triggered campaign. Blast campaigns will be sent immediately if sendAt is not provided.
11
15
  - **deactivate_triggered_campaign** ✏️: Deactivate a triggered campaign (requires API triggered campaign deactivation enabled)
12
16
  - **get_campaign**: Get detailed information about a specific campaign
13
17
  - **get_campaign_metrics**: Get campaign performance metrics
14
18
  - **get_campaigns**: Retrieve campaigns
15
19
  - **get_child_campaigns**: Get child campaigns generated by a recurring campaign
16
- - **schedule_campaign** ✏️: Schedule an existing campaign to be sent at a specific time
17
- - **send_campaign** ✏️: Send an existing scheduled campaign immediately
18
- - **trigger_campaign** ✏️: Trigger a campaign to send to specified lists
20
+ - **schedule_campaign** ✏️✉️: Schedule an existing campaign to be sent at a specific time
21
+ - **send_campaign** ✏️✉️: Send an existing scheduled campaign immediately
22
+ - **trigger_campaign** ✏️✉️: Trigger a campaign to send to specified lists
19
23
 
20
24
  ## Catalogs (12 tools)
21
25
  - **bulk_delete_catalog_items** ✏️: Bulk delete catalog items by their IDs
@@ -41,15 +45,15 @@
41
45
  ## Events (4 tools)
42
46
  - **get_user_events_by_email** 🔒: Get event history for a user by email address
43
47
  - **get_user_events_by_user_id** 🔒: Get event history for a user by user ID
44
- - **track_bulk_events** 🔒✏️: Track multiple events in a single request for better performance
45
- - **track_event** 🔒✏️: Track a custom event for a user
48
+ - **track_bulk_events** 🔒✏️✉️: Track multiple events in a single request for better performance
49
+ - **track_event** 🔒✏️✉️: Track a custom event for a user
46
50
 
47
51
  ## Experiments (1 tools)
48
52
  - **get_experiment_metrics**: Get experiment metrics for A/B testing analysis (currently supports email experiments only)
49
53
 
50
54
  ## Journeys (2 tools)
51
55
  - **get_journeys**: Get journeys (workflows) with optional pagination and state filtering
52
- - **trigger_journey** 🔒✏️: Trigger a journey (workflow) for a user
56
+ - **trigger_journey** 🔒✏️✉️: Trigger a journey (workflow) for a user
53
57
 
54
58
  ## Lists (8 tools)
55
59
  - **create_list** ✏️: Create a new user list
@@ -72,12 +76,12 @@
72
76
  - **get_embedded_messages** 🔒: Get embedded messages for a user, grouped by placement ID
73
77
  - **get_in_app_messages** 🔒: Get in-app messages for a user
74
78
  - **get_message_types**: Get all message types within the project for use in templates
75
- - **send_email** 🔒✏️: Send email to user
76
- - **send_in_app** 🔒✏️: Send in-app message to user
77
- - **send_push** 🔒✏️: Send push notification to user
78
- - **send_sms** 🔒✏️: Send SMS message to user
79
- - **send_web_push** 🔒✏️: Send web push notification to user
80
- - **send_whatsapp** 🔒✏️: Send WhatsApp message to user
79
+ - **send_email** 🔒✏️✉️: Send email to user
80
+ - **send_in_app** 🔒✏️✉️: Send in-app message to user
81
+ - **send_push** 🔒✏️✉️: Send push notification to user
82
+ - **send_sms** 🔒✏️✉️: Send SMS message to user
83
+ - **send_web_push** 🔒✏️✉️: Send web push notification to user
84
+ - **send_whatsapp** 🔒✏️✉️: Send WhatsApp message to user
81
85
 
82
86
  ## Snippets (5 tools)
83
87
  - **create_snippet** ✏️: Create a new snippet with Handlebars templating support
@@ -103,10 +107,10 @@
103
107
  - **get_templates**: Retrieve templates
104
108
  - **preview_email_template**: Preview email template with custom data. Returns fully rendered HTML with user, event, and/or data feed data substituted.
105
109
  - **preview_inapp_template**: Preview in-app message template with custom data. Returns fully rendered HTML with user, event, and/or data feed data substituted.
106
- - **send_email_template_proof** 🔒✏️: Send a proof of a email template to a specific user
107
- - **send_inapp_template_proof** 🔒✏️: Send a proof of a in-app message template to a specific user
108
- - **send_push_template_proof** 🔒✏️: Send a proof of a push notification template to a specific user
109
- - **send_sms_template_proof** 🔒✏️: Send a proof of a SMS template to a specific user
110
+ - **send_email_template_proof** 🔒✏️✉️: Send a proof of a email template to a specific user
111
+ - **send_inapp_template_proof** 🔒✏️✉️: Send a proof of a in-app message template to a specific user
112
+ - **send_push_template_proof** 🔒✏️✉️: Send a proof of a push notification template to a specific user
113
+ - **send_sms_template_proof** 🔒✏️✉️: Send a proof of a SMS template to a specific user
110
114
  - **update_email_template** ✏️: Update existing email template by templateId
111
115
  - **update_inapp_template** ✏️: Update existing in-app message template by templateId
112
116
  - **update_push_template** ✏️: Update existing push notification template by templateId
@@ -5,7 +5,7 @@
5
5
  *
6
6
  * Storage Strategy:
7
7
  * - macOS: API keys in Keychain, metadata in ~/.iterable-mcp/keys.json
8
- * - Windows: API keys and metadata in ~/.iterable-mcp/keys.json
8
+ * - Windows: API keys encrypted with DPAPI in ~/.iterable-mcp/keys.json
9
9
  * - Linux: API keys and metadata in ~/.iterable-mcp/keys.json (mode 0o600)
10
10
  * - Lock file: ~/.iterable-mcp/keys.lock prevents concurrent modifications
11
11
  *
@@ -32,6 +32,8 @@ export interface ApiKeyMetadata {
32
32
  env?: Record<string, string>;
33
33
  /** API key value (only present when not using Keychain storage) */
34
34
  apiKey?: string;
35
+ /** Encrypted API key (Windows DPAPI) */
36
+ encryptedApiKey?: string;
35
37
  }
36
38
  export declare class KeyManager {
37
39
  private readonly configDir;
@@ -40,7 +42,7 @@ export declare class KeyManager {
40
42
  private store;
41
43
  private saveLock;
42
44
  private readonly execSecurity;
43
- private readonly useKeychain;
45
+ private readonly storageMethod;
44
46
  /**
45
47
  * Create a new KeyManager instance
46
48
  *
@@ -108,6 +110,33 @@ export declare class KeyManager {
108
110
  * Validate and normalize base URL
109
111
  */
110
112
  private validateBaseUrl;
113
+ /**
114
+ * Encrypt data using Windows DPAPI
115
+ *
116
+ * Security: Uses native C++ bindings to Windows DPAPI (Data Protection API).
117
+ * - No shell execution or code evaluation
118
+ * - Encrypted data can only be decrypted by the same user on the same machine
119
+ * - Uses CurrentUser scope for user-level protection
120
+ * - No optional entropy parameter (null) for simplicity
121
+ *
122
+ * @param text - Plain text to encrypt (validated as 32-char hex by caller)
123
+ * @returns Base64-encoded encrypted blob
124
+ * @throws {Error} If DPAPI encryption fails or platform is not Windows
125
+ */
126
+ private encryptWindows;
127
+ /**
128
+ * Decrypt data using Windows DPAPI
129
+ *
130
+ * Security: Uses native C++ bindings to Windows DPAPI.
131
+ * - No shell execution or code evaluation
132
+ * - Only the user who encrypted the data can decrypt it
133
+ * - Validates base64 input before decryption
134
+ *
135
+ * @param encryptedBase64 - Base64-encoded encrypted blob
136
+ * @returns Decrypted plain text
137
+ * @throws {Error} If DPAPI decryption fails, data is corrupt, or platform is not Windows
138
+ */
139
+ private decryptWindows;
111
140
  /**
112
141
  * Add a new API key
113
142
  *
@@ -1 +1 @@
1
- {"version":3,"file":"key-manager.d.ts","sourceRoot":"","sources":["../src/key-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"key-manager.d.ts","sourceRoot":"","sources":["../src/key-manager.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@
5
5
  *
6
6
  * Storage Strategy:
7
7
  * - macOS: API keys in Keychain, metadata in ~/.iterable-mcp/keys.json
8
- * - Windows: API keys and metadata in ~/.iterable-mcp/keys.json
8
+ * - Windows: API keys encrypted with DPAPI in ~/.iterable-mcp/keys.json
9
9
  * - Linux: API keys and metadata in ~/.iterable-mcp/keys.json (mode 0o600)
10
10
  * - Lock file: ~/.iterable-mcp/keys.lock prevents concurrent modifications
11
11
  *
@@ -42,6 +42,18 @@ async function execSecurityDefault(args) {
42
42
  throw new Error(`Security command failed: ${error.stderr?.toString().trim() || error.message}`);
43
43
  }
44
44
  }
45
+ /**
46
+ * Storage method for API keys
47
+ */
48
+ var StorageMethod;
49
+ (function (StorageMethod) {
50
+ /** macOS Keychain - keys stored and encrypted by OS keychain service */
51
+ StorageMethod["KEYCHAIN"] = "keychain";
52
+ /** Windows DPAPI - keys encrypted by OS (user-scoped keys), stored in JSON file */
53
+ StorageMethod["DPAPI"] = "dpapi";
54
+ /** File storage - plaintext keys in JSON file with restrictive permissions (Linux/other) */
55
+ StorageMethod["FILE"] = "file";
56
+ })(StorageMethod || (StorageMethod = {}));
45
57
  export class KeyManager {
46
58
  configDir;
47
59
  metadataFile;
@@ -49,7 +61,7 @@ export class KeyManager {
49
61
  store = null;
50
62
  saveLock = null;
51
63
  execSecurity;
52
- useKeychain;
64
+ storageMethod;
53
65
  /**
54
66
  * Create a new KeyManager instance
55
67
  *
@@ -61,11 +73,24 @@ export class KeyManager {
61
73
  this.metadataFile = path.join(this.configDir, "keys.json");
62
74
  this.lockFile = path.join(this.configDir, "keys.lock");
63
75
  this.execSecurity = execSecurity || execSecurityDefault;
64
- // Use Keychain on macOS (or when mock execSecurity provided for tests)
76
+ // Determine storage method based on platform
65
77
  // Can be overridden via ITERABLE_MCP_FORCE_FILE_STORAGE=true
66
- this.useKeychain =
67
- (!!execSecurity || process.platform === "darwin") &&
68
- process.env.ITERABLE_MCP_FORCE_FILE_STORAGE !== "true";
78
+ if (process.env.ITERABLE_MCP_FORCE_FILE_STORAGE === "true") {
79
+ // Force file storage mode (for testing or debugging)
80
+ this.storageMethod = StorageMethod.FILE;
81
+ }
82
+ else if (execSecurity || process.platform === "darwin") {
83
+ // Use Keychain on macOS or when execSecurity is provided (for tests)
84
+ this.storageMethod = StorageMethod.KEYCHAIN;
85
+ }
86
+ else if (process.platform === "win32") {
87
+ // Use DPAPI on Windows
88
+ this.storageMethod = StorageMethod.DPAPI;
89
+ }
90
+ else {
91
+ // Use file storage on other platforms
92
+ this.storageMethod = StorageMethod.FILE;
93
+ }
69
94
  }
70
95
  /**
71
96
  * Validate metadata against keychain and clean up orphaned entries (macOS only)
@@ -78,7 +103,9 @@ export class KeyManager {
78
103
  */
79
104
  async validateAndCleanup() {
80
105
  // Only validate Keychain on macOS
81
- if (!this.useKeychain || !this.store || this.store.keys.length === 0) {
106
+ if (this.storageMethod !== StorageMethod.KEYCHAIN ||
107
+ !this.store ||
108
+ this.store.keys.length === 0) {
82
109
  return [];
83
110
  }
84
111
  const orphanedKeys = [];
@@ -375,6 +402,75 @@ export class KeyManager {
375
402
  console.warn(`⚠️ Warning: Using non-standard Iterable domain: ${url.hostname}`);
376
403
  }
377
404
  }
405
+ /**
406
+ * Encrypt data using Windows DPAPI
407
+ *
408
+ * Security: Uses native C++ bindings to Windows DPAPI (Data Protection API).
409
+ * - No shell execution or code evaluation
410
+ * - Encrypted data can only be decrypted by the same user on the same machine
411
+ * - Uses CurrentUser scope for user-level protection
412
+ * - No optional entropy parameter (null) for simplicity
413
+ *
414
+ * @param text - Plain text to encrypt (validated as 32-char hex by caller)
415
+ * @returns Base64-encoded encrypted blob
416
+ * @throws {Error} If DPAPI encryption fails or platform is not Windows
417
+ */
418
+ async encryptWindows(text) {
419
+ if (process.platform !== "win32") {
420
+ throw new Error("DPAPI encryption is only supported on Windows");
421
+ }
422
+ try {
423
+ // Dynamic import to avoid loading native module on non-Windows platforms
424
+ const { Dpapi } = await import("@primno/dpapi");
425
+ // Convert string to buffer (UTF-8 encoding)
426
+ const plainBuffer = Buffer.from(text, "utf-8");
427
+ // Encrypt using DPAPI (returns Uint8Array)
428
+ // Parameters: data, optionalEntropy (null), scope ("CurrentUser")
429
+ const encryptedBytes = Dpapi.protectData(plainBuffer, null, "CurrentUser");
430
+ // Convert to Buffer and encode as base64 for JSON storage
431
+ return Buffer.from(encryptedBytes).toString("base64");
432
+ }
433
+ catch (error) {
434
+ logger.error("DPAPI encryption failed", { error });
435
+ throw new Error(`Failed to encrypt data with Windows DPAPI: ${error instanceof Error ? error.message : String(error)}`);
436
+ }
437
+ }
438
+ /**
439
+ * Decrypt data using Windows DPAPI
440
+ *
441
+ * Security: Uses native C++ bindings to Windows DPAPI.
442
+ * - No shell execution or code evaluation
443
+ * - Only the user who encrypted the data can decrypt it
444
+ * - Validates base64 input before decryption
445
+ *
446
+ * @param encryptedBase64 - Base64-encoded encrypted blob
447
+ * @returns Decrypted plain text
448
+ * @throws {Error} If DPAPI decryption fails, data is corrupt, or platform is not Windows
449
+ */
450
+ async decryptWindows(encryptedBase64) {
451
+ if (process.platform !== "win32") {
452
+ throw new Error("DPAPI decryption is only supported on Windows");
453
+ }
454
+ // Validate base64 format to prevent invalid data from reaching DPAPI
455
+ if (!/^[A-Za-z0-9+/]+=*$/.test(encryptedBase64)) {
456
+ throw new Error("Invalid encrypted data format (not valid base64)");
457
+ }
458
+ try {
459
+ // Dynamic import to avoid loading native module on non-Windows platforms
460
+ const { Dpapi } = await import("@primno/dpapi");
461
+ // Decode base64 to buffer
462
+ const encryptedBuffer = Buffer.from(encryptedBase64, "base64");
463
+ // Decrypt using DPAPI (returns Uint8Array)
464
+ // Parameters: encryptedData, optionalEntropy (null), scope ("CurrentUser")
465
+ const decryptedBytes = Dpapi.unprotectData(encryptedBuffer, null, "CurrentUser");
466
+ // Convert to Buffer and decode as UTF-8
467
+ return Buffer.from(decryptedBytes).toString("utf-8");
468
+ }
469
+ catch (error) {
470
+ logger.error("DPAPI decryption failed", { error });
471
+ throw new Error(`Failed to decrypt data with Windows DPAPI: ${error instanceof Error ? error.message : String(error)}`);
472
+ }
473
+ }
378
474
  /**
379
475
  * Add a new API key
380
476
  *
@@ -419,28 +515,38 @@ export class KeyManager {
419
515
  : {}),
420
516
  };
421
517
  // Store API key
422
- if (this.useKeychain) {
423
- // macOS: Store in Keychain
424
- try {
425
- await this.execSecurity([
426
- "add-generic-password",
427
- "-a",
428
- id,
429
- "-s",
430
- SERVICE_NAME,
431
- "-w",
432
- apiKey,
433
- "-U",
434
- ]);
435
- }
436
- catch (error) {
437
- logger.error("Failed to store key in keychain", { error, id });
438
- throw new Error(`Failed to store key in macOS Keychain: ${error instanceof Error ? error.message : String(error)}`);
439
- }
440
- }
441
- else {
442
- // Windows/Linux: Store in JSON
443
- metadata.apiKey = apiKey;
518
+ switch (this.storageMethod) {
519
+ case StorageMethod.KEYCHAIN:
520
+ try {
521
+ await this.execSecurity([
522
+ "add-generic-password",
523
+ "-a",
524
+ id,
525
+ "-s",
526
+ SERVICE_NAME,
527
+ "-w",
528
+ apiKey,
529
+ "-U",
530
+ ]);
531
+ }
532
+ catch (error) {
533
+ logger.error("Failed to store key in keychain", { error, id });
534
+ throw new Error(`Failed to store key in macOS Keychain: ${error instanceof Error ? error.message : String(error)}`);
535
+ }
536
+ break;
537
+ case StorageMethod.DPAPI:
538
+ try {
539
+ metadata.encryptedApiKey = await this.encryptWindows(apiKey);
540
+ }
541
+ catch (error) {
542
+ logger.error("Failed to encrypt key with DPAPI", { error, id });
543
+ throw new Error(`Failed to encrypt key with Windows DPAPI: ${error instanceof Error ? error.message : String(error)}`);
544
+ }
545
+ break;
546
+ default:
547
+ // Linux/Other: Store in JSON
548
+ metadata.apiKey = apiKey;
549
+ break;
444
550
  }
445
551
  // Store metadata
446
552
  this.store.keys.push(metadata);
@@ -504,38 +610,60 @@ export class KeyManager {
504
610
  return null;
505
611
  }
506
612
  // Get API key
507
- if (this.useKeychain) {
508
- // macOS: Get from Keychain
509
- try {
510
- const apiKey = await this.execSecurity([
511
- "find-generic-password",
512
- "-a",
513
- keyMeta.id,
514
- "-s",
515
- SERVICE_NAME,
516
- "-w",
517
- ]);
518
- if (!apiKey) {
519
- logger.error("Key not found in keychain", { id: keyMeta.id });
520
- throw new Error(`Key not found in macOS Keychain for ID ${keyMeta.id}`);
613
+ switch (this.storageMethod) {
614
+ case StorageMethod.KEYCHAIN:
615
+ // macOS: Get from Keychain
616
+ try {
617
+ const apiKey = await this.execSecurity([
618
+ "find-generic-password",
619
+ "-a",
620
+ keyMeta.id,
621
+ "-s",
622
+ SERVICE_NAME,
623
+ "-w",
624
+ ]);
625
+ if (!apiKey) {
626
+ logger.error("Key not found in keychain", { id: keyMeta.id });
627
+ throw new Error(`Key not found in macOS Keychain for ID ${keyMeta.id}`);
628
+ }
629
+ return apiKey;
521
630
  }
522
- return apiKey;
523
- }
524
- catch (error) {
525
- logger.error("Failed to retrieve key from keychain", {
526
- error,
527
- id: keyMeta.id,
528
- });
529
- throw new Error(`Failed to retrieve key from macOS Keychain: ${error instanceof Error ? error.message : String(error)}`);
530
- }
531
- }
532
- else {
533
- // Windows/Linux: Get from JSON
534
- if (!keyMeta.apiKey) {
535
- logger.error("Key not found in metadata", { id: keyMeta.id });
536
- throw new Error(`Key not found in storage for ID ${keyMeta.id}`);
537
- }
538
- return keyMeta.apiKey;
631
+ catch (error) {
632
+ logger.error("Failed to retrieve key from keychain", {
633
+ error,
634
+ id: keyMeta.id,
635
+ });
636
+ throw new Error(`Failed to retrieve key from macOS Keychain: ${error instanceof Error ? error.message : String(error)}`);
637
+ }
638
+ case StorageMethod.DPAPI:
639
+ // Windows: Decrypt from JSON
640
+ if (keyMeta.encryptedApiKey) {
641
+ try {
642
+ return await this.decryptWindows(keyMeta.encryptedApiKey);
643
+ }
644
+ catch (error) {
645
+ logger.error("Failed to decrypt key with DPAPI", {
646
+ error,
647
+ id: keyMeta.id,
648
+ });
649
+ throw new Error(`Failed to decrypt key with Windows DPAPI: ${error instanceof Error ? error.message : String(error)}`);
650
+ }
651
+ }
652
+ else if (keyMeta.apiKey) {
653
+ // Fallback for legacy keys stored in plaintext on Windows
654
+ return keyMeta.apiKey;
655
+ }
656
+ else {
657
+ logger.error("Key not found in metadata", { id: keyMeta.id });
658
+ throw new Error(`Key not found in storage for ID ${keyMeta.id}`);
659
+ }
660
+ default:
661
+ // Linux/Other: Get from JSON
662
+ if (!keyMeta.apiKey) {
663
+ logger.error("Key not found in metadata", { id: keyMeta.id });
664
+ throw new Error(`Key not found in storage for ID ${keyMeta.id}`);
665
+ }
666
+ return keyMeta.apiKey;
539
667
  }
540
668
  }
541
669
  /**
@@ -638,7 +766,7 @@ export class KeyManager {
638
766
  throw new Error(`Cannot delete the currently active key "${keyMeta.name}". Please activate a different key first.`);
639
767
  }
640
768
  // Delete from storage
641
- if (this.useKeychain) {
769
+ if (this.storageMethod === StorageMethod.KEYCHAIN) {
642
770
  // macOS: Delete from Keychain
643
771
  let keychainDeleted = false;
644
772
  try {
@@ -718,23 +846,34 @@ export class KeyManager {
718
846
  for (const keyMeta of this.store.keys) {
719
847
  try {
720
848
  let storedKey;
721
- if (this.useKeychain) {
722
- // macOS: Check Keychain
723
- storedKey = await this.execSecurity([
724
- "find-generic-password",
725
- "-a",
726
- keyMeta.id,
727
- "-s",
728
- SERVICE_NAME,
729
- "-w",
730
- ]);
731
- }
732
- else {
733
- // Windows/Linux: Check JSON
734
- if (!keyMeta.apiKey) {
735
- continue;
736
- }
737
- storedKey = keyMeta.apiKey;
849
+ switch (this.storageMethod) {
850
+ case StorageMethod.KEYCHAIN:
851
+ storedKey = await this.execSecurity([
852
+ "find-generic-password",
853
+ "-a",
854
+ keyMeta.id,
855
+ "-s",
856
+ SERVICE_NAME,
857
+ "-w",
858
+ ]);
859
+ break;
860
+ case StorageMethod.DPAPI:
861
+ if (keyMeta.encryptedApiKey) {
862
+ storedKey = await this.decryptWindows(keyMeta.encryptedApiKey);
863
+ }
864
+ else if (keyMeta.apiKey) {
865
+ storedKey = keyMeta.apiKey;
866
+ }
867
+ else {
868
+ continue;
869
+ }
870
+ break;
871
+ default:
872
+ if (!keyMeta.apiKey) {
873
+ continue;
874
+ }
875
+ storedKey = keyMeta.apiKey;
876
+ break;
738
877
  }
739
878
  if (storedKey.trim() === apiKeyValue) {
740
879
  return keyMeta;
@@ -1 +1 @@
1
- {"version":3,"file":"key-manager.js","sourceRoot":"","sources":["../src/key-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"key-manager.js","sourceRoot":"","sources":["../src/key-manager.ts"],"names":[],"mappings":"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"}
package/dist/keys-cli.js CHANGED
@@ -235,7 +235,7 @@ export async function handleKeysCommand() {
235
235
  ? chalk.green("Enabled")
236
236
  : chalk.gray("Disabled")));
237
237
  console.log();
238
- showSuccess(`Your API key "${name}" is now stored`);
238
+ showSuccess("Your API key is now securely stored (encrypted at rest)");
239
239
  // Offer to set newly added key as active
240
240
  const { activateNow } = await inquirer.prompt([
241
241
  {
@@ -501,7 +501,7 @@ export async function handleKeysCommand() {
501
501
  console.log();
502
502
  console.log(formatKeyValue("ID", resolved, chalk.gray));
503
503
  console.log();
504
- showSuccess("Key removed successfully");
504
+ showSuccess("Key securely removed");
505
505
  }
506
506
  catch (error) {
507
507
  spinner.fail("Failed to delete key");
@@ -1 +1 @@
1
- {"version":3,"file":"keys-cli.js","sourceRoot":"","sources":["../src/keys-cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"keys-cli.js","sourceRoot":"","sources":["../src/keys-cli.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"formatting.d.ts","sourceRoot":"","sources":["../../src/utils/formatting.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,wBAAgB,8BAA8B,CAC5C,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,OAAO,EACjB,GAAG,CAAC,EAAE;IACJ,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,qBAAqB,CAAC,EAAE,MAAM,CAAC;CAChC,GACA,MAAM,CAMR;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,WAAW,UAAQ,GAAG,MAAM,CAQhE"}
1
+ {"version":3,"file":"formatting.d.ts","sourceRoot":"","sources":["../../src/utils/formatting.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,wBAAgB,8BAA8B,CAC5C,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,OAAO,EACjB,GAAG,CAAC,EAAE;IACJ,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,qBAAqB,CAAC,EAAE,MAAM,CAAC;CAChC,GACA,MAAM,CAMR;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,WAAW,UAAQ,GAAG,MAAM,CAKhE"}
@@ -15,10 +15,7 @@ export function formatKeychainChoiceLabelPlain(name, endpoint, isActive, env) {
15
15
  */
16
16
  export function getKeyStorageMessage(bulletPoint = false) {
17
17
  const prefix = bulletPoint ? "• " : "";
18
- const message = process.platform === "darwin"
19
- ? "Keys are stored securely in macOS Keychain"
20
- : "Keys are stored in ~/.iterable-mcp/keys.json" +
21
- (process.platform === "win32" ? "" : " with restricted permissions");
18
+ const message = "Keys are encrypted at rest using platform-specific security (Keychain on macOS, DPAPI on Windows)";
22
19
  return prefix + message;
23
20
  }
24
21
  //# sourceMappingURL=formatting.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"formatting.js","sourceRoot":"","sources":["../../src/utils/formatting.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,UAAU,8BAA8B,CAC5C,IAAY,EACZ,QAAgB,EAChB,QAAiB,EACjB,GAIC;IAED,MAAM,WAAW,GAAG,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC;IAClD,MAAM,KAAK,GAAG,GAAG;QACf,CAAC,CAAC,UAAU,GAAG,CAAC,iBAAiB,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,cAAc,GAAG,CAAC,sBAAsB,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,aAAa,GAAG,CAAC,qBAAqB,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE;QAC/L,CAAC,CAAC,EAAE,CAAC;IACP,OAAO,GAAG,WAAW,GAAG,IAAI,KAAK,QAAQ,GAAG,KAAK,EAAE,CAAC;AACtD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAAC,WAAW,GAAG,KAAK;IACtD,MAAM,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACvC,MAAM,OAAO,GACX,OAAO,CAAC,QAAQ,KAAK,QAAQ;QAC3B,CAAC,CAAC,4CAA4C;QAC9C,CAAC,CAAC,8CAA8C;YAC9C,CAAC,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,8BAA8B,CAAC,CAAC;IAC3E,OAAO,MAAM,GAAG,OAAO,CAAC;AAC1B,CAAC"}
1
+ {"version":3,"file":"formatting.js","sourceRoot":"","sources":["../../src/utils/formatting.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,UAAU,8BAA8B,CAC5C,IAAY,EACZ,QAAgB,EAChB,QAAiB,EACjB,GAIC;IAED,MAAM,WAAW,GAAG,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC;IAClD,MAAM,KAAK,GAAG,GAAG;QACf,CAAC,CAAC,UAAU,GAAG,CAAC,iBAAiB,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,cAAc,GAAG,CAAC,sBAAsB,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,aAAa,GAAG,CAAC,qBAAqB,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE;QAC/L,CAAC,CAAC,EAAE,CAAC;IACP,OAAO,GAAG,WAAW,GAAG,IAAI,KAAK,QAAQ,GAAG,KAAK,EAAE,CAAC;AACtD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAAC,WAAW,GAAG,KAAK;IACtD,MAAM,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACvC,MAAM,OAAO,GACX,mGAAmG,CAAC;IACtG,OAAO,MAAM,GAAG,OAAO,CAAC;AAC1B,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@iterable/mcp",
3
- "version": "1.1.0",
3
+ "version": "1.2.0",
4
4
  "description": "Model Context Protocol server for Iterable API",
5
5
  "keywords": [
6
6
  "mcp",
@@ -71,6 +71,7 @@
71
71
  "@alcyone-labs/zod-to-json-schema": "4.0.10",
72
72
  "@iterable/api": "0.3.0",
73
73
  "@modelcontextprotocol/sdk": "1.18.1",
74
+ "@primno/dpapi": "^2.0.1",
74
75
  "@types/json-schema": "7.0.15",
75
76
  "boxen": "8.0.1",
76
77
  "chalk": "5.6.2",