integrate-sdk 0.8.42 → 0.8.43-dev.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 (92) hide show
  1. package/dist/adapters/auto-routes.d.ts.map +1 -1
  2. package/dist/adapters/auto-routes.js +265 -139
  3. package/dist/adapters/base-handler.d.ts.map +1 -1
  4. package/dist/adapters/index.js +261 -137
  5. package/dist/adapters/nextjs-oauth-redirect.d.ts.map +1 -1
  6. package/dist/adapters/nextjs-oauth-redirect.js +47 -2
  7. package/dist/adapters/nextjs.d.ts.map +1 -1
  8. package/dist/adapters/nextjs.js +260 -137
  9. package/dist/adapters/node.js +260 -137
  10. package/dist/adapters/svelte-kit.js +260 -137
  11. package/dist/adapters/tanstack-start.js +260 -137
  12. package/dist/index.js +275 -147
  13. package/dist/oauth.js +265 -139
  14. package/dist/react.js +59 -14
  15. package/dist/server.js +264 -137
  16. package/dist/src/adapters/auto-routes.d.ts.map +1 -1
  17. package/dist/src/adapters/base-handler.d.ts.map +1 -1
  18. package/dist/src/adapters/nextjs-oauth-redirect.d.ts.map +1 -1
  19. package/dist/src/adapters/nextjs.d.ts.map +1 -1
  20. package/dist/src/client.d.ts.map +1 -1
  21. package/dist/src/config/types.d.ts +15 -0
  22. package/dist/src/config/types.d.ts.map +1 -1
  23. package/dist/src/integrations/airtable.d.ts.map +1 -1
  24. package/dist/src/integrations/calcom.d.ts.map +1 -1
  25. package/dist/src/integrations/cursor.d.ts.map +1 -1
  26. package/dist/src/integrations/figma.d.ts.map +1 -1
  27. package/dist/src/integrations/gcal.d.ts.map +1 -1
  28. package/dist/src/integrations/github.d.ts.map +1 -1
  29. package/dist/src/integrations/gmail.d.ts.map +1 -1
  30. package/dist/src/integrations/gworkspace.d.ts.map +1 -1
  31. package/dist/src/integrations/hubspot.d.ts.map +1 -1
  32. package/dist/src/integrations/intercom.d.ts.map +1 -1
  33. package/dist/src/integrations/linear.d.ts.map +1 -1
  34. package/dist/src/integrations/notion.d.ts.map +1 -1
  35. package/dist/src/integrations/onedrive.d.ts.map +1 -1
  36. package/dist/src/integrations/outlook.d.ts.map +1 -1
  37. package/dist/src/integrations/polar.d.ts.map +1 -1
  38. package/dist/src/integrations/ramp.d.ts.map +1 -1
  39. package/dist/src/integrations/slack.d.ts.map +1 -1
  40. package/dist/src/integrations/stripe.d.ts.map +1 -1
  41. package/dist/src/integrations/todoist.d.ts.map +1 -1
  42. package/dist/src/integrations/vercel.d.ts.map +1 -1
  43. package/dist/src/integrations/whatsapp.d.ts.map +1 -1
  44. package/dist/src/integrations/youtube.d.ts.map +1 -1
  45. package/dist/src/integrations/zendesk.d.ts.map +1 -1
  46. package/dist/src/oauth/email-fetcher.d.ts.map +1 -1
  47. package/dist/src/oauth/manager.d.ts.map +1 -1
  48. package/dist/src/oauth/window-manager.d.ts.map +1 -1
  49. package/dist/src/react/hooks.d.ts.map +1 -1
  50. package/dist/src/server.d.ts.map +1 -1
  51. package/dist/src/transport/http-session.d.ts.map +1 -1
  52. package/dist/src/transport/http-stream.d.ts.map +1 -1
  53. package/dist/src/utils/logger.d.ts +37 -0
  54. package/dist/src/utils/logger.d.ts.map +1 -0
  55. package/package.json +2 -2
  56. package/dist/adapters/base-handler.js +0 -561
  57. package/dist/ai/cloudflare.d.ts +0 -158
  58. package/dist/ai/cloudflare.d.ts.map +0 -1
  59. package/dist/ai/cloudflare.js +0 -4249
  60. package/dist/ai/langchain.d.ts +0 -139
  61. package/dist/ai/langchain.d.ts.map +0 -1
  62. package/dist/ai/langchain.js +0 -4237
  63. package/dist/ai/llamaindex.d.ts +0 -125
  64. package/dist/ai/llamaindex.d.ts.map +0 -1
  65. package/dist/ai/llamaindex.js +0 -4236
  66. package/dist/ai/mastra.d.ts +0 -138
  67. package/dist/ai/mastra.d.ts.map +0 -1
  68. package/dist/ai/mastra.js +0 -4240
  69. package/dist/src/ai/cloudflare.d.ts +0 -158
  70. package/dist/src/ai/cloudflare.d.ts.map +0 -1
  71. package/dist/src/ai/langchain.d.ts +0 -139
  72. package/dist/src/ai/langchain.d.ts.map +0 -1
  73. package/dist/src/ai/llamaindex.d.ts +0 -125
  74. package/dist/src/ai/llamaindex.d.ts.map +0 -1
  75. package/dist/src/ai/mastra.d.ts +0 -138
  76. package/dist/src/ai/mastra.d.ts.map +0 -1
  77. package/dist/src/integrations/vercel-ai.d.ts +0 -127
  78. package/dist/src/integrations/vercel-ai.d.ts.map +0 -1
  79. package/dist/src/plugins/generic.d.ts +0 -99
  80. package/dist/src/plugins/generic.d.ts.map +0 -1
  81. package/dist/src/plugins/github-client.d.ts +0 -320
  82. package/dist/src/plugins/github-client.d.ts.map +0 -1
  83. package/dist/src/plugins/github.d.ts +0 -89
  84. package/dist/src/plugins/github.d.ts.map +0 -1
  85. package/dist/src/plugins/gmail-client.d.ts +0 -106
  86. package/dist/src/plugins/gmail-client.d.ts.map +0 -1
  87. package/dist/src/plugins/gmail.d.ts +0 -87
  88. package/dist/src/plugins/gmail.d.ts.map +0 -1
  89. package/dist/src/plugins/server-client.d.ts +0 -18
  90. package/dist/src/plugins/server-client.d.ts.map +0 -1
  91. package/dist/src/plugins/types.d.ts +0 -70
  92. package/dist/src/plugins/types.d.ts.map +0 -1
@@ -10,6 +10,49 @@ var __export = (target, all) => {
10
10
  };
11
11
  var __esm = (fn, res) => () => (fn && (res = fn(fn = 0)), res);
12
12
 
13
+ // ../utils/logger.ts
14
+ function shouldLog(level) {
15
+ return logLevelHierarchy[level] <= logLevelHierarchy[globalLogLevel];
16
+ }
17
+ function setLogLevel(level) {
18
+ globalLogLevel = level;
19
+ }
20
+ function createLogger(namespace) {
21
+ const prefix = `[${namespace}]`;
22
+ return {
23
+ debug: (...args) => {
24
+ if (shouldLog("debug")) {
25
+ console.log(prefix, ...args);
26
+ }
27
+ },
28
+ info: (...args) => {
29
+ if (shouldLog("info")) {
30
+ console.log(prefix, ...args);
31
+ }
32
+ },
33
+ warn: (...args) => {
34
+ if (shouldLog("warn")) {
35
+ console.warn(prefix, ...args);
36
+ }
37
+ },
38
+ error: (...args) => {
39
+ if (shouldLog("error")) {
40
+ console.error(prefix, ...args);
41
+ }
42
+ }
43
+ };
44
+ }
45
+ var globalLogLevel = "error", logLevelHierarchy;
46
+ var init_logger = __esm(() => {
47
+ logLevelHierarchy = {
48
+ none: 0,
49
+ error: 1,
50
+ warn: 2,
51
+ info: 3,
52
+ debug: 4
53
+ };
54
+ });
55
+
13
56
  // ../protocol/jsonrpc.ts
14
57
  function parseMessage(message) {
15
58
  try {
@@ -75,7 +118,7 @@ class HttpSessionTransport {
75
118
  const sid = response.headers.get("mcp-session-id");
76
119
  if (sid) {
77
120
  this.sessionId = sid;
78
- console.log("Session established:", sid);
121
+ logger.debug("Session established:", sid);
79
122
  this.startSSEListener();
80
123
  }
81
124
  }
@@ -125,7 +168,7 @@ class HttpSessionTransport {
125
168
  if (error instanceof Error && error.name === "AbortError") {
126
169
  return;
127
170
  }
128
- console.error("SSE connection error:", error);
171
+ logger.error("SSE connection error:", error);
129
172
  }
130
173
  }
131
174
  async processSSEStream(body) {
@@ -154,7 +197,7 @@ class HttpSessionTransport {
154
197
  if (error instanceof Error && error.name === "AbortError") {
155
198
  return;
156
199
  }
157
- console.error("SSE stream error:", error);
200
+ logger.error("SSE stream error:", error);
158
201
  } finally {
159
202
  reader.releaseLock();
160
203
  }
@@ -166,11 +209,11 @@ class HttpSessionTransport {
166
209
  try {
167
210
  handler(message);
168
211
  } catch (error) {
169
- console.error("Error in message handler:", error);
212
+ logger.error("Error in message handler:", error);
170
213
  }
171
214
  });
172
215
  } catch (error) {
173
- console.error("Failed to parse notification:", error);
216
+ logger.error("Failed to parse notification:", error);
174
217
  }
175
218
  }
176
219
  onMessage(handler) {
@@ -207,7 +250,11 @@ class HttpSessionTransport {
207
250
  return { ...this.headers };
208
251
  }
209
252
  }
210
- var init_http_session = () => {};
253
+ var logger;
254
+ var init_http_session = __esm(() => {
255
+ init_logger();
256
+ logger = createLogger("HTTPSession");
257
+ });
211
258
 
212
259
  // ../protocol/messages.ts
213
260
  var init_messages = () => {};
@@ -566,7 +613,7 @@ class OAuthWindowManager {
566
613
  const windowName = `oauth_popup_${Date.now()}`;
567
614
  this.popupWindow = window.open(url, windowName, features);
568
615
  if (!this.popupWindow) {
569
- console.warn("Popup was blocked by the browser. Please allow popups for this site.");
616
+ logger2.warn("Popup was blocked by the browser. Please allow popups for this site.");
570
617
  return null;
571
618
  }
572
619
  this.popupWindow.focus();
@@ -576,7 +623,7 @@ class OAuthWindowManager {
576
623
  if (!isBrowser()) {
577
624
  throw new Error("OAuthWindowManager.openRedirect() can only be used in browser environments");
578
625
  }
579
- console.log("[OAuthWindowManager] Redirecting to:", url.substring(0, 100) + (url.length > 100 ? "..." : ""));
626
+ logger2.debug("[OAuthWindowManager] Redirecting to:", url.substring(0, 100) + (url.length > 100 ? "..." : ""));
580
627
  window.location.href = url;
581
628
  }
582
629
  listenForCallback(mode, timeoutMs = 5 * 60 * 1000) {
@@ -655,7 +702,7 @@ class OAuthWindowManager {
655
702
  window.history.replaceState(null, "", window.location.pathname + window.location.search);
656
703
  }
657
704
  } catch (e) {
658
- console.error("Failed to parse OAuth callback params from hash:", e);
705
+ logger2.error("Failed to parse OAuth callback params from hash:", e);
659
706
  }
660
707
  }
661
708
  if (!code && !error) {
@@ -668,7 +715,7 @@ class OAuthWindowManager {
668
715
  sessionStorage.removeItem("oauth_callback_params");
669
716
  }
670
717
  } catch (e) {
671
- console.error("Failed to parse OAuth callback params from sessionStorage:", e);
718
+ logger2.error("Failed to parse OAuth callback params from sessionStorage:", e);
672
719
  }
673
720
  }
674
721
  if (error) {
@@ -701,6 +748,11 @@ class OAuthWindowManager {
701
748
  this.cleanup();
702
749
  }
703
750
  }
751
+ var logger2;
752
+ var init_window_manager = __esm(() => {
753
+ init_logger();
754
+ logger2 = createLogger("OAuthWindowManager");
755
+ });
704
756
 
705
757
  // ../oauth/indexeddb-storage.ts
706
758
  class IndexedDBStorage {
@@ -891,7 +943,7 @@ async function fetchUserEmail(provider, tokenData) {
891
943
  return tokenData.email;
892
944
  }
893
945
  } catch (error) {
894
- console.error(`Failed to fetch email for ${provider}:`, error);
946
+ logger3.error(`Failed to fetch email for ${provider}:`, error);
895
947
  return;
896
948
  }
897
949
  }
@@ -933,7 +985,7 @@ async function fetchGitHubEmail(accessToken) {
933
985
  }
934
986
  return;
935
987
  } catch (error) {
936
- console.error("Failed to fetch GitHub email:", error);
988
+ logger3.error("Failed to fetch GitHub email:", error);
937
989
  return;
938
990
  }
939
991
  }
@@ -950,7 +1002,7 @@ async function fetchGoogleEmail(accessToken) {
950
1002
  const user = await response.json();
951
1003
  return user.email;
952
1004
  } catch (error) {
953
- console.error("Failed to fetch Google email:", error);
1005
+ logger3.error("Failed to fetch Google email:", error);
954
1006
  return;
955
1007
  }
956
1008
  }
@@ -968,10 +1020,15 @@ async function fetchNotionEmail(accessToken) {
968
1020
  const user = await response.json();
969
1021
  return user.person?.email;
970
1022
  } catch (error) {
971
- console.error("Failed to fetch Notion email:", error);
1023
+ logger3.error("Failed to fetch Notion email:", error);
972
1024
  return;
973
1025
  }
974
1026
  }
1027
+ var logger3;
1028
+ var init_email_fetcher = __esm(() => {
1029
+ init_logger();
1030
+ logger3 = createLogger("EmailFetcher");
1031
+ });
975
1032
 
976
1033
  // ../oauth/manager.ts
977
1034
  class OAuthManager {
@@ -1084,7 +1141,7 @@ class OAuthManager {
1084
1141
  try {
1085
1142
  await this.flowConfig.onAuthCallback(pendingAuth.provider, code, state);
1086
1143
  } catch (error) {
1087
- console.error("Custom OAuth callback handler failed:", error);
1144
+ logger4.error("Custom OAuth callback handler failed:", error);
1088
1145
  }
1089
1146
  }
1090
1147
  try {
@@ -1132,20 +1189,20 @@ class OAuthManager {
1132
1189
  try {
1133
1190
  await this.removeTokenCallback(provider, email, context);
1134
1191
  } catch (error) {
1135
- console.error(`Failed to delete token for ${provider} (${email}) from database:`, error);
1192
+ logger4.error(`Failed to delete token for ${provider} (${email}) from database:`, error);
1136
1193
  }
1137
1194
  } else if (this.setTokenCallback) {
1138
1195
  try {
1139
1196
  await this.setTokenCallback(provider, null, email, context);
1140
1197
  } catch (error) {
1141
- console.error(`Failed to delete token for ${provider} (${email}) from database:`, error);
1198
+ logger4.error(`Failed to delete token for ${provider} (${email}) from database:`, error);
1142
1199
  }
1143
1200
  }
1144
1201
  if (!this.setTokenCallback && !this.removeTokenCallback) {
1145
1202
  try {
1146
1203
  await this.indexedDBStorage.deleteToken(provider, email);
1147
1204
  } catch (error) {
1148
- console.error(`Failed to delete token from IndexedDB for ${provider} (${email}):`, error);
1205
+ logger4.error(`Failed to delete token from IndexedDB for ${provider} (${email}):`, error);
1149
1206
  }
1150
1207
  }
1151
1208
  this.providerTokens.delete(provider);
@@ -1155,13 +1212,13 @@ class OAuthManager {
1155
1212
  try {
1156
1213
  await this.removeTokenCallback(provider, undefined, context);
1157
1214
  } catch (error) {
1158
- console.error(`Failed to delete tokens for ${provider} from database:`, error);
1215
+ logger4.error(`Failed to delete tokens for ${provider} from database:`, error);
1159
1216
  }
1160
1217
  } else if (this.setTokenCallback) {
1161
1218
  try {
1162
1219
  await this.setTokenCallback(provider, null, undefined, context);
1163
1220
  } catch (error) {
1164
- console.error(`Failed to delete tokens for ${provider} from database:`, error);
1221
+ logger4.error(`Failed to delete tokens for ${provider} from database:`, error);
1165
1222
  }
1166
1223
  }
1167
1224
  if (!this.setTokenCallback && !this.removeTokenCallback) {
@@ -1194,7 +1251,7 @@ class OAuthManager {
1194
1251
  try {
1195
1252
  return await this.indexedDBStorage.listAccounts(provider);
1196
1253
  } catch (error) {
1197
- console.error(`Failed to list accounts for ${provider}:`, error);
1254
+ logger4.error(`Failed to list accounts for ${provider}:`, error);
1198
1255
  return [];
1199
1256
  }
1200
1257
  }
@@ -1209,7 +1266,7 @@ class OAuthManager {
1209
1266
  }
1210
1267
  return tokenData;
1211
1268
  } catch (error) {
1212
- console.error(`Failed to get token for ${provider} via callback:`, error);
1269
+ logger4.error(`Failed to get token for ${provider} via callback:`, error);
1213
1270
  return;
1214
1271
  }
1215
1272
  }
@@ -1221,7 +1278,7 @@ class OAuthManager {
1221
1278
  }
1222
1279
  return tokenData;
1223
1280
  } catch (error) {
1224
- console.error(`Failed to get token from IndexedDB for ${provider}:`, error);
1281
+ logger4.error(`Failed to get token from IndexedDB for ${provider}:`, error);
1225
1282
  }
1226
1283
  }
1227
1284
  return this.providerTokens.get(provider);
@@ -1249,7 +1306,7 @@ class OAuthManager {
1249
1306
  this.providerTokens.delete(provider);
1250
1307
  if (!this.setTokenCallback && !this.removeTokenCallback && !this.skipLocalStorage) {
1251
1308
  this.indexedDBStorage.deleteTokensByProvider(provider).catch((error) => {
1252
- console.error(`Failed to clear tokens for ${provider} from IndexedDB:`, error);
1309
+ logger4.error(`Failed to clear tokens for ${provider} from IndexedDB:`, error);
1253
1310
  });
1254
1311
  }
1255
1312
  }
@@ -1269,7 +1326,7 @@ class OAuthManager {
1269
1326
  } catch (localStorageError) {}
1270
1327
  }
1271
1328
  this.indexedDBStorage.clearAll().catch((error) => {
1272
- console.error("Failed to clear all tokens from IndexedDB:", error);
1329
+ logger4.error("Failed to clear all tokens from IndexedDB:", error);
1273
1330
  });
1274
1331
  }
1275
1332
  }
@@ -1287,7 +1344,7 @@ class OAuthManager {
1287
1344
  }
1288
1345
  keysToRemove.forEach((key) => window.localStorage.removeItem(key));
1289
1346
  } catch (error) {
1290
- console.error("Failed to clear pending auths from localStorage:", error);
1347
+ logger4.error("Failed to clear pending auths from localStorage:", error);
1291
1348
  }
1292
1349
  }
1293
1350
  }
@@ -1296,7 +1353,7 @@ class OAuthManager {
1296
1353
  try {
1297
1354
  await this.setTokenCallback(provider, tokenData, email, context);
1298
1355
  } catch (error) {
1299
- console.error(`Failed to ${tokenData === null ? "delete" : "save"} token for ${provider} via callback:`, error);
1356
+ logger4.error(`Failed to ${tokenData === null ? "delete" : "save"} token for ${provider} via callback:`, error);
1300
1357
  throw error;
1301
1358
  }
1302
1359
  return;
@@ -1337,10 +1394,10 @@ class OAuthManager {
1337
1394
  const key = `integrate_token_${provider}`;
1338
1395
  window.localStorage.setItem(key, JSON.stringify(tokenData));
1339
1396
  } catch (localStorageError) {
1340
- console.error(`Failed to save token for ${provider} to localStorage:`, localStorageError);
1397
+ logger4.error(`Failed to save token for ${provider} to localStorage:`, localStorageError);
1341
1398
  }
1342
1399
  } else {
1343
- console.error(`Failed to save token for ${provider} to IndexedDB:`, error);
1400
+ logger4.error(`Failed to save token for ${provider} to IndexedDB:`, error);
1344
1401
  }
1345
1402
  }
1346
1403
  } else {
@@ -1349,7 +1406,7 @@ class OAuthManager {
1349
1406
  const key = `integrate_token_${provider}`;
1350
1407
  window.localStorage.setItem(key, JSON.stringify(tokenData));
1351
1408
  } catch (localStorageError) {
1352
- console.error(`Failed to save token for ${provider} to localStorage:`, localStorageError);
1409
+ logger4.error(`Failed to save token for ${provider} to localStorage:`, localStorageError);
1353
1410
  }
1354
1411
  }
1355
1412
  }
@@ -1359,7 +1416,7 @@ class OAuthManager {
1359
1416
  try {
1360
1417
  return await this.getTokenCallback(provider, email, context);
1361
1418
  } catch (error) {
1362
- console.error(`Failed to load token for ${provider} via callback:`, error);
1419
+ logger4.error(`Failed to load token for ${provider} via callback:`, error);
1363
1420
  return;
1364
1421
  }
1365
1422
  }
@@ -1436,7 +1493,7 @@ class OAuthManager {
1436
1493
  const key = `integrate_oauth_pending_${state}`;
1437
1494
  window.localStorage.setItem(key, JSON.stringify(pendingAuth));
1438
1495
  } catch (error) {
1439
- console.error("Failed to save pending auth to localStorage:", error);
1496
+ logger4.error("Failed to save pending auth to localStorage:", error);
1440
1497
  }
1441
1498
  }
1442
1499
  }
@@ -1449,7 +1506,7 @@ class OAuthManager {
1449
1506
  return JSON.parse(stored);
1450
1507
  }
1451
1508
  } catch (error) {
1452
- console.error("Failed to load pending auth from localStorage:", error);
1509
+ logger4.error("Failed to load pending auth from localStorage:", error);
1453
1510
  }
1454
1511
  }
1455
1512
  return;
@@ -1460,7 +1517,7 @@ class OAuthManager {
1460
1517
  const key = `integrate_oauth_pending_${state}`;
1461
1518
  window.localStorage.removeItem(key);
1462
1519
  } catch (error) {
1463
- console.error("Failed to remove pending auth from localStorage:", error);
1520
+ logger4.error("Failed to remove pending auth from localStorage:", error);
1464
1521
  }
1465
1522
  }
1466
1523
  }
@@ -1489,7 +1546,7 @@ class OAuthManager {
1489
1546
  }
1490
1547
  keysToRemove.forEach((key) => window.localStorage.removeItem(key));
1491
1548
  } catch (error) {
1492
- console.error("Failed to cleanup expired pending auths:", error);
1549
+ logger4.error("Failed to cleanup expired pending auths:", error);
1493
1550
  }
1494
1551
  }
1495
1552
  }
@@ -1557,7 +1614,13 @@ class OAuthManager {
1557
1614
  this.windowManager.close();
1558
1615
  }
1559
1616
  }
1560
- var init_manager = () => {};
1617
+ var logger4;
1618
+ var init_manager = __esm(() => {
1619
+ init_window_manager();
1620
+ init_email_fetcher();
1621
+ init_logger();
1622
+ logger4 = createLogger("OAuth");
1623
+ });
1561
1624
 
1562
1625
  // ../client.ts
1563
1626
  class SimpleEventEmitter {
@@ -1581,7 +1644,7 @@ class SimpleEventEmitter {
1581
1644
  try {
1582
1645
  handler(payload);
1583
1646
  } catch (error) {
1584
- console.error(`Error in event handler for ${event}:`, error);
1647
+ logger5.error(`Error in event handler for ${event}:`, error);
1585
1648
  }
1586
1649
  });
1587
1650
  }
@@ -1673,7 +1736,7 @@ class MCPClientBase {
1673
1736
  this.authState.set(provider, { authenticated: !!tokenData });
1674
1737
  }
1675
1738
  } catch (error) {
1676
- console.error(`Failed to check token for ${provider}:`, error);
1739
+ logger5.error(`Failed to check token for ${provider}:`, error);
1677
1740
  const currentState = this.authState.get(provider);
1678
1741
  if (currentState && !currentState.authenticated && !currentState.lastError) {
1679
1742
  this.authState.set(provider, { authenticated: false });
@@ -1682,7 +1745,7 @@ class MCPClientBase {
1682
1745
  }
1683
1746
  }
1684
1747
  }).catch((error) => {
1685
- console.error("Failed to load provider tokens:", error);
1748
+ logger5.error("Failed to load provider tokens:", error);
1686
1749
  });
1687
1750
  } else {
1688
1751
  this.oauthManager.loadAllProviderTokensSync(providers);
@@ -1845,7 +1908,7 @@ class MCPClientBase {
1845
1908
  this.availableTools.set(tool.name, tool);
1846
1909
  }
1847
1910
  const enabledTools = response.tools.filter((tool) => this.enabledToolNames.has(tool.name));
1848
- console.log(`Discovered ${response.tools.length} tools, ${enabledTools.length} enabled by integrations`);
1911
+ logger5.debug(`Discovered ${response.tools.length} tools, ${enabledTools.length} enabled by integrations`);
1849
1912
  }
1850
1913
  async _callToolByName(name, args, options) {
1851
1914
  return await this.callToolWithRetry(name, args, 0, options);
@@ -2238,12 +2301,14 @@ class MCPClientBase {
2238
2301
  return success;
2239
2302
  }
2240
2303
  }
2241
- var MCP_SERVER_URL = "https://mcp.integrate.dev/api/v1/mcp", clientCache, cleanupClients;
2304
+ var MCP_SERVER_URL = "https://mcp.integrate.dev/api/v1/mcp", logger5, clientCache, cleanupClients;
2242
2305
  var init_client = __esm(() => {
2243
2306
  init_http_session();
2244
2307
  init_messages();
2245
2308
  init_errors();
2309
+ init_logger();
2246
2310
  init_manager();
2311
+ logger5 = createLogger("MCPClient");
2247
2312
  clientCache = new Map;
2248
2313
  cleanupClients = new Set;
2249
2314
  });
@@ -2330,15 +2395,17 @@ function githubIntegration(config = {}) {
2330
2395
  tools: [...GITHUB_TOOLS],
2331
2396
  oauth,
2332
2397
  async onInit(_client) {
2333
- console.log("GitHub integration initialized");
2398
+ logger6.debug("GitHub integration initialized");
2334
2399
  },
2335
2400
  async onAfterConnect(_client) {
2336
- console.log("GitHub integration connected");
2401
+ logger6.debug("GitHub integration connected");
2337
2402
  }
2338
2403
  };
2339
2404
  }
2340
- var GITHUB_TOOLS;
2405
+ var logger6, GITHUB_TOOLS;
2341
2406
  var init_github = __esm(() => {
2407
+ init_logger();
2408
+ logger6 = createLogger("GitHub");
2342
2409
  GITHUB_TOOLS = [
2343
2410
  "github_create_issue",
2344
2411
  "github_list_issues",
@@ -2381,15 +2448,17 @@ function gmailIntegration(config = {}) {
2381
2448
  tools: [...GMAIL_TOOLS],
2382
2449
  oauth,
2383
2450
  async onInit(_client) {
2384
- console.log("Gmail integration initialized");
2451
+ logger7.debug("Gmail integration initialized");
2385
2452
  },
2386
2453
  async onAfterConnect(_client) {
2387
- console.log("Gmail integration connected");
2454
+ logger7.debug("Gmail integration connected");
2388
2455
  }
2389
2456
  };
2390
2457
  }
2391
- var GMAIL_TOOLS;
2458
+ var logger7, GMAIL_TOOLS;
2392
2459
  var init_gmail = __esm(() => {
2460
+ init_logger();
2461
+ logger7 = createLogger("Gmail");
2393
2462
  GMAIL_TOOLS = [
2394
2463
  "gmail_send_message",
2395
2464
  "gmail_list_messages",
@@ -2418,15 +2487,17 @@ function notionIntegration(config = {}) {
2418
2487
  tools: [...NOTION_TOOLS],
2419
2488
  oauth,
2420
2489
  async onInit(_client) {
2421
- console.log("Notion integration initialized");
2490
+ logger8.debug("Notion integration initialized");
2422
2491
  },
2423
2492
  async onAfterConnect(_client) {
2424
- console.log("Notion integration connected");
2493
+ logger8.debug("Notion integration connected");
2425
2494
  }
2426
2495
  };
2427
2496
  }
2428
- var NOTION_TOOLS;
2497
+ var logger8, NOTION_TOOLS;
2429
2498
  var init_notion = __esm(() => {
2499
+ init_logger();
2500
+ logger8 = createLogger("Notion");
2430
2501
  NOTION_TOOLS = [
2431
2502
  "notion_search",
2432
2503
  "notion_get_page"
@@ -2450,15 +2521,17 @@ function slackIntegration(config = {}) {
2450
2521
  tools: [...SLACK_TOOLS],
2451
2522
  oauth,
2452
2523
  async onInit(_client) {
2453
- console.log("Slack integration initialized");
2524
+ logger9.debug("Slack integration initialized");
2454
2525
  },
2455
2526
  async onAfterConnect(_client) {
2456
- console.log("Slack integration connected");
2527
+ logger9.debug("Slack integration connected");
2457
2528
  }
2458
2529
  };
2459
2530
  }
2460
- var SLACK_TOOLS;
2531
+ var logger9, SLACK_TOOLS;
2461
2532
  var init_slack = __esm(() => {
2533
+ init_logger();
2534
+ logger9 = createLogger("Slack");
2462
2535
  SLACK_TOOLS = [
2463
2536
  "slack_send_message",
2464
2537
  "slack_list_channels",
@@ -2489,15 +2562,17 @@ function linearIntegration(config = {}) {
2489
2562
  tools: [...LINEAR_TOOLS],
2490
2563
  oauth,
2491
2564
  async onInit(_client) {
2492
- console.log("Linear integration initialized");
2565
+ logger10.debug("Linear integration initialized");
2493
2566
  },
2494
2567
  async onAfterConnect(_client) {
2495
- console.log("Linear integration connected");
2568
+ logger10.debug("Linear integration connected");
2496
2569
  }
2497
2570
  };
2498
2571
  }
2499
- var LINEAR_TOOLS;
2572
+ var logger10, LINEAR_TOOLS;
2500
2573
  var init_linear = __esm(() => {
2574
+ init_logger();
2575
+ logger10 = createLogger("Linear");
2501
2576
  LINEAR_TOOLS = [
2502
2577
  "linear_create_issue",
2503
2578
  "linear_list_issues",
@@ -2528,15 +2603,17 @@ function vercelIntegration(config = {}) {
2528
2603
  tools: [...VERCEL_TOOLS],
2529
2604
  oauth,
2530
2605
  async onInit(_client) {
2531
- console.log("Vercel integration initialized");
2606
+ logger11.debug("Vercel integration initialized");
2532
2607
  },
2533
2608
  async onAfterConnect(_client) {
2534
- console.log("Vercel integration connected");
2609
+ logger11.debug("Vercel integration connected");
2535
2610
  }
2536
2611
  };
2537
2612
  }
2538
- var VERCEL_TOOLS;
2613
+ var logger11, VERCEL_TOOLS;
2539
2614
  var init_vercel = __esm(() => {
2615
+ init_logger();
2616
+ logger11 = createLogger("Vercel");
2540
2617
  VERCEL_TOOLS = [
2541
2618
  "vercel_list_projects",
2542
2619
  "vercel_get_project",
@@ -2568,15 +2645,17 @@ function zendeskIntegration(config = {}) {
2568
2645
  tools: [...ZENDESK_TOOLS],
2569
2646
  oauth,
2570
2647
  async onInit(_client) {
2571
- console.log("Zendesk integration initialized");
2648
+ logger12.debug("Zendesk integration initialized");
2572
2649
  },
2573
2650
  async onAfterConnect(_client) {
2574
- console.log("Zendesk integration connected");
2651
+ logger12.debug("Zendesk integration connected");
2575
2652
  }
2576
2653
  };
2577
2654
  }
2578
- var ZENDESK_TOOLS;
2655
+ var logger12, ZENDESK_TOOLS;
2579
2656
  var init_zendesk = __esm(() => {
2657
+ init_logger();
2658
+ logger12 = createLogger("Zendesk");
2580
2659
  ZENDESK_TOOLS = [
2581
2660
  "zendesk_list_tickets",
2582
2661
  "zendesk_get_ticket",
@@ -2607,15 +2686,17 @@ function stripeIntegration(config = {}) {
2607
2686
  tools: [...STRIPE_TOOLS],
2608
2687
  oauth,
2609
2688
  async onInit(_client) {
2610
- console.log("Stripe integration initialized");
2689
+ logger13.debug("Stripe integration initialized");
2611
2690
  },
2612
2691
  async onAfterConnect(_client) {
2613
- console.log("Stripe integration connected");
2692
+ logger13.debug("Stripe integration connected");
2614
2693
  }
2615
2694
  };
2616
2695
  }
2617
- var STRIPE_TOOLS;
2696
+ var logger13, STRIPE_TOOLS;
2618
2697
  var init_stripe = __esm(() => {
2698
+ init_logger();
2699
+ logger13 = createLogger("Stripe");
2619
2700
  STRIPE_TOOLS = [
2620
2701
  "stripe_list_customers",
2621
2702
  "stripe_get_customer",
@@ -2646,15 +2727,17 @@ function gcalIntegration(config = {}) {
2646
2727
  tools: [...GCAL_TOOLS],
2647
2728
  oauth,
2648
2729
  async onInit(_client) {
2649
- console.log("Google Calendar integration initialized");
2730
+ logger14.debug("Google Calendar integration initialized");
2650
2731
  },
2651
2732
  async onAfterConnect(_client) {
2652
- console.log("Google Calendar integration connected");
2733
+ logger14.debug("Google Calendar integration connected");
2653
2734
  }
2654
2735
  };
2655
2736
  }
2656
- var GCAL_TOOLS;
2737
+ var logger14, GCAL_TOOLS;
2657
2738
  var init_gcal = __esm(() => {
2739
+ init_logger();
2740
+ logger14 = createLogger("Google Calendar");
2658
2741
  GCAL_TOOLS = [
2659
2742
  "gcal_list_calendars",
2660
2743
  "gcal_get_calendar",
@@ -2685,15 +2768,17 @@ function outlookIntegration(config = {}) {
2685
2768
  tools: [...OUTLOOK_TOOLS],
2686
2769
  oauth,
2687
2770
  async onInit(_client) {
2688
- console.log("Outlook integration initialized");
2771
+ logger15.debug("Outlook integration initialized");
2689
2772
  },
2690
2773
  async onAfterConnect(_client) {
2691
- console.log("Outlook integration connected");
2774
+ logger15.debug("Outlook integration connected");
2692
2775
  }
2693
2776
  };
2694
2777
  }
2695
- var OUTLOOK_TOOLS;
2778
+ var logger15, OUTLOOK_TOOLS;
2696
2779
  var init_outlook = __esm(() => {
2780
+ init_logger();
2781
+ logger15 = createLogger("Outlook");
2697
2782
  OUTLOOK_TOOLS = [
2698
2783
  "outlook_list_messages",
2699
2784
  "outlook_get_message",
@@ -2724,15 +2809,17 @@ function airtableIntegration(config = {}) {
2724
2809
  tools: [...AIRTABLE_TOOLS],
2725
2810
  oauth,
2726
2811
  async onInit(_client) {
2727
- console.log("Airtable integration initialized");
2812
+ logger16.debug("Airtable integration initialized");
2728
2813
  },
2729
2814
  async onAfterConnect(_client) {
2730
- console.log("Airtable integration connected");
2815
+ logger16.debug("Airtable integration connected");
2731
2816
  }
2732
2817
  };
2733
2818
  }
2734
- var AIRTABLE_TOOLS;
2819
+ var logger16, AIRTABLE_TOOLS;
2735
2820
  var init_airtable = __esm(() => {
2821
+ init_logger();
2822
+ logger16 = createLogger("Airtable");
2736
2823
  AIRTABLE_TOOLS = [
2737
2824
  "airtable_list_bases",
2738
2825
  "airtable_get_base",
@@ -2763,15 +2850,17 @@ function todoistIntegration(config = {}) {
2763
2850
  tools: [...TODOIST_TOOLS],
2764
2851
  oauth,
2765
2852
  async onInit(_client) {
2766
- console.log("Todoist integration initialized");
2853
+ logger17.debug("Todoist integration initialized");
2767
2854
  },
2768
2855
  async onAfterConnect(_client) {
2769
- console.log("Todoist integration connected");
2856
+ logger17.debug("Todoist integration connected");
2770
2857
  }
2771
2858
  };
2772
2859
  }
2773
- var TODOIST_TOOLS;
2860
+ var logger17, TODOIST_TOOLS;
2774
2861
  var init_todoist = __esm(() => {
2862
+ init_logger();
2863
+ logger17 = createLogger("Todoist");
2775
2864
  TODOIST_TOOLS = [
2776
2865
  "todoist_list_projects",
2777
2866
  "todoist_get_project",
@@ -2803,15 +2892,17 @@ function whatsappIntegration(config = {}) {
2803
2892
  tools: [...WHATSAPP_TOOLS],
2804
2893
  oauth,
2805
2894
  async onInit(_client) {
2806
- console.log("WhatsApp Business integration initialized");
2895
+ logger18.debug("WhatsApp Business integration initialized");
2807
2896
  },
2808
2897
  async onAfterConnect(_client) {
2809
- console.log("WhatsApp Business integration connected");
2898
+ logger18.debug("WhatsApp Business integration connected");
2810
2899
  }
2811
2900
  };
2812
2901
  }
2813
- var WHATSAPP_TOOLS;
2902
+ var logger18, WHATSAPP_TOOLS;
2814
2903
  var init_whatsapp = __esm(() => {
2904
+ init_logger();
2905
+ logger18 = createLogger("WhatsApp");
2815
2906
  WHATSAPP_TOOLS = [
2816
2907
  "whatsapp_send_message",
2817
2908
  "whatsapp_send_template",
@@ -2842,15 +2933,17 @@ function calcomIntegration(config = {}) {
2842
2933
  tools: [...CALCOM_TOOLS],
2843
2934
  oauth,
2844
2935
  async onInit(_client) {
2845
- console.log("Cal.com integration initialized");
2936
+ logger19.debug("Cal.com integration initialized");
2846
2937
  },
2847
2938
  async onAfterConnect(_client) {
2848
- console.log("Cal.com integration connected");
2939
+ logger19.debug("Cal.com integration connected");
2849
2940
  }
2850
2941
  };
2851
2942
  }
2852
- var CALCOM_TOOLS;
2943
+ var logger19, CALCOM_TOOLS;
2853
2944
  var init_calcom = __esm(() => {
2945
+ init_logger();
2946
+ logger19 = createLogger("Cal.com");
2854
2947
  CALCOM_TOOLS = [
2855
2948
  "calcom_list_bookings",
2856
2949
  "calcom_get_booking",
@@ -2882,15 +2975,17 @@ function rampIntegration(config = {}) {
2882
2975
  tools: [...RAMP_TOOLS],
2883
2976
  oauth,
2884
2977
  async onInit(_client) {
2885
- console.log("Ramp integration initialized");
2978
+ logger20.debug("Ramp integration initialized");
2886
2979
  },
2887
2980
  async onAfterConnect(_client) {
2888
- console.log("Ramp integration connected");
2981
+ logger20.debug("Ramp integration connected");
2889
2982
  }
2890
2983
  };
2891
2984
  }
2892
- var RAMP_TOOLS;
2985
+ var logger20, RAMP_TOOLS;
2893
2986
  var init_ramp = __esm(() => {
2987
+ init_logger();
2988
+ logger20 = createLogger("Ramp");
2894
2989
  RAMP_TOOLS = [
2895
2990
  "ramp_list_transactions",
2896
2991
  "ramp_get_transaction",
@@ -2921,15 +3016,17 @@ function onedriveIntegration(config = {}) {
2921
3016
  tools: [...ONEDRIVE_TOOLS],
2922
3017
  oauth,
2923
3018
  async onInit(_client) {
2924
- console.log("OneDrive integration initialized");
3019
+ logger21.debug("OneDrive integration initialized");
2925
3020
  },
2926
3021
  async onAfterConnect(_client) {
2927
- console.log("OneDrive integration connected");
3022
+ logger21.debug("OneDrive integration connected");
2928
3023
  }
2929
3024
  };
2930
3025
  }
2931
- var ONEDRIVE_TOOLS;
3026
+ var logger21, ONEDRIVE_TOOLS;
2932
3027
  var init_onedrive = __esm(() => {
3028
+ init_logger();
3029
+ logger21 = createLogger("OneDrive");
2933
3030
  ONEDRIVE_TOOLS = [
2934
3031
  "onedrive_list_files",
2935
3032
  "onedrive_get_file",
@@ -2968,15 +3065,17 @@ function gworkspaceIntegration(config = {}) {
2968
3065
  tools: [...GWORKSPACE_TOOLS],
2969
3066
  oauth,
2970
3067
  async onInit(_client) {
2971
- console.log("Google Workspace integration initialized");
3068
+ logger22.debug("Google Workspace integration initialized");
2972
3069
  },
2973
3070
  async onAfterConnect(_client) {
2974
- console.log("Google Workspace integration connected");
3071
+ logger22.debug("Google Workspace integration connected");
2975
3072
  }
2976
3073
  };
2977
3074
  }
2978
- var GWORKSPACE_TOOLS;
3075
+ var logger22, GWORKSPACE_TOOLS;
2979
3076
  var init_gworkspace = __esm(() => {
3077
+ init_logger();
3078
+ logger22 = createLogger("Google Workspace");
2980
3079
  GWORKSPACE_TOOLS = [
2981
3080
  "gworkspace_sheets_list",
2982
3081
  "gworkspace_sheets_get",
@@ -3011,15 +3110,17 @@ function polarIntegration(config = {}) {
3011
3110
  tools: [...POLAR_TOOLS],
3012
3111
  oauth,
3013
3112
  async onInit(_client) {
3014
- console.log("Polar integration initialized");
3113
+ logger23.debug("Polar integration initialized");
3015
3114
  },
3016
3115
  async onAfterConnect(_client) {
3017
- console.log("Polar integration connected");
3116
+ logger23.debug("Polar integration connected");
3018
3117
  }
3019
3118
  };
3020
3119
  }
3021
- var POLAR_TOOLS;
3120
+ var logger23, POLAR_TOOLS;
3022
3121
  var init_polar = __esm(() => {
3122
+ init_logger();
3123
+ logger23 = createLogger("Polar");
3023
3124
  POLAR_TOOLS = [
3024
3125
  "polar_list_products",
3025
3126
  "polar_get_product",
@@ -3050,15 +3151,17 @@ function figmaIntegration(config = {}) {
3050
3151
  tools: [...FIGMA_TOOLS],
3051
3152
  oauth,
3052
3153
  async onInit(_client) {
3053
- console.log("Figma integration initialized");
3154
+ logger24.debug("Figma integration initialized");
3054
3155
  },
3055
3156
  async onAfterConnect(_client) {
3056
- console.log("Figma integration connected");
3157
+ logger24.debug("Figma integration connected");
3057
3158
  }
3058
3159
  };
3059
3160
  }
3060
- var FIGMA_TOOLS;
3161
+ var logger24, FIGMA_TOOLS;
3061
3162
  var init_figma = __esm(() => {
3163
+ init_logger();
3164
+ logger24 = createLogger("Figma");
3062
3165
  FIGMA_TOOLS = [
3063
3166
  "figma_get_file",
3064
3167
  "figma_get_file_nodes",
@@ -3089,15 +3192,17 @@ function intercomIntegration(config = {}) {
3089
3192
  tools: [...INTERCOM_TOOLS],
3090
3193
  oauth,
3091
3194
  async onInit(_client) {
3092
- console.log("Intercom integration initialized");
3195
+ logger25.debug("Intercom integration initialized");
3093
3196
  },
3094
3197
  async onAfterConnect(_client) {
3095
- console.log("Intercom integration connected");
3198
+ logger25.debug("Intercom integration connected");
3096
3199
  }
3097
3200
  };
3098
3201
  }
3099
- var INTERCOM_TOOLS;
3202
+ var logger25, INTERCOM_TOOLS;
3100
3203
  var init_intercom = __esm(() => {
3204
+ init_logger();
3205
+ logger25 = createLogger("Intercom");
3101
3206
  INTERCOM_TOOLS = [
3102
3207
  "intercom_list_contacts",
3103
3208
  "intercom_get_contact",
@@ -3136,15 +3241,17 @@ function hubspotIntegration(config = {}) {
3136
3241
  tools: [...HUBSPOT_TOOLS],
3137
3242
  oauth,
3138
3243
  async onInit(_client) {
3139
- console.log("HubSpot integration initialized");
3244
+ logger26.debug("HubSpot integration initialized");
3140
3245
  },
3141
3246
  async onAfterConnect(_client) {
3142
- console.log("HubSpot integration connected");
3247
+ logger26.debug("HubSpot integration connected");
3143
3248
  }
3144
3249
  };
3145
3250
  }
3146
- var HUBSPOT_TOOLS;
3251
+ var logger26, HUBSPOT_TOOLS;
3147
3252
  var init_hubspot = __esm(() => {
3253
+ init_logger();
3254
+ logger26 = createLogger("HubSpot");
3148
3255
  HUBSPOT_TOOLS = [
3149
3256
  "hubspot_list_contacts",
3150
3257
  "hubspot_get_contact",
@@ -3178,15 +3285,17 @@ function youtubeIntegration(config = {}) {
3178
3285
  tools: [...YOUTUBE_TOOLS],
3179
3286
  oauth,
3180
3287
  async onInit(_client) {
3181
- console.log("YouTube integration initialized");
3288
+ logger27.debug("YouTube integration initialized");
3182
3289
  },
3183
3290
  async onAfterConnect(_client) {
3184
- console.log("YouTube integration connected");
3291
+ logger27.debug("YouTube integration connected");
3185
3292
  }
3186
3293
  };
3187
3294
  }
3188
- var YOUTUBE_TOOLS;
3295
+ var logger27, YOUTUBE_TOOLS;
3189
3296
  var init_youtube = __esm(() => {
3297
+ init_logger();
3298
+ logger27 = createLogger("YouTube");
3190
3299
  YOUTUBE_TOOLS = [
3191
3300
  "youtube_search",
3192
3301
  "youtube_get_video",
@@ -3206,15 +3315,17 @@ function cursorIntegration(_config = {}) {
3206
3315
  id: "cursor",
3207
3316
  tools: [...CURSOR_TOOLS],
3208
3317
  async onInit(_client) {
3209
- console.log("Cursor integration initialized");
3318
+ logger28.debug("Cursor integration initialized");
3210
3319
  },
3211
3320
  async onAfterConnect(_client) {
3212
- console.log("Cursor integration connected");
3321
+ logger28.debug("Cursor integration connected");
3213
3322
  }
3214
3323
  };
3215
3324
  }
3216
- var CURSOR_TOOLS;
3325
+ var logger28, CURSOR_TOOLS;
3217
3326
  var init_cursor = __esm(() => {
3327
+ init_logger();
3328
+ logger28 = createLogger("Cursor");
3218
3329
  CURSOR_TOOLS = [
3219
3330
  "cursor_list_agents",
3220
3331
  "cursor_get_agent",
@@ -9062,6 +9173,7 @@ var init_zodToJsonSchema = __esm(() => {
9062
9173
 
9063
9174
  // ../../node_modules/zod-to-json-schema/dist/esm/index.js
9064
9175
  var init_esm = __esm(() => {
9176
+ init_zodToJsonSchema();
9065
9177
  init_Options();
9066
9178
  init_Refs();
9067
9179
  init_parseDef();
@@ -9093,7 +9205,6 @@ var init_esm = __esm(() => {
9093
9205
  init_unknown();
9094
9206
  init_selectParser();
9095
9207
  init_zodToJsonSchema();
9096
- init_zodToJsonSchema();
9097
9208
  });
9098
9209
 
9099
9210
  // ../ai/openai.ts
@@ -9578,6 +9689,7 @@ function getDefaultRedirectUri() {
9578
9689
  return "http://localhost:3000/api/integrate/oauth/callback";
9579
9690
  }
9580
9691
  function createMCPServer(config) {
9692
+ setLogLevel(config.debug ? "debug" : "error");
9581
9693
  if (typeof window !== "undefined") {
9582
9694
  throw new Error("createMCPServer() should only be called on the server-side. " + "Use createMCPClient() for client-side code.");
9583
9695
  }
@@ -9586,7 +9698,7 @@ function createMCPServer(config) {
9586
9698
  if (integration.oauth) {
9587
9699
  const { clientId, clientSecret, redirectUri: integrationRedirectUri, config: oauthConfig } = integration.oauth;
9588
9700
  if (!clientId || !clientSecret) {
9589
- console.warn(`Warning: Integration "${integration.id}" is missing OAuth credentials. ` + `Provide clientId and clientSecret in the integration configuration.`);
9701
+ logger29.warn(`Warning: Integration "${integration.id}" is missing OAuth credentials. ` + `Provide clientId and clientSecret in the integration configuration.`);
9590
9702
  return integration;
9591
9703
  }
9592
9704
  const redirectUri = integrationRedirectUri || config.redirectUri || getDefaultRedirectUri();
@@ -9699,7 +9811,7 @@ function createMCPServer(config) {
9699
9811
  const body = await webRequest.json();
9700
9812
  const authHeader = webRequest.headers.get("authorization");
9701
9813
  const integrationsHeader = webRequest.headers.get("x-integrations");
9702
- const { OAuthHandler } = await Promise.resolve().then(() => exports_base_handler);
9814
+ const { OAuthHandler } = await Promise.resolve().then(() => (init_base_handler(), exports_base_handler));
9703
9815
  const oauthHandler = new OAuthHandler({
9704
9816
  providers,
9705
9817
  serverUrl: config.serverUrl,
@@ -9715,7 +9827,7 @@ function createMCPServer(config) {
9715
9827
  }
9716
9828
  return response2;
9717
9829
  } catch (error) {
9718
- console.error("[MCP Tool Call] Error:", error);
9830
+ logger29.error("[MCP Tool Call] Error:", error);
9719
9831
  return Response.json({ error: error.message || "Failed to execute tool call" }, { status: error.statusCode || 500 });
9720
9832
  }
9721
9833
  }
@@ -9779,7 +9891,7 @@ function createMCPServer(config) {
9779
9891
  })
9780
9892
  });
9781
9893
  } catch (scheduleError) {
9782
- console.error("[Trigger] Failed to register with scheduler:", scheduleError);
9894
+ logger29.error("[Trigger] Failed to register with scheduler:", scheduleError);
9783
9895
  }
9784
9896
  return Response.json(created, { status: 201 });
9785
9897
  }
@@ -9814,7 +9926,7 @@ function createMCPServer(config) {
9814
9926
  body: JSON.stringify({ triggerId })
9815
9927
  });
9816
9928
  } catch (error) {
9817
- console.error("[Trigger] Failed to pause in scheduler:", error);
9929
+ logger29.error("[Trigger] Failed to pause in scheduler:", error);
9818
9930
  }
9819
9931
  return Response.json(updated);
9820
9932
  } else if (subAction === "resume" && method === "POST") {
@@ -9842,7 +9954,7 @@ function createMCPServer(config) {
9842
9954
  body: JSON.stringify({ triggerId })
9843
9955
  });
9844
9956
  } catch (error) {
9845
- console.error("[Trigger] Failed to resume in scheduler:", error);
9957
+ logger29.error("[Trigger] Failed to resume in scheduler:", error);
9846
9958
  }
9847
9959
  return Response.json(updated);
9848
9960
  } else if (subAction === "run" && method === "POST") {
@@ -9857,7 +9969,7 @@ function createMCPServer(config) {
9857
9969
  if (!providerToken) {
9858
9970
  return Response.json({ error: "No OAuth token available for this trigger" }, { status: 401 });
9859
9971
  }
9860
- const { OAuthHandler } = await Promise.resolve().then(() => exports_base_handler);
9972
+ const { OAuthHandler } = await Promise.resolve().then(() => (init_base_handler(), exports_base_handler));
9861
9973
  const oauthHandler = new OAuthHandler({
9862
9974
  providers,
9863
9975
  serverUrl: config.serverUrl,
@@ -9983,7 +10095,7 @@ function createMCPServer(config) {
9983
10095
  })
9984
10096
  });
9985
10097
  } catch (error) {
9986
- console.error("[Trigger] Failed to update scheduler:", error);
10098
+ logger29.error("[Trigger] Failed to update scheduler:", error);
9987
10099
  }
9988
10100
  }
9989
10101
  return Response.json(updated);
@@ -10000,14 +10112,14 @@ function createMCPServer(config) {
10000
10112
  body: JSON.stringify({ triggerId })
10001
10113
  });
10002
10114
  } catch (error) {
10003
- console.error("[Trigger] Failed to unregister from scheduler:", error);
10115
+ logger29.error("[Trigger] Failed to unregister from scheduler:", error);
10004
10116
  }
10005
10117
  return new Response(null, { status: 204 });
10006
10118
  }
10007
10119
  }
10008
10120
  return Response.json({ error: "Invalid trigger route or method" }, { status: 404 });
10009
10121
  } catch (error) {
10010
- console.error("[Trigger] Error:", error);
10122
+ logger29.error("[Trigger] Error:", error);
10011
10123
  return Response.json({ error: error.message || "Failed to process trigger request" }, { status: error.statusCode || 500 });
10012
10124
  }
10013
10125
  }
@@ -10033,11 +10145,11 @@ function createMCPServer(config) {
10033
10145
  const errorRedirectUrl = "/auth-error";
10034
10146
  if (error) {
10035
10147
  const errorMsg = errorDescription || error;
10036
- console.error("[OAuth Redirect] Error:", errorMsg);
10148
+ logger29.error("[OAuth Redirect] Error:", errorMsg);
10037
10149
  return Response.redirect(new URL(`${errorRedirectUrl}?error=${encodeURIComponent(errorMsg)}`, webRequest.url));
10038
10150
  }
10039
10151
  if (!code || !state) {
10040
- console.error("[OAuth Redirect] Missing code or state parameter");
10152
+ logger29.error("[OAuth Redirect] Missing code or state parameter");
10041
10153
  return Response.redirect(new URL(`${errorRedirectUrl}?error=${encodeURIComponent("Invalid OAuth callback")}`, webRequest.url));
10042
10154
  }
10043
10155
  let returnUrl = defaultRedirectUrl;
@@ -10069,7 +10181,7 @@ function createMCPServer(config) {
10069
10181
  if (codeVerifierEntry) {
10070
10182
  try {
10071
10183
  const { codeVerifier, provider, frontendOrigin: storedFrontendOrigin } = codeVerifierEntry;
10072
- const { OAuthHandler } = await Promise.resolve().then(() => exports_base_handler);
10184
+ const { OAuthHandler } = await Promise.resolve().then(() => (init_base_handler(), exports_base_handler));
10073
10185
  const oauthHandler = new OAuthHandler({
10074
10186
  providers,
10075
10187
  serverUrl: config.serverUrl,
@@ -10113,7 +10225,7 @@ function createMCPServer(config) {
10113
10225
  frontendUrl.hash = `oauth_callback=${encodeURIComponent(JSON.stringify({ code, state, tokenData }))}`;
10114
10226
  return Response.redirect(frontendUrl);
10115
10227
  } catch (error2) {
10116
- console.error("[OAuth Backend Callback] Error:", error2);
10228
+ logger29.error("[OAuth Backend Callback] Error:", error2);
10117
10229
  return Response.redirect(new URL(`${errorRedirectUrl}?error=${encodeURIComponent(error2.message || "Failed to exchange token")}`, webRequest.url));
10118
10230
  }
10119
10231
  } else {
@@ -10332,7 +10444,7 @@ function toSvelteKitHandler(clientOrHandlerOrOptions, _redirectOptions) {
10332
10444
  }
10333
10445
  };
10334
10446
  }
10335
- var globalServerConfig = null, codeVerifierStorage, POST = async (req, context) => {
10447
+ var logger29, globalServerConfig = null, codeVerifierStorage, POST = async (req, context) => {
10336
10448
  if (!globalServerConfig) {
10337
10449
  return Response.json({ error: "OAuth not configured. Call createMCPServer() in your server initialization file first." }, { status: 500 });
10338
10450
  }
@@ -10350,6 +10462,7 @@ var globalServerConfig = null, codeVerifierStorage, POST = async (req, context)
10350
10462
  var init_server = __esm(() => {
10351
10463
  init_client();
10352
10464
  init_nextjs();
10465
+ init_logger();
10353
10466
  init_github();
10354
10467
  init_gmail();
10355
10468
  init_notion();
@@ -10379,6 +10492,7 @@ var init_server = __esm(() => {
10379
10492
  init_anthropic();
10380
10493
  init_google();
10381
10494
  init_ai();
10495
+ logger29 = createLogger("MCPServer");
10382
10496
  codeVerifierStorage = new Map;
10383
10497
  });
10384
10498
 
@@ -10877,11 +10991,11 @@ class OAuthHandler {
10877
10991
  try {
10878
10992
  await this.config.removeProviderToken(request.provider, undefined, context);
10879
10993
  } catch (error) {
10880
- console.error(`Failed to delete token for ${request.provider} from database via removeProviderToken:`, error);
10994
+ logger30.error(`Failed to delete token for ${request.provider} from database via removeProviderToken:`, error);
10881
10995
  }
10882
10996
  }
10883
10997
  } catch (error) {
10884
- console.error(`Failed to extract context for disconnect:`, error);
10998
+ logger30.error(`Failed to extract context for disconnect:`, error);
10885
10999
  }
10886
11000
  }
10887
11001
  const url = new URL("/oauth/disconnect", this.serverUrl);
@@ -10941,7 +11055,11 @@ class OAuthHandler {
10941
11055
  return jsonRpcResponse.result;
10942
11056
  }
10943
11057
  }
10944
- var MCP_SERVER_URL2 = "https://mcp.integrate.dev/api/v1/mcp";
11058
+ var logger30, MCP_SERVER_URL2 = "https://mcp.integrate.dev/api/v1/mcp";
11059
+ var init_base_handler = __esm(() => {
11060
+ init_logger();
11061
+ logger30 = createLogger("OAuthHandler");
11062
+ });
10945
11063
 
10946
11064
  // nextjs.ts
10947
11065
  function createNextOAuthHandler(config) {
@@ -10959,7 +11077,7 @@ function createNextOAuthHandler(config) {
10959
11077
  }
10960
11078
  return response;
10961
11079
  } catch (error) {
10962
- console.error("[OAuth Authorize] Error:", error);
11080
+ logger31.error("[OAuth Authorize] Error:", error);
10963
11081
  return Response.json({ error: error.message || "Failed to get authorization URL" }, { status: 500 });
10964
11082
  }
10965
11083
  },
@@ -10975,7 +11093,7 @@ function createNextOAuthHandler(config) {
10975
11093
  }
10976
11094
  return response;
10977
11095
  } catch (error) {
10978
- console.error("[OAuth Callback] Error:", error);
11096
+ logger31.error("[OAuth Callback] Error:", error);
10979
11097
  return Response.json({ error: error.message || "Failed to exchange authorization code" }, { status: 500 });
10980
11098
  }
10981
11099
  },
@@ -10997,7 +11115,7 @@ function createNextOAuthHandler(config) {
10997
11115
  }
10998
11116
  return response;
10999
11117
  } catch (error) {
11000
- console.error("[OAuth Status] Error:", error);
11118
+ logger31.error("[OAuth Status] Error:", error);
11001
11119
  return Response.json({ error: error.message || "Failed to check authorization status" }, { status: 500 });
11002
11120
  }
11003
11121
  },
@@ -11020,7 +11138,7 @@ function createNextOAuthHandler(config) {
11020
11138
  }
11021
11139
  return response;
11022
11140
  } catch (error) {
11023
- console.error("[OAuth Disconnect] Error:", error);
11141
+ logger31.error("[OAuth Disconnect] Error:", error);
11024
11142
  return Response.json({ error: error.message || "Failed to disconnect provider" }, { status: 500 });
11025
11143
  }
11026
11144
  },
@@ -11061,7 +11179,7 @@ function createNextOAuthHandler(config) {
11061
11179
  const result = await handler.handleToolCall(body, authHeader, integrationsHeader);
11062
11180
  return Response.json(result);
11063
11181
  } catch (error) {
11064
- console.error("[MCP Tool Call] Error:", error);
11182
+ logger31.error("[MCP Tool Call] Error:", error);
11065
11183
  return Response.json({ error: error.message || "Failed to execute tool call" }, { status: error.statusCode || 500 });
11066
11184
  }
11067
11185
  },
@@ -11106,11 +11224,11 @@ function createNextOAuthHandler(config) {
11106
11224
  const errorDescription = searchParams.get("error_description");
11107
11225
  if (error) {
11108
11226
  const errorMsg = errorDescription || error;
11109
- console.error("[OAuth Redirect] Error:", errorMsg);
11227
+ logger31.error("[OAuth Redirect] Error:", errorMsg);
11110
11228
  return Response.redirect(new URL(`${errorRedirectUrl}?error=${encodeURIComponent(errorMsg)}`, req.url));
11111
11229
  }
11112
11230
  if (!code || !state) {
11113
- console.error("[OAuth Redirect] Missing code or state parameter");
11231
+ logger31.error("[OAuth Redirect] Missing code or state parameter");
11114
11232
  return Response.redirect(new URL(`${errorRedirectUrl}?error=${encodeURIComponent("Invalid OAuth callback")}`, req.url));
11115
11233
  }
11116
11234
  let returnUrl = defaultRedirectUrl;
@@ -11145,7 +11263,12 @@ function createNextOAuthHandler(config) {
11145
11263
  };
11146
11264
  return handlers;
11147
11265
  }
11148
- var init_nextjs = () => {};
11266
+ var logger31;
11267
+ var init_nextjs = __esm(() => {
11268
+ init_base_handler();
11269
+ init_logger();
11270
+ logger31 = createLogger("NextJSOAuth");
11271
+ });
11149
11272
  init_nextjs();
11150
11273
 
11151
11274
  export {