@himanshusinghs/mongodb-mcp-server 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 (582) hide show
  1. package/LICENSE +202 -0
  2. package/README.md +609 -0
  3. package/dist/cjs/common/atlas/accessListUtils.d.ts +15 -0
  4. package/dist/cjs/common/atlas/accessListUtils.d.ts.map +1 -0
  5. package/dist/cjs/common/atlas/accessListUtils.js +53 -0
  6. package/dist/cjs/common/atlas/accessListUtils.js.map +1 -0
  7. package/dist/cjs/common/atlas/apiClient.d.ts +235 -0
  8. package/dist/cjs/common/atlas/apiClient.d.ts.map +1 -0
  9. package/dist/cjs/common/atlas/apiClient.js +439 -0
  10. package/dist/cjs/common/atlas/apiClient.js.map +1 -0
  11. package/dist/cjs/common/atlas/apiClientError.d.ts +11 -0
  12. package/dist/cjs/common/atlas/apiClientError.d.ts.map +1 -0
  13. package/dist/cjs/common/atlas/apiClientError.js +54 -0
  14. package/dist/cjs/common/atlas/apiClientError.js.map +1 -0
  15. package/dist/cjs/common/atlas/cluster.d.ts +14 -0
  16. package/dist/cjs/common/atlas/cluster.d.ts.map +1 -0
  17. package/dist/cjs/common/atlas/cluster.js +75 -0
  18. package/dist/cjs/common/atlas/cluster.js.map +1 -0
  19. package/dist/cjs/common/atlas/roles.d.ts +8 -0
  20. package/dist/cjs/common/atlas/roles.d.ts.map +1 -0
  21. package/dist/cjs/common/atlas/roles.js +28 -0
  22. package/dist/cjs/common/atlas/roles.js.map +1 -0
  23. package/dist/cjs/common/config.d.ts +40 -0
  24. package/dist/cjs/common/config.d.ts.map +1 -0
  25. package/dist/cjs/common/config.js +300 -0
  26. package/dist/cjs/common/config.js.map +1 -0
  27. package/dist/cjs/common/connectionManager.d.ts +100 -0
  28. package/dist/cjs/common/connectionManager.d.ts.map +1 -0
  29. package/dist/cjs/common/connectionManager.js +243 -0
  30. package/dist/cjs/common/connectionManager.js.map +1 -0
  31. package/dist/cjs/common/errors.d.ts +10 -0
  32. package/dist/cjs/common/errors.d.ts.map +1 -0
  33. package/dist/cjs/common/errors.js +17 -0
  34. package/dist/cjs/common/errors.js.map +1 -0
  35. package/dist/cjs/common/exportsManager.d.ts +86 -0
  36. package/dist/cjs/common/exportsManager.d.ts.map +1 -0
  37. package/dist/cjs/common/exportsManager.js +288 -0
  38. package/dist/cjs/common/exportsManager.js.map +1 -0
  39. package/dist/cjs/common/logger.d.ts +118 -0
  40. package/dist/cjs/common/logger.d.ts.map +1 -0
  41. package/dist/cjs/common/logger.js +267 -0
  42. package/dist/cjs/common/logger.js.map +1 -0
  43. package/dist/cjs/common/managedTimeout.d.ts +6 -0
  44. package/dist/cjs/common/managedTimeout.d.ts.map +1 -0
  45. package/dist/cjs/common/managedTimeout.js +23 -0
  46. package/dist/cjs/common/managedTimeout.js.map +1 -0
  47. package/dist/cjs/common/packageInfo.d.ts +5 -0
  48. package/dist/cjs/common/packageInfo.d.ts.map +1 -0
  49. package/dist/cjs/common/packageInfo.js +9 -0
  50. package/dist/cjs/common/packageInfo.js.map +1 -0
  51. package/dist/cjs/common/session.d.ts +42 -0
  52. package/dist/cjs/common/session.d.ts.map +1 -0
  53. package/dist/cjs/common/session.js +106 -0
  54. package/dist/cjs/common/session.js.map +1 -0
  55. package/dist/cjs/common/sessionStore.d.ts +16 -0
  56. package/dist/cjs/common/sessionStore.d.ts.map +1 -0
  57. package/dist/cjs/common/sessionStore.js +99 -0
  58. package/dist/cjs/common/sessionStore.js.map +1 -0
  59. package/dist/cjs/helpers/connectionOptions.d.ts +25 -0
  60. package/dist/cjs/helpers/connectionOptions.d.ts.map +1 -0
  61. package/dist/cjs/helpers/connectionOptions.js +46 -0
  62. package/dist/cjs/helpers/connectionOptions.js.map +1 -0
  63. package/dist/cjs/helpers/container.d.ts +2 -0
  64. package/dist/cjs/helpers/container.d.ts.map +1 -0
  65. package/dist/cjs/helpers/container.js +34 -0
  66. package/dist/cjs/helpers/container.js.map +1 -0
  67. package/dist/cjs/helpers/deviceId.d.ts +24 -0
  68. package/dist/cjs/helpers/deviceId.d.ts.map +1 -0
  69. package/dist/cjs/helpers/deviceId.js +106 -0
  70. package/dist/cjs/helpers/deviceId.js.map +1 -0
  71. package/dist/cjs/helpers/generatePassword.d.ts +2 -0
  72. package/dist/cjs/helpers/generatePassword.d.ts.map +1 -0
  73. package/dist/cjs/helpers/generatePassword.js +12 -0
  74. package/dist/cjs/helpers/generatePassword.js.map +1 -0
  75. package/dist/cjs/helpers/indexCheck.d.ts +17 -0
  76. package/dist/cjs/helpers/indexCheck.d.ts.map +1 -0
  77. package/dist/cjs/helpers/indexCheck.js +68 -0
  78. package/dist/cjs/helpers/indexCheck.js.map +1 -0
  79. package/dist/cjs/index.d.ts +3 -0
  80. package/dist/cjs/index.d.ts.map +1 -0
  81. package/dist/cjs/index.js +131 -0
  82. package/dist/cjs/index.js.map +1 -0
  83. package/dist/cjs/lib.d.ts +9 -0
  84. package/dist/cjs/lib.d.ts.map +1 -0
  85. package/dist/cjs/lib.js +20 -0
  86. package/dist/cjs/lib.js.map +1 -0
  87. package/dist/cjs/package.json +1 -0
  88. package/dist/cjs/resources/common/config.d.ts +10 -0
  89. package/dist/cjs/resources/common/config.d.ts.map +1 -0
  90. package/dist/cjs/resources/common/config.js +46 -0
  91. package/dist/cjs/resources/common/config.js.map +1 -0
  92. package/dist/cjs/resources/common/debug.d.ts +17 -0
  93. package/dist/cjs/resources/common/debug.d.ts.map +1 -0
  94. package/dist/cjs/resources/common/debug.js +67 -0
  95. package/dist/cjs/resources/common/debug.js.map +1 -0
  96. package/dist/cjs/resources/common/exportedData.d.ts +15 -0
  97. package/dist/cjs/resources/common/exportedData.d.ts.map +1 -0
  98. package/dist/cjs/resources/common/exportedData.js +103 -0
  99. package/dist/cjs/resources/common/exportedData.js.map +1 -0
  100. package/dist/cjs/resources/resource.d.ts +44 -0
  101. package/dist/cjs/resources/resource.d.ts.map +1 -0
  102. package/dist/cjs/resources/resource.js +56 -0
  103. package/dist/cjs/resources/resource.js.map +1 -0
  104. package/dist/cjs/resources/resources.d.ts +5 -0
  105. package/dist/cjs/resources/resources.d.ts.map +1 -0
  106. package/dist/cjs/resources/resources.js +8 -0
  107. package/dist/cjs/resources/resources.js.map +1 -0
  108. package/dist/cjs/server.d.ts +40 -0
  109. package/dist/cjs/server.d.ts.map +1 -0
  110. package/dist/cjs/server.js +195 -0
  111. package/dist/cjs/server.js.map +1 -0
  112. package/dist/cjs/telemetry/constants.d.ts +6 -0
  113. package/dist/cjs/telemetry/constants.d.ts.map +1 -0
  114. package/dist/cjs/telemetry/constants.js +16 -0
  115. package/dist/cjs/telemetry/constants.js.map +1 -0
  116. package/dist/cjs/telemetry/eventCache.d.ts +34 -0
  117. package/dist/cjs/telemetry/eventCache.d.ts.map +1 -0
  118. package/dist/cjs/telemetry/eventCache.js +57 -0
  119. package/dist/cjs/telemetry/eventCache.js.map +1 -0
  120. package/dist/cjs/telemetry/telemetry.d.ts +50 -0
  121. package/dist/cjs/telemetry/telemetry.d.ts.map +1 -0
  122. package/dist/cjs/telemetry/telemetry.js +145 -0
  123. package/dist/cjs/telemetry/telemetry.js.map +1 -0
  124. package/dist/cjs/telemetry/types.d.ts +70 -0
  125. package/dist/cjs/telemetry/types.d.ts.map +1 -0
  126. package/dist/cjs/telemetry/types.js +3 -0
  127. package/dist/cjs/telemetry/types.js.map +1 -0
  128. package/dist/cjs/tools/atlas/atlasTool.d.ts +18 -0
  129. package/dist/cjs/tools/atlas/atlasTool.d.ts.map +1 -0
  130. package/dist/cjs/tools/atlas/atlasTool.js +92 -0
  131. package/dist/cjs/tools/atlas/atlasTool.js.map +1 -0
  132. package/dist/cjs/tools/atlas/connect/connectCluster.d.ts +18 -0
  133. package/dist/cjs/tools/atlas/connect/connectCluster.d.ts.map +1 -0
  134. package/dist/cjs/tools/atlas/connect/connectCluster.js +215 -0
  135. package/dist/cjs/tools/atlas/connect/connectCluster.js.map +1 -0
  136. package/dist/cjs/tools/atlas/create/createAccessList.d.ts +18 -0
  137. package/dist/cjs/tools/atlas/create/createAccessList.d.ts.map +1 -0
  138. package/dist/cjs/tools/atlas/create/createAccessList.js +66 -0
  139. package/dist/cjs/tools/atlas/create/createAccessList.js.map +1 -0
  140. package/dist/cjs/tools/atlas/create/createDBUser.d.ts +30 -0
  141. package/dist/cjs/tools/atlas/create/createDBUser.d.ts.map +1 -0
  142. package/dist/cjs/tools/atlas/create/createDBUser.js +80 -0
  143. package/dist/cjs/tools/atlas/create/createDBUser.js.map +1 -0
  144. package/dist/cjs/tools/atlas/create/createFreeCluster.d.ts +16 -0
  145. package/dist/cjs/tools/atlas/create/createFreeCluster.d.ts.map +1 -0
  146. package/dist/cjs/tools/atlas/create/createFreeCluster.js +59 -0
  147. package/dist/cjs/tools/atlas/create/createFreeCluster.js.map +1 -0
  148. package/dist/cjs/tools/atlas/create/createProject.d.ts +15 -0
  149. package/dist/cjs/tools/atlas/create/createProject.d.ts.map +1 -0
  150. package/dist/cjs/tools/atlas/create/createProject.js +60 -0
  151. package/dist/cjs/tools/atlas/create/createProject.js.map +1 -0
  152. package/dist/cjs/tools/atlas/read/inspectAccessList.d.ts +14 -0
  153. package/dist/cjs/tools/atlas/read/inspectAccessList.d.ts.map +1 -0
  154. package/dist/cjs/tools/atlas/read/inspectAccessList.js +43 -0
  155. package/dist/cjs/tools/atlas/read/inspectAccessList.js.map +1 -0
  156. package/dist/cjs/tools/atlas/read/inspectCluster.d.ts +16 -0
  157. package/dist/cjs/tools/atlas/read/inspectCluster.d.ts.map +1 -0
  158. package/dist/cjs/tools/atlas/read/inspectCluster.js +32 -0
  159. package/dist/cjs/tools/atlas/read/inspectCluster.js.map +1 -0
  160. package/dist/cjs/tools/atlas/read/listAlerts.d.ts +14 -0
  161. package/dist/cjs/tools/atlas/read/listAlerts.d.ts.map +1 -0
  162. package/dist/cjs/tools/atlas/read/listAlerts.js +46 -0
  163. package/dist/cjs/tools/atlas/read/listAlerts.js.map +1 -0
  164. package/dist/cjs/tools/atlas/read/listClusters.d.ts +16 -0
  165. package/dist/cjs/tools/atlas/read/listClusters.d.ts.map +1 -0
  166. package/dist/cjs/tools/atlas/read/listClusters.js +96 -0
  167. package/dist/cjs/tools/atlas/read/listClusters.js.map +1 -0
  168. package/dist/cjs/tools/atlas/read/listDBUsers.d.ts +14 -0
  169. package/dist/cjs/tools/atlas/read/listDBUsers.d.ts.map +1 -0
  170. package/dist/cjs/tools/atlas/read/listDBUsers.js +58 -0
  171. package/dist/cjs/tools/atlas/read/listDBUsers.js.map +1 -0
  172. package/dist/cjs/tools/atlas/read/listOrgs.d.ts +11 -0
  173. package/dist/cjs/tools/atlas/read/listOrgs.d.ts.map +1 -0
  174. package/dist/cjs/tools/atlas/read/listOrgs.js +36 -0
  175. package/dist/cjs/tools/atlas/read/listOrgs.js.map +1 -0
  176. package/dist/cjs/tools/atlas/read/listProjects.d.ts +15 -0
  177. package/dist/cjs/tools/atlas/read/listProjects.d.ts.map +1 -0
  178. package/dist/cjs/tools/atlas/read/listProjects.js +59 -0
  179. package/dist/cjs/tools/atlas/read/listProjects.js.map +1 -0
  180. package/dist/cjs/tools/atlas/tools.d.ts +14 -0
  181. package/dist/cjs/tools/atlas/tools.d.ts.map +1 -0
  182. package/dist/cjs/tools/atlas/tools.js +30 -0
  183. package/dist/cjs/tools/atlas/tools.js.map +1 -0
  184. package/dist/cjs/tools/mongodb/connect/connect.d.ts +26 -0
  185. package/dist/cjs/tools/mongodb/connect/connect.d.ts.map +1 -0
  186. package/dist/cjs/tools/mongodb/connect/connect.js +86 -0
  187. package/dist/cjs/tools/mongodb/connect/connect.js.map +1 -0
  188. package/dist/cjs/tools/mongodb/create/createCollection.d.ts +14 -0
  189. package/dist/cjs/tools/mongodb/create/createCollection.d.ts.map +1 -0
  190. package/dist/cjs/tools/mongodb/create/createCollection.js +27 -0
  191. package/dist/cjs/tools/mongodb/create/createCollection.js.map +1 -0
  192. package/dist/cjs/tools/mongodb/create/createIndex.d.ts +18 -0
  193. package/dist/cjs/tools/mongodb/create/createIndex.d.ts.map +1 -0
  194. package/dist/cjs/tools/mongodb/create/createIndex.js +37 -0
  195. package/dist/cjs/tools/mongodb/create/createIndex.js.map +1 -0
  196. package/dist/cjs/tools/mongodb/create/insertMany.d.ts +16 -0
  197. package/dist/cjs/tools/mongodb/create/insertMany.d.ts.map +1 -0
  198. package/dist/cjs/tools/mongodb/create/insertMany.js +37 -0
  199. package/dist/cjs/tools/mongodb/create/insertMany.js.map +1 -0
  200. package/dist/cjs/tools/mongodb/delete/deleteMany.d.ts +16 -0
  201. package/dist/cjs/tools/mongodb/delete/deleteMany.d.ts.map +1 -0
  202. package/dist/cjs/tools/mongodb/delete/deleteMany.js +53 -0
  203. package/dist/cjs/tools/mongodb/delete/deleteMany.js.map +1 -0
  204. package/dist/cjs/tools/mongodb/delete/dropCollection.d.ts +14 -0
  205. package/dist/cjs/tools/mongodb/delete/dropCollection.d.ts.map +1 -0
  206. package/dist/cjs/tools/mongodb/delete/dropCollection.js +29 -0
  207. package/dist/cjs/tools/mongodb/delete/dropCollection.js.map +1 -0
  208. package/dist/cjs/tools/mongodb/delete/dropDatabase.d.ts +13 -0
  209. package/dist/cjs/tools/mongodb/delete/dropDatabase.d.ts.map +1 -0
  210. package/dist/cjs/tools/mongodb/delete/dropDatabase.js +29 -0
  211. package/dist/cjs/tools/mongodb/delete/dropDatabase.js.map +1 -0
  212. package/dist/cjs/tools/mongodb/metadata/collectionSchema.d.ts +14 -0
  213. package/dist/cjs/tools/mongodb/metadata/collectionSchema.d.ts.map +1 -0
  214. package/dist/cjs/tools/mongodb/metadata/collectionSchema.js +36 -0
  215. package/dist/cjs/tools/mongodb/metadata/collectionSchema.js.map +1 -0
  216. package/dist/cjs/tools/mongodb/metadata/collectionStorageSize.d.ts +16 -0
  217. package/dist/cjs/tools/mongodb/metadata/collectionStorageSize.d.ts.map +1 -0
  218. package/dist/cjs/tools/mongodb/metadata/collectionStorageSize.js +61 -0
  219. package/dist/cjs/tools/mongodb/metadata/collectionStorageSize.js.map +1 -0
  220. package/dist/cjs/tools/mongodb/metadata/dbStats.d.ts +13 -0
  221. package/dist/cjs/tools/mongodb/metadata/dbStats.d.ts.map +1 -0
  222. package/dist/cjs/tools/mongodb/metadata/dbStats.js +29 -0
  223. package/dist/cjs/tools/mongodb/metadata/dbStats.js.map +1 -0
  224. package/dist/cjs/tools/mongodb/metadata/explain.d.ts +89 -0
  225. package/dist/cjs/tools/mongodb/metadata/explain.d.ts.map +1 -0
  226. package/dist/cjs/tools/mongodb/metadata/explain.js +80 -0
  227. package/dist/cjs/tools/mongodb/metadata/explain.js.map +1 -0
  228. package/dist/cjs/tools/mongodb/metadata/listCollections.d.ts +13 -0
  229. package/dist/cjs/tools/mongodb/metadata/listCollections.d.ts.map +1 -0
  230. package/dist/cjs/tools/mongodb/metadata/listCollections.js +35 -0
  231. package/dist/cjs/tools/mongodb/metadata/listCollections.js.map +1 -0
  232. package/dist/cjs/tools/mongodb/metadata/listDatabases.d.ts +11 -0
  233. package/dist/cjs/tools/mongodb/metadata/listDatabases.d.ts.map +1 -0
  234. package/dist/cjs/tools/mongodb/metadata/listDatabases.js +25 -0
  235. package/dist/cjs/tools/mongodb/metadata/listDatabases.js.map +1 -0
  236. package/dist/cjs/tools/mongodb/metadata/logs.d.ts +15 -0
  237. package/dist/cjs/tools/mongodb/metadata/logs.d.ts.map +1 -0
  238. package/dist/cjs/tools/mongodb/metadata/logs.js +49 -0
  239. package/dist/cjs/tools/mongodb/metadata/logs.js.map +1 -0
  240. package/dist/cjs/tools/mongodb/mongodbTool.d.ts +20 -0
  241. package/dist/cjs/tools/mongodb/mongodbTool.d.ts.map +1 -0
  242. package/dist/cjs/tools/mongodb/mongodbTool.js +130 -0
  243. package/dist/cjs/tools/mongodb/mongodbTool.js.map +1 -0
  244. package/dist/cjs/tools/mongodb/read/aggregate.d.ts +19 -0
  245. package/dist/cjs/tools/mongodb/read/aggregate.d.ts.map +1 -0
  246. package/dist/cjs/tools/mongodb/read/aggregate.js +40 -0
  247. package/dist/cjs/tools/mongodb/read/aggregate.js.map +1 -0
  248. package/dist/cjs/tools/mongodb/read/collectionIndexes.d.ts +15 -0
  249. package/dist/cjs/tools/mongodb/read/collectionIndexes.d.ts.map +1 -0
  250. package/dist/cjs/tools/mongodb/read/collectionIndexes.js +40 -0
  251. package/dist/cjs/tools/mongodb/read/collectionIndexes.js.map +1 -0
  252. package/dist/cjs/tools/mongodb/read/count.d.ts +19 -0
  253. package/dist/cjs/tools/mongodb/read/count.d.ts.map +1 -0
  254. package/dist/cjs/tools/mongodb/read/count.js +51 -0
  255. package/dist/cjs/tools/mongodb/read/count.js.map +1 -0
  256. package/dist/cjs/tools/mongodb/read/export.d.ts +72 -0
  257. package/dist/cjs/tools/mongodb/read/export.d.ts.map +1 -0
  258. package/dist/cjs/tools/mongodb/read/export.js +119 -0
  259. package/dist/cjs/tools/mongodb/read/export.js.map +1 -0
  260. package/dist/cjs/tools/mongodb/read/find.d.ts +26 -0
  261. package/dist/cjs/tools/mongodb/read/find.d.ts.map +1 -0
  262. package/dist/cjs/tools/mongodb/read/find.js +53 -0
  263. package/dist/cjs/tools/mongodb/read/find.js.map +1 -0
  264. package/dist/cjs/tools/mongodb/tools.d.ts +23 -0
  265. package/dist/cjs/tools/mongodb/tools.d.ts.map +1 -0
  266. package/dist/cjs/tools/mongodb/tools.js +48 -0
  267. package/dist/cjs/tools/mongodb/tools.js.map +1 -0
  268. package/dist/cjs/tools/mongodb/update/renameCollection.d.ts +18 -0
  269. package/dist/cjs/tools/mongodb/update/renameCollection.d.ts.map +1 -0
  270. package/dist/cjs/tools/mongodb/update/renameCollection.js +59 -0
  271. package/dist/cjs/tools/mongodb/update/renameCollection.js.map +1 -0
  272. package/dist/cjs/tools/mongodb/update/updateMany.d.ts +18 -0
  273. package/dist/cjs/tools/mongodb/update/updateMany.d.ts.map +1 -0
  274. package/dist/cjs/tools/mongodb/update/updateMany.js +78 -0
  275. package/dist/cjs/tools/mongodb/update/updateMany.js.map +1 -0
  276. package/dist/cjs/tools/tool.d.ts +49 -0
  277. package/dist/cjs/tools/tool.d.ts.map +1 -0
  278. package/dist/cjs/tools/tool.js +201 -0
  279. package/dist/cjs/tools/tool.js.map +1 -0
  280. package/dist/cjs/transports/base.d.ts +17 -0
  281. package/dist/cjs/transports/base.d.ts.map +1 -0
  282. package/dist/cjs/transports/base.js +74 -0
  283. package/dist/cjs/transports/base.js.map +1 -0
  284. package/dist/cjs/transports/stdio.d.ts +20 -0
  285. package/dist/cjs/transports/stdio.d.ts.map +1 -0
  286. package/dist/cjs/transports/stdio.js +70 -0
  287. package/dist/cjs/transports/stdio.js.map +1 -0
  288. package/dist/cjs/transports/streamableHttp.d.ts +14 -0
  289. package/dist/cjs/transports/streamableHttp.d.ts.map +1 -0
  290. package/dist/cjs/transports/streamableHttp.js +221 -0
  291. package/dist/cjs/transports/streamableHttp.js.map +1 -0
  292. package/dist/esm/common/atlas/accessListUtils.d.ts +15 -0
  293. package/dist/esm/common/atlas/accessListUtils.d.ts.map +1 -0
  294. package/dist/esm/common/atlas/accessListUtils.js +48 -0
  295. package/dist/esm/common/atlas/accessListUtils.js.map +1 -0
  296. package/dist/esm/common/atlas/apiClient.d.ts +235 -0
  297. package/dist/esm/common/atlas/apiClient.d.ts.map +1 -0
  298. package/dist/esm/common/atlas/apiClient.js +399 -0
  299. package/dist/esm/common/atlas/apiClient.js.map +1 -0
  300. package/dist/esm/common/atlas/apiClientError.d.ts +11 -0
  301. package/dist/esm/common/atlas/apiClientError.d.ts.map +1 -0
  302. package/dist/esm/common/atlas/apiClientError.js +50 -0
  303. package/dist/esm/common/atlas/apiClientError.js.map +1 -0
  304. package/dist/esm/common/atlas/cluster.d.ts +14 -0
  305. package/dist/esm/common/atlas/cluster.d.ts.map +1 -0
  306. package/dist/esm/common/atlas/cluster.js +70 -0
  307. package/dist/esm/common/atlas/cluster.js.map +1 -0
  308. package/dist/esm/common/atlas/roles.d.ts +8 -0
  309. package/dist/esm/common/atlas/roles.d.ts.map +1 -0
  310. package/dist/esm/common/atlas/roles.js +25 -0
  311. package/dist/esm/common/atlas/roles.js.map +1 -0
  312. package/dist/esm/common/config.d.ts +40 -0
  313. package/dist/esm/common/config.d.ts.map +1 -0
  314. package/dist/esm/common/config.js +291 -0
  315. package/dist/esm/common/config.js.map +1 -0
  316. package/dist/esm/common/connectionManager.d.ts +100 -0
  317. package/dist/esm/common/connectionManager.d.ts.map +1 -0
  318. package/dist/esm/common/connectionManager.js +234 -0
  319. package/dist/esm/common/connectionManager.js.map +1 -0
  320. package/dist/esm/common/errors.d.ts +10 -0
  321. package/dist/esm/common/errors.d.ts.map +1 -0
  322. package/dist/esm/common/errors.js +13 -0
  323. package/dist/esm/common/errors.js.map +1 -0
  324. package/dist/esm/common/exportsManager.d.ts +86 -0
  325. package/dist/esm/common/exportsManager.d.ts.map +1 -0
  326. package/dist/esm/common/exportsManager.js +278 -0
  327. package/dist/esm/common/exportsManager.js.map +1 -0
  328. package/dist/esm/common/logger.d.ts +118 -0
  329. package/dist/esm/common/logger.d.ts.map +1 -0
  330. package/dist/esm/common/logger.js +255 -0
  331. package/dist/esm/common/logger.js.map +1 -0
  332. package/dist/esm/common/managedTimeout.d.ts +6 -0
  333. package/dist/esm/common/managedTimeout.d.ts.map +1 -0
  334. package/dist/esm/common/managedTimeout.js +20 -0
  335. package/dist/esm/common/managedTimeout.js.map +1 -0
  336. package/dist/esm/common/packageInfo.d.ts +5 -0
  337. package/dist/esm/common/packageInfo.d.ts.map +1 -0
  338. package/dist/esm/common/packageInfo.js +6 -0
  339. package/dist/esm/common/packageInfo.js.map +1 -0
  340. package/dist/esm/common/session.d.ts +42 -0
  341. package/dist/esm/common/session.d.ts.map +1 -0
  342. package/dist/esm/common/session.js +99 -0
  343. package/dist/esm/common/session.js.map +1 -0
  344. package/dist/esm/common/sessionStore.d.ts +16 -0
  345. package/dist/esm/common/sessionStore.d.ts.map +1 -0
  346. package/dist/esm/common/sessionStore.js +95 -0
  347. package/dist/esm/common/sessionStore.js.map +1 -0
  348. package/dist/esm/helpers/connectionOptions.d.ts +25 -0
  349. package/dist/esm/helpers/connectionOptions.d.ts.map +1 -0
  350. package/dist/esm/helpers/connectionOptions.js +39 -0
  351. package/dist/esm/helpers/connectionOptions.js.map +1 -0
  352. package/dist/esm/helpers/container.d.ts +2 -0
  353. package/dist/esm/helpers/container.d.ts.map +1 -0
  354. package/dist/esm/helpers/container.js +28 -0
  355. package/dist/esm/helpers/container.js.map +1 -0
  356. package/dist/esm/helpers/deviceId.d.ts +24 -0
  357. package/dist/esm/helpers/deviceId.d.ts.map +1 -0
  358. package/dist/esm/helpers/deviceId.js +69 -0
  359. package/dist/esm/helpers/deviceId.js.map +1 -0
  360. package/dist/esm/helpers/generatePassword.d.ts +2 -0
  361. package/dist/esm/helpers/generatePassword.d.ts.map +1 -0
  362. package/dist/esm/helpers/generatePassword.js +9 -0
  363. package/dist/esm/helpers/generatePassword.js.map +1 -0
  364. package/dist/esm/helpers/indexCheck.d.ts +17 -0
  365. package/dist/esm/helpers/indexCheck.d.ts.map +1 -0
  366. package/dist/esm/helpers/indexCheck.js +63 -0
  367. package/dist/esm/helpers/indexCheck.js.map +1 -0
  368. package/dist/esm/index.d.ts +3 -0
  369. package/dist/esm/index.d.ts.map +1 -0
  370. package/dist/esm/index.js +126 -0
  371. package/dist/esm/index.js.map +1 -0
  372. package/dist/esm/lib.d.ts +9 -0
  373. package/dist/esm/lib.d.ts.map +1 -0
  374. package/dist/esm/lib.js +9 -0
  375. package/dist/esm/lib.js.map +1 -0
  376. package/dist/esm/package.json +1 -0
  377. package/dist/esm/resources/common/config.d.ts +10 -0
  378. package/dist/esm/resources/common/config.d.ts.map +1 -0
  379. package/dist/esm/resources/common/config.js +42 -0
  380. package/dist/esm/resources/common/config.js.map +1 -0
  381. package/dist/esm/resources/common/debug.d.ts +17 -0
  382. package/dist/esm/resources/common/debug.d.ts.map +1 -0
  383. package/dist/esm/resources/common/debug.js +63 -0
  384. package/dist/esm/resources/common/debug.js.map +1 -0
  385. package/dist/esm/resources/common/exportedData.d.ts +15 -0
  386. package/dist/esm/resources/common/exportedData.d.ts.map +1 -0
  387. package/dist/esm/resources/common/exportedData.js +99 -0
  388. package/dist/esm/resources/common/exportedData.js.map +1 -0
  389. package/dist/esm/resources/resource.d.ts +44 -0
  390. package/dist/esm/resources/resource.d.ts.map +1 -0
  391. package/dist/esm/resources/resource.js +52 -0
  392. package/dist/esm/resources/resource.js.map +1 -0
  393. package/dist/esm/resources/resources.d.ts +5 -0
  394. package/dist/esm/resources/resources.d.ts.map +1 -0
  395. package/dist/esm/resources/resources.js +5 -0
  396. package/dist/esm/resources/resources.js.map +1 -0
  397. package/dist/esm/server.d.ts +40 -0
  398. package/dist/esm/server.d.ts.map +1 -0
  399. package/dist/esm/server.js +188 -0
  400. package/dist/esm/server.js.map +1 -0
  401. package/dist/esm/telemetry/constants.d.ts +6 -0
  402. package/dist/esm/telemetry/constants.d.ts.map +1 -0
  403. package/dist/esm/telemetry/constants.js +13 -0
  404. package/dist/esm/telemetry/constants.js.map +1 -0
  405. package/dist/esm/telemetry/eventCache.d.ts +34 -0
  406. package/dist/esm/telemetry/eventCache.d.ts.map +1 -0
  407. package/dist/esm/telemetry/eventCache.js +53 -0
  408. package/dist/esm/telemetry/eventCache.js.map +1 -0
  409. package/dist/esm/telemetry/telemetry.d.ts +50 -0
  410. package/dist/esm/telemetry/telemetry.d.ts.map +1 -0
  411. package/dist/esm/telemetry/telemetry.js +141 -0
  412. package/dist/esm/telemetry/telemetry.js.map +1 -0
  413. package/dist/esm/telemetry/types.d.ts +70 -0
  414. package/dist/esm/telemetry/types.d.ts.map +1 -0
  415. package/dist/esm/telemetry/types.js +2 -0
  416. package/dist/esm/telemetry/types.js.map +1 -0
  417. package/dist/esm/tools/atlas/atlasTool.d.ts +18 -0
  418. package/dist/esm/tools/atlas/atlasTool.d.ts.map +1 -0
  419. package/dist/esm/tools/atlas/atlasTool.js +88 -0
  420. package/dist/esm/tools/atlas/atlasTool.js.map +1 -0
  421. package/dist/esm/tools/atlas/connect/connectCluster.d.ts +18 -0
  422. package/dist/esm/tools/atlas/connect/connectCluster.d.ts.map +1 -0
  423. package/dist/esm/tools/atlas/connect/connectCluster.js +211 -0
  424. package/dist/esm/tools/atlas/connect/connectCluster.js.map +1 -0
  425. package/dist/esm/tools/atlas/create/createAccessList.d.ts +18 -0
  426. package/dist/esm/tools/atlas/create/createAccessList.d.ts.map +1 -0
  427. package/dist/esm/tools/atlas/create/createAccessList.js +62 -0
  428. package/dist/esm/tools/atlas/create/createAccessList.js.map +1 -0
  429. package/dist/esm/tools/atlas/create/createDBUser.d.ts +30 -0
  430. package/dist/esm/tools/atlas/create/createDBUser.d.ts.map +1 -0
  431. package/dist/esm/tools/atlas/create/createDBUser.js +76 -0
  432. package/dist/esm/tools/atlas/create/createDBUser.js.map +1 -0
  433. package/dist/esm/tools/atlas/create/createFreeCluster.d.ts +16 -0
  434. package/dist/esm/tools/atlas/create/createFreeCluster.d.ts.map +1 -0
  435. package/dist/esm/tools/atlas/create/createFreeCluster.js +55 -0
  436. package/dist/esm/tools/atlas/create/createFreeCluster.js.map +1 -0
  437. package/dist/esm/tools/atlas/create/createProject.d.ts +15 -0
  438. package/dist/esm/tools/atlas/create/createProject.d.ts.map +1 -0
  439. package/dist/esm/tools/atlas/create/createProject.js +56 -0
  440. package/dist/esm/tools/atlas/create/createProject.js.map +1 -0
  441. package/dist/esm/tools/atlas/read/inspectAccessList.d.ts +14 -0
  442. package/dist/esm/tools/atlas/read/inspectAccessList.d.ts.map +1 -0
  443. package/dist/esm/tools/atlas/read/inspectAccessList.js +39 -0
  444. package/dist/esm/tools/atlas/read/inspectAccessList.js.map +1 -0
  445. package/dist/esm/tools/atlas/read/inspectCluster.d.ts +16 -0
  446. package/dist/esm/tools/atlas/read/inspectCluster.d.ts.map +1 -0
  447. package/dist/esm/tools/atlas/read/inspectCluster.js +28 -0
  448. package/dist/esm/tools/atlas/read/inspectCluster.js.map +1 -0
  449. package/dist/esm/tools/atlas/read/listAlerts.d.ts +14 -0
  450. package/dist/esm/tools/atlas/read/listAlerts.d.ts.map +1 -0
  451. package/dist/esm/tools/atlas/read/listAlerts.js +42 -0
  452. package/dist/esm/tools/atlas/read/listAlerts.js.map +1 -0
  453. package/dist/esm/tools/atlas/read/listClusters.d.ts +16 -0
  454. package/dist/esm/tools/atlas/read/listClusters.d.ts.map +1 -0
  455. package/dist/esm/tools/atlas/read/listClusters.js +92 -0
  456. package/dist/esm/tools/atlas/read/listClusters.js.map +1 -0
  457. package/dist/esm/tools/atlas/read/listDBUsers.d.ts +14 -0
  458. package/dist/esm/tools/atlas/read/listDBUsers.d.ts.map +1 -0
  459. package/dist/esm/tools/atlas/read/listDBUsers.js +54 -0
  460. package/dist/esm/tools/atlas/read/listDBUsers.js.map +1 -0
  461. package/dist/esm/tools/atlas/read/listOrgs.d.ts +11 -0
  462. package/dist/esm/tools/atlas/read/listOrgs.d.ts.map +1 -0
  463. package/dist/esm/tools/atlas/read/listOrgs.js +32 -0
  464. package/dist/esm/tools/atlas/read/listOrgs.js.map +1 -0
  465. package/dist/esm/tools/atlas/read/listProjects.d.ts +15 -0
  466. package/dist/esm/tools/atlas/read/listProjects.d.ts.map +1 -0
  467. package/dist/esm/tools/atlas/read/listProjects.js +55 -0
  468. package/dist/esm/tools/atlas/read/listProjects.js.map +1 -0
  469. package/dist/esm/tools/atlas/tools.d.ts +14 -0
  470. package/dist/esm/tools/atlas/tools.d.ts.map +1 -0
  471. package/dist/esm/tools/atlas/tools.js +27 -0
  472. package/dist/esm/tools/atlas/tools.js.map +1 -0
  473. package/dist/esm/tools/mongodb/connect/connect.d.ts +26 -0
  474. package/dist/esm/tools/mongodb/connect/connect.d.ts.map +1 -0
  475. package/dist/esm/tools/mongodb/connect/connect.js +79 -0
  476. package/dist/esm/tools/mongodb/connect/connect.js.map +1 -0
  477. package/dist/esm/tools/mongodb/create/createCollection.d.ts +14 -0
  478. package/dist/esm/tools/mongodb/create/createCollection.d.ts.map +1 -0
  479. package/dist/esm/tools/mongodb/create/createCollection.js +23 -0
  480. package/dist/esm/tools/mongodb/create/createCollection.js.map +1 -0
  481. package/dist/esm/tools/mongodb/create/createIndex.d.ts +18 -0
  482. package/dist/esm/tools/mongodb/create/createIndex.d.ts.map +1 -0
  483. package/dist/esm/tools/mongodb/create/createIndex.js +33 -0
  484. package/dist/esm/tools/mongodb/create/createIndex.js.map +1 -0
  485. package/dist/esm/tools/mongodb/create/insertMany.d.ts +16 -0
  486. package/dist/esm/tools/mongodb/create/insertMany.d.ts.map +1 -0
  487. package/dist/esm/tools/mongodb/create/insertMany.js +33 -0
  488. package/dist/esm/tools/mongodb/create/insertMany.js.map +1 -0
  489. package/dist/esm/tools/mongodb/delete/deleteMany.d.ts +16 -0
  490. package/dist/esm/tools/mongodb/delete/deleteMany.d.ts.map +1 -0
  491. package/dist/esm/tools/mongodb/delete/deleteMany.js +49 -0
  492. package/dist/esm/tools/mongodb/delete/deleteMany.js.map +1 -0
  493. package/dist/esm/tools/mongodb/delete/dropCollection.d.ts +14 -0
  494. package/dist/esm/tools/mongodb/delete/dropCollection.d.ts.map +1 -0
  495. package/dist/esm/tools/mongodb/delete/dropCollection.js +25 -0
  496. package/dist/esm/tools/mongodb/delete/dropCollection.js.map +1 -0
  497. package/dist/esm/tools/mongodb/delete/dropDatabase.d.ts +13 -0
  498. package/dist/esm/tools/mongodb/delete/dropDatabase.d.ts.map +1 -0
  499. package/dist/esm/tools/mongodb/delete/dropDatabase.js +25 -0
  500. package/dist/esm/tools/mongodb/delete/dropDatabase.js.map +1 -0
  501. package/dist/esm/tools/mongodb/metadata/collectionSchema.d.ts +14 -0
  502. package/dist/esm/tools/mongodb/metadata/collectionSchema.d.ts.map +1 -0
  503. package/dist/esm/tools/mongodb/metadata/collectionSchema.js +32 -0
  504. package/dist/esm/tools/mongodb/metadata/collectionSchema.js.map +1 -0
  505. package/dist/esm/tools/mongodb/metadata/collectionStorageSize.d.ts +16 -0
  506. package/dist/esm/tools/mongodb/metadata/collectionStorageSize.d.ts.map +1 -0
  507. package/dist/esm/tools/mongodb/metadata/collectionStorageSize.js +57 -0
  508. package/dist/esm/tools/mongodb/metadata/collectionStorageSize.js.map +1 -0
  509. package/dist/esm/tools/mongodb/metadata/dbStats.d.ts +13 -0
  510. package/dist/esm/tools/mongodb/metadata/dbStats.d.ts.map +1 -0
  511. package/dist/esm/tools/mongodb/metadata/dbStats.js +25 -0
  512. package/dist/esm/tools/mongodb/metadata/dbStats.js.map +1 -0
  513. package/dist/esm/tools/mongodb/metadata/explain.d.ts +89 -0
  514. package/dist/esm/tools/mongodb/metadata/explain.d.ts.map +1 -0
  515. package/dist/esm/tools/mongodb/metadata/explain.js +76 -0
  516. package/dist/esm/tools/mongodb/metadata/explain.js.map +1 -0
  517. package/dist/esm/tools/mongodb/metadata/listCollections.d.ts +13 -0
  518. package/dist/esm/tools/mongodb/metadata/listCollections.d.ts.map +1 -0
  519. package/dist/esm/tools/mongodb/metadata/listCollections.js +31 -0
  520. package/dist/esm/tools/mongodb/metadata/listCollections.js.map +1 -0
  521. package/dist/esm/tools/mongodb/metadata/listDatabases.d.ts +11 -0
  522. package/dist/esm/tools/mongodb/metadata/listDatabases.d.ts.map +1 -0
  523. package/dist/esm/tools/mongodb/metadata/listDatabases.js +21 -0
  524. package/dist/esm/tools/mongodb/metadata/listDatabases.js.map +1 -0
  525. package/dist/esm/tools/mongodb/metadata/logs.d.ts +15 -0
  526. package/dist/esm/tools/mongodb/metadata/logs.d.ts.map +1 -0
  527. package/dist/esm/tools/mongodb/metadata/logs.js +45 -0
  528. package/dist/esm/tools/mongodb/metadata/logs.js.map +1 -0
  529. package/dist/esm/tools/mongodb/mongodbTool.d.ts +20 -0
  530. package/dist/esm/tools/mongodb/mongodbTool.d.ts.map +1 -0
  531. package/dist/esm/tools/mongodb/mongodbTool.js +126 -0
  532. package/dist/esm/tools/mongodb/mongodbTool.js.map +1 -0
  533. package/dist/esm/tools/mongodb/read/aggregate.d.ts +19 -0
  534. package/dist/esm/tools/mongodb/read/aggregate.d.ts.map +1 -0
  535. package/dist/esm/tools/mongodb/read/aggregate.js +36 -0
  536. package/dist/esm/tools/mongodb/read/aggregate.js.map +1 -0
  537. package/dist/esm/tools/mongodb/read/collectionIndexes.d.ts +15 -0
  538. package/dist/esm/tools/mongodb/read/collectionIndexes.d.ts.map +1 -0
  539. package/dist/esm/tools/mongodb/read/collectionIndexes.js +36 -0
  540. package/dist/esm/tools/mongodb/read/collectionIndexes.js.map +1 -0
  541. package/dist/esm/tools/mongodb/read/count.d.ts +19 -0
  542. package/dist/esm/tools/mongodb/read/count.d.ts.map +1 -0
  543. package/dist/esm/tools/mongodb/read/count.js +47 -0
  544. package/dist/esm/tools/mongodb/read/count.js.map +1 -0
  545. package/dist/esm/tools/mongodb/read/export.d.ts +72 -0
  546. package/dist/esm/tools/mongodb/read/export.d.ts.map +1 -0
  547. package/dist/esm/tools/mongodb/read/export.js +112 -0
  548. package/dist/esm/tools/mongodb/read/export.js.map +1 -0
  549. package/dist/esm/tools/mongodb/read/find.d.ts +26 -0
  550. package/dist/esm/tools/mongodb/read/find.d.ts.map +1 -0
  551. package/dist/esm/tools/mongodb/read/find.js +49 -0
  552. package/dist/esm/tools/mongodb/read/find.js.map +1 -0
  553. package/dist/esm/tools/mongodb/tools.d.ts +23 -0
  554. package/dist/esm/tools/mongodb/tools.d.ts.map +1 -0
  555. package/dist/esm/tools/mongodb/tools.js +45 -0
  556. package/dist/esm/tools/mongodb/tools.js.map +1 -0
  557. package/dist/esm/tools/mongodb/update/renameCollection.d.ts +18 -0
  558. package/dist/esm/tools/mongodb/update/renameCollection.d.ts.map +1 -0
  559. package/dist/esm/tools/mongodb/update/renameCollection.js +55 -0
  560. package/dist/esm/tools/mongodb/update/renameCollection.js.map +1 -0
  561. package/dist/esm/tools/mongodb/update/updateMany.d.ts +18 -0
  562. package/dist/esm/tools/mongodb/update/updateMany.d.ts.map +1 -0
  563. package/dist/esm/tools/mongodb/update/updateMany.js +74 -0
  564. package/dist/esm/tools/mongodb/update/updateMany.js.map +1 -0
  565. package/dist/esm/tools/tool.d.ts +49 -0
  566. package/dist/esm/tools/tool.d.ts.map +1 -0
  567. package/dist/esm/tools/tool.js +196 -0
  568. package/dist/esm/tools/tool.js.map +1 -0
  569. package/dist/esm/transports/base.d.ts +17 -0
  570. package/dist/esm/transports/base.d.ts.map +1 -0
  571. package/dist/esm/transports/base.js +70 -0
  572. package/dist/esm/transports/base.js.map +1 -0
  573. package/dist/esm/transports/stdio.d.ts +20 -0
  574. package/dist/esm/transports/stdio.d.ts.map +1 -0
  575. package/dist/esm/transports/stdio.js +64 -0
  576. package/dist/esm/transports/stdio.js.map +1 -0
  577. package/dist/esm/transports/streamableHttp.d.ts +14 -0
  578. package/dist/esm/transports/streamableHttp.d.ts.map +1 -0
  579. package/dist/esm/transports/streamableHttp.js +214 -0
  580. package/dist/esm/transports/streamableHttp.js.map +1 -0
  581. package/dist/index.js +1 -0
  582. package/package.json +126 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../../src/common/logger.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ export interface ManagedTimeout {
2
+ cancel: () => void;
3
+ restart: () => void;
4
+ }
5
+ export declare function setManagedTimeout(callback: () => Promise<void> | void, timeoutMS: number): ManagedTimeout;
6
+ //# sourceMappingURL=managedTimeout.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"managedTimeout.d.ts","sourceRoot":"","sources":["../../../src/common/managedTimeout.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,cAAc;IAC3B,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,OAAO,EAAE,MAAM,IAAI,CAAC;CACvB;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,EAAE,SAAS,EAAE,MAAM,GAAG,cAAc,CAqBzG"}
@@ -0,0 +1,20 @@
1
+ export function setManagedTimeout(callback, timeoutMS) {
2
+ let timeoutId = setTimeout(() => {
3
+ void callback();
4
+ }, timeoutMS);
5
+ function cancel() {
6
+ clearTimeout(timeoutId);
7
+ timeoutId = undefined;
8
+ }
9
+ function restart() {
10
+ cancel();
11
+ timeoutId = setTimeout(() => {
12
+ void callback();
13
+ }, timeoutMS);
14
+ }
15
+ return {
16
+ cancel,
17
+ restart,
18
+ };
19
+ }
20
+ //# sourceMappingURL=managedTimeout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"managedTimeout.js","sourceRoot":"","sources":["../../../src/common/managedTimeout.ts"],"names":[],"mappings":"AAKA,MAAM,UAAU,iBAAiB,CAAC,QAAoC,EAAE,SAAiB;IACrF,IAAI,SAAS,GAA+B,UAAU,CAAC,GAAG,EAAE;QACxD,KAAK,QAAQ,EAAE,CAAC;IACpB,CAAC,EAAE,SAAS,CAAC,CAAC;IAEd,SAAS,MAAM;QACX,YAAY,CAAC,SAAS,CAAC,CAAC;QACxB,SAAS,GAAG,SAAS,CAAC;IAC1B,CAAC;IAED,SAAS,OAAO;QACZ,MAAM,EAAE,CAAC;QACT,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE;YACxB,KAAK,QAAQ,EAAE,CAAC;QACpB,CAAC,EAAE,SAAS,CAAC,CAAC;IAClB,CAAC;IAED,OAAO;QACH,MAAM;QACN,OAAO;KACV,CAAC;AACN,CAAC"}
@@ -0,0 +1,5 @@
1
+ export declare const packageInfo: {
2
+ version: string;
3
+ mcpServerName: string;
4
+ };
5
+ //# sourceMappingURL=packageInfo.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"packageInfo.d.ts","sourceRoot":"","sources":["../../../src/common/packageInfo.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,WAAW;;;CAGvB,CAAC"}
@@ -0,0 +1,6 @@
1
+ // This file was generated by scripts/updatePackageVersion.ts - Do not edit it manually.
2
+ export const packageInfo = {
3
+ version: "0.3.0",
4
+ mcpServerName: "MongoDB MCP Server",
5
+ };
6
+ //# sourceMappingURL=packageInfo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"packageInfo.js","sourceRoot":"","sources":["../../../src/common/packageInfo.ts"],"names":[],"mappings":"AAAA,wFAAwF;AACxF,MAAM,CAAC,MAAM,WAAW,GAAG;IACvB,OAAO,EAAE,OAAO;IAChB,aAAa,EAAE,oBAAoB;CACtC,CAAC"}
@@ -0,0 +1,42 @@
1
+ import { ApiClient } from "./atlas/apiClient.js";
2
+ import type { Implementation } from "@modelcontextprotocol/sdk/types.js";
3
+ import type { CompositeLogger } from "./logger.js";
4
+ import EventEmitter from "events";
5
+ import type { AtlasClusterConnectionInfo, ConnectionManager, ConnectionSettings, ConnectionStateErrored } from "./connectionManager.js";
6
+ import type { NodeDriverServiceProvider } from "@mongosh/service-provider-node-driver";
7
+ import type { ExportsManager } from "./exportsManager.js";
8
+ export interface SessionOptions {
9
+ apiBaseUrl: string;
10
+ apiClientId?: string;
11
+ apiClientSecret?: string;
12
+ logger: CompositeLogger;
13
+ exportsManager: ExportsManager;
14
+ connectionManager: ConnectionManager;
15
+ }
16
+ export type SessionEvents = {
17
+ connect: [];
18
+ close: [];
19
+ disconnect: [];
20
+ "connection-error": [ConnectionStateErrored];
21
+ };
22
+ export declare class Session extends EventEmitter<SessionEvents> {
23
+ readonly sessionId: string;
24
+ readonly exportsManager: ExportsManager;
25
+ readonly connectionManager: ConnectionManager;
26
+ readonly apiClient: ApiClient;
27
+ mcpClient?: {
28
+ name?: string;
29
+ version?: string;
30
+ title?: string;
31
+ };
32
+ logger: CompositeLogger;
33
+ constructor({ apiBaseUrl, apiClientId, apiClientSecret, logger, connectionManager, exportsManager, }: SessionOptions);
34
+ setMcpClient(mcpClient: Implementation | undefined): void;
35
+ disconnect(): Promise<void>;
36
+ close(): Promise<void>;
37
+ connectToMongoDB(settings: ConnectionSettings): Promise<void>;
38
+ get isConnectedToMongoDB(): boolean;
39
+ get serviceProvider(): NodeDriverServiceProvider;
40
+ get connectedAtlasCluster(): AtlasClusterConnectionInfo | undefined;
41
+ }
42
+ //# sourceMappingURL=session.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../../src/common/session.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,OAAO,YAAY,MAAM,QAAQ,CAAC;AAClC,OAAO,KAAK,EACR,0BAA0B,EAC1B,iBAAiB,EACjB,kBAAkB,EAElB,sBAAsB,EACzB,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,uCAAuC,CAAC;AAEvF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE1D,MAAM,WAAW,cAAc;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,eAAe,CAAC;IACxB,cAAc,EAAE,cAAc,CAAC;IAC/B,iBAAiB,EAAE,iBAAiB,CAAC;CACxC;AAED,MAAM,MAAM,aAAa,GAAG;IACxB,OAAO,EAAE,EAAE,CAAC;IACZ,KAAK,EAAE,EAAE,CAAC;IACV,UAAU,EAAE,EAAE,CAAC;IACf,kBAAkB,EAAE,CAAC,sBAAsB,CAAC,CAAC;CAChD,CAAC;AAEF,qBAAa,OAAQ,SAAQ,YAAY,CAAC,aAAa,CAAC;IACpD,QAAQ,CAAC,SAAS,EAAE,MAAM,CAA6B;IACvD,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;IACxC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAC9C,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;IAC9B,SAAS,CAAC,EAAE;QACR,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;IAEK,MAAM,EAAE,eAAe,CAAC;gBAEnB,EACR,UAAU,EACV,WAAW,EACX,eAAe,EACf,MAAM,EACN,iBAAiB,EACjB,cAAc,GACjB,EAAE,cAAc;IAqBjB,YAAY,CAAC,SAAS,EAAE,cAAc,GAAG,SAAS,GAAG,IAAI;IAoBnD,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAoC3B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAOtB,gBAAgB,CAAC,QAAQ,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;IAInE,IAAI,oBAAoB,IAAI,OAAO,CAElC;IAED,IAAI,eAAe,IAAI,yBAAyB,CAO/C;IAED,IAAI,qBAAqB,IAAI,0BAA0B,GAAG,SAAS,CAElE;CACJ"}
@@ -0,0 +1,99 @@
1
+ import { ObjectId } from "bson";
2
+ import { ApiClient } from "./atlas/apiClient.js";
3
+ import { LogId } from "./logger.js";
4
+ import EventEmitter from "events";
5
+ import { ErrorCodes, MongoDBError } from "./errors.js";
6
+ export class Session extends EventEmitter {
7
+ constructor({ apiBaseUrl, apiClientId, apiClientSecret, logger, connectionManager, exportsManager, }) {
8
+ super();
9
+ this.sessionId = new ObjectId().toString();
10
+ this.logger = logger;
11
+ const credentials = apiClientId && apiClientSecret
12
+ ? {
13
+ clientId: apiClientId,
14
+ clientSecret: apiClientSecret,
15
+ }
16
+ : undefined;
17
+ this.apiClient = new ApiClient({ baseUrl: apiBaseUrl, credentials }, logger);
18
+ this.exportsManager = exportsManager;
19
+ this.connectionManager = connectionManager;
20
+ this.connectionManager.events.on("connection-success", () => this.emit("connect"));
21
+ this.connectionManager.events.on("connection-time-out", (error) => this.emit("connection-error", error));
22
+ this.connectionManager.events.on("connection-close", () => this.emit("disconnect"));
23
+ this.connectionManager.events.on("connection-error", (error) => this.emit("connection-error", error));
24
+ }
25
+ setMcpClient(mcpClient) {
26
+ if (!mcpClient) {
27
+ this.connectionManager.setClientName("unknown");
28
+ this.logger.debug({
29
+ id: LogId.serverMcpClientSet,
30
+ context: "session",
31
+ message: "MCP client info not found",
32
+ });
33
+ }
34
+ this.mcpClient = {
35
+ name: mcpClient?.name || "unknown",
36
+ version: mcpClient?.version || "unknown",
37
+ title: mcpClient?.title || "unknown",
38
+ };
39
+ // Set the client name on the connection manager for appName generation
40
+ this.connectionManager.setClientName(this.mcpClient.name || "unknown");
41
+ }
42
+ async disconnect() {
43
+ const atlasCluster = this.connectedAtlasCluster;
44
+ try {
45
+ await this.connectionManager.disconnect();
46
+ }
47
+ catch (err) {
48
+ const error = err instanceof Error ? err : new Error(String(err));
49
+ this.logger.error({
50
+ id: LogId.mongodbDisconnectFailure,
51
+ context: "session",
52
+ message: `Error closing service provider: ${error.message}`,
53
+ });
54
+ }
55
+ if (atlasCluster?.username && atlasCluster?.projectId) {
56
+ void this.apiClient
57
+ .deleteDatabaseUser({
58
+ params: {
59
+ path: {
60
+ groupId: atlasCluster.projectId,
61
+ username: atlasCluster.username,
62
+ databaseName: "admin",
63
+ },
64
+ },
65
+ })
66
+ .catch((err) => {
67
+ const error = err instanceof Error ? err : new Error(String(err));
68
+ this.logger.error({
69
+ id: LogId.atlasDeleteDatabaseUserFailure,
70
+ context: "session",
71
+ message: `Error deleting previous database user: ${error.message}`,
72
+ });
73
+ });
74
+ }
75
+ }
76
+ async close() {
77
+ await this.disconnect();
78
+ await this.apiClient.close();
79
+ await this.exportsManager.close();
80
+ this.emit("close");
81
+ }
82
+ async connectToMongoDB(settings) {
83
+ await this.connectionManager.connect({ ...settings });
84
+ }
85
+ get isConnectedToMongoDB() {
86
+ return this.connectionManager.currentConnectionState.tag === "connected";
87
+ }
88
+ get serviceProvider() {
89
+ if (this.isConnectedToMongoDB) {
90
+ const state = this.connectionManager.currentConnectionState;
91
+ return state.serviceProvider;
92
+ }
93
+ throw new MongoDBError(ErrorCodes.NotConnectedToMongoDB, "Not connected to MongoDB");
94
+ }
95
+ get connectedAtlasCluster() {
96
+ return this.connectionManager.currentConnectionState.connectedAtlasCluster;
97
+ }
98
+ }
99
+ //# sourceMappingURL=session.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session.js","sourceRoot":"","sources":["../../../src/common/session.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import type { StreamableHTTPServerTransport } from "@modelcontextprotocol/sdk/server/streamableHttp.js";
2
+ import type { LoggerBase } from "./logger.js";
3
+ export declare class SessionStore {
4
+ private readonly idleTimeoutMS;
5
+ private readonly notificationTimeoutMS;
6
+ private readonly logger;
7
+ private sessions;
8
+ constructor(idleTimeoutMS: number, notificationTimeoutMS: number, logger: LoggerBase);
9
+ getSession(sessionId: string): StreamableHTTPServerTransport | undefined;
10
+ private resetTimeout;
11
+ private sendNotification;
12
+ setSession(sessionId: string, transport: StreamableHTTPServerTransport, logger: LoggerBase): void;
13
+ closeSession(sessionId: string, closeTransport?: boolean): Promise<void>;
14
+ closeAllSessions(): Promise<void>;
15
+ }
16
+ //# sourceMappingURL=sessionStore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sessionStore.d.ts","sourceRoot":"","sources":["../../../src/common/sessionStore.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,oDAAoD,CAAC;AACxG,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAK9C,qBAAa,YAAY;IAWjB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,qBAAqB;IACtC,OAAO,CAAC,QAAQ,CAAC,MAAM;IAZ3B,OAAO,CAAC,QAAQ,CAOT;gBAGc,aAAa,EAAE,MAAM,EACrB,qBAAqB,EAAE,MAAM,EAC7B,MAAM,EAAE,UAAU;IAavC,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,6BAA6B,GAAG,SAAS;IAKxE,OAAO,CAAC,YAAY;IAWpB,OAAO,CAAC,gBAAgB;IAiBxB,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,6BAA6B,EAAE,MAAM,EAAE,UAAU,GAAG,IAAI;IA4B3F,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,cAAc,GAAE,OAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAqB9E,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;CAG1C"}
@@ -0,0 +1,95 @@
1
+ import { LogId } from "./logger.js";
2
+ import { setManagedTimeout } from "./managedTimeout.js";
3
+ export class SessionStore {
4
+ constructor(idleTimeoutMS, notificationTimeoutMS, logger) {
5
+ this.idleTimeoutMS = idleTimeoutMS;
6
+ this.notificationTimeoutMS = notificationTimeoutMS;
7
+ this.logger = logger;
8
+ this.sessions = {};
9
+ if (idleTimeoutMS <= 0) {
10
+ throw new Error("idleTimeoutMS must be greater than 0");
11
+ }
12
+ if (notificationTimeoutMS <= 0) {
13
+ throw new Error("notificationTimeoutMS must be greater than 0");
14
+ }
15
+ if (idleTimeoutMS <= notificationTimeoutMS) {
16
+ throw new Error("idleTimeoutMS must be greater than notificationTimeoutMS");
17
+ }
18
+ }
19
+ getSession(sessionId) {
20
+ this.resetTimeout(sessionId);
21
+ return this.sessions[sessionId]?.transport;
22
+ }
23
+ resetTimeout(sessionId) {
24
+ const session = this.sessions[sessionId];
25
+ if (!session) {
26
+ return;
27
+ }
28
+ session.abortTimeout.restart();
29
+ session.notificationTimeout.restart();
30
+ }
31
+ sendNotification(sessionId) {
32
+ const session = this.sessions[sessionId];
33
+ if (!session) {
34
+ this.logger.warning({
35
+ id: LogId.streamableHttpTransportSessionCloseNotificationFailure,
36
+ context: "sessionStore",
37
+ message: `session ${sessionId} not found, no notification delivered`,
38
+ });
39
+ return;
40
+ }
41
+ session.logger.info({
42
+ id: LogId.streamableHttpTransportSessionCloseNotification,
43
+ context: "sessionStore",
44
+ message: "Session is about to be closed due to inactivity",
45
+ });
46
+ }
47
+ setSession(sessionId, transport, logger) {
48
+ const session = this.sessions[sessionId];
49
+ if (session) {
50
+ throw new Error(`Session ${sessionId} already exists`);
51
+ }
52
+ const abortTimeout = setManagedTimeout(async () => {
53
+ if (this.sessions[sessionId]) {
54
+ this.sessions[sessionId].logger.info({
55
+ id: LogId.streamableHttpTransportSessionCloseNotification,
56
+ context: "sessionStore",
57
+ message: "Session closed due to inactivity",
58
+ });
59
+ await this.closeSession(sessionId);
60
+ }
61
+ }, this.idleTimeoutMS);
62
+ const notificationTimeout = setManagedTimeout(() => this.sendNotification(sessionId), this.notificationTimeoutMS);
63
+ this.sessions[sessionId] = {
64
+ transport,
65
+ abortTimeout,
66
+ notificationTimeout,
67
+ logger,
68
+ };
69
+ }
70
+ async closeSession(sessionId, closeTransport = true) {
71
+ const session = this.sessions[sessionId];
72
+ if (!session) {
73
+ throw new Error(`Session ${sessionId} not found`);
74
+ }
75
+ session.abortTimeout.cancel();
76
+ session.notificationTimeout.cancel();
77
+ if (closeTransport) {
78
+ try {
79
+ await session.transport.close();
80
+ }
81
+ catch (error) {
82
+ this.logger.error({
83
+ id: LogId.streamableHttpTransportSessionCloseFailure,
84
+ context: "streamableHttpTransport",
85
+ message: `Error closing transport ${sessionId}: ${error instanceof Error ? error.message : String(error)}`,
86
+ });
87
+ }
88
+ }
89
+ delete this.sessions[sessionId];
90
+ }
91
+ async closeAllSessions() {
92
+ await Promise.all(Object.keys(this.sessions).map((sessionId) => this.closeSession(sessionId)));
93
+ }
94
+ }
95
+ //# sourceMappingURL=sessionStore.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sessionStore.js","sourceRoot":"","sources":["../../../src/common/sessionStore.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ export interface AppNameComponents {
2
+ appName: string;
3
+ deviceId?: Promise<string>;
4
+ clientName?: string;
5
+ }
6
+ /**
7
+ * Sets the appName parameter with the extended format: appName--deviceId--clientName
8
+ * Only sets the appName if it's not already present in the connection string
9
+ * @param connectionString - The connection string to modify
10
+ * @param components - The components to build the appName from
11
+ * @returns The modified connection string
12
+ */
13
+ export declare function setAppNameParamIfMissing({ connectionString, components, }: {
14
+ connectionString: string;
15
+ components: AppNameComponents;
16
+ }): Promise<string>;
17
+ /**
18
+ * Validates the connection string
19
+ * @param connectionString - The connection string to validate
20
+ * @param looseValidation - Whether to allow loose validation
21
+ * @returns void
22
+ * @throws Error if the connection string is invalid
23
+ */
24
+ export declare function validateConnectionString(connectionString: string, looseValidation: boolean): void;
25
+ //# sourceMappingURL=connectionOptions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connectionOptions.d.ts","sourceRoot":"","sources":["../../../src/helpers/connectionOptions.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,iBAAiB;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;;;;;GAMG;AACH,wBAAsB,wBAAwB,CAAC,EAC3C,gBAAgB,EAChB,UAAU,GACb,EAAE;IACC,gBAAgB,EAAE,MAAM,CAAC;IACzB,UAAU,EAAE,iBAAiB,CAAC;CACjC,GAAG,OAAO,CAAC,MAAM,CAAC,CAmBlB;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,gBAAgB,EAAE,MAAM,EAAE,eAAe,EAAE,OAAO,GAAG,IAAI,CAQjG"}
@@ -0,0 +1,39 @@
1
+ import ConnectionString from "mongodb-connection-string-url";
2
+ /**
3
+ * Sets the appName parameter with the extended format: appName--deviceId--clientName
4
+ * Only sets the appName if it's not already present in the connection string
5
+ * @param connectionString - The connection string to modify
6
+ * @param components - The components to build the appName from
7
+ * @returns The modified connection string
8
+ */
9
+ export async function setAppNameParamIfMissing({ connectionString, components, }) {
10
+ const connectionStringUrl = new ConnectionString(connectionString);
11
+ const searchParams = connectionStringUrl.typedSearchParams();
12
+ // Only set appName if it's not already present
13
+ if (searchParams.has("appName")) {
14
+ return connectionStringUrl.toString();
15
+ }
16
+ const appName = components.appName || "unknown";
17
+ const deviceId = components.deviceId ? await components.deviceId : "unknown";
18
+ const clientName = components.clientName || "unknown";
19
+ // Build the extended appName format: appName--deviceId--clientName
20
+ const extendedAppName = `${appName}--${deviceId}--${clientName}`;
21
+ searchParams.set("appName", extendedAppName);
22
+ return connectionStringUrl.toString();
23
+ }
24
+ /**
25
+ * Validates the connection string
26
+ * @param connectionString - The connection string to validate
27
+ * @param looseValidation - Whether to allow loose validation
28
+ * @returns void
29
+ * @throws Error if the connection string is invalid
30
+ */
31
+ export function validateConnectionString(connectionString, looseValidation) {
32
+ try {
33
+ new ConnectionString(connectionString, { looseValidation });
34
+ }
35
+ catch (error) {
36
+ throw new Error(`Invalid connection string with error: ${error instanceof Error ? error.message : String(error)}`);
37
+ }
38
+ }
39
+ //# sourceMappingURL=connectionOptions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connectionOptions.js","sourceRoot":"","sources":["../../../src/helpers/connectionOptions.ts"],"names":[],"mappings":"AACA,OAAO,gBAAgB,MAAM,+BAA+B,CAAC;AAQ7D;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAAC,EAC3C,gBAAgB,EAChB,UAAU,GAIb;IACG,MAAM,mBAAmB,GAAG,IAAI,gBAAgB,CAAC,gBAAgB,CAAC,CAAC;IACnE,MAAM,YAAY,GAAG,mBAAmB,CAAC,iBAAiB,EAAsB,CAAC;IAEjF,+CAA+C;IAC/C,IAAI,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;QAC9B,OAAO,mBAAmB,CAAC,QAAQ,EAAE,CAAC;IAC1C,CAAC;IAED,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,IAAI,SAAS,CAAC;IAChD,MAAM,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;IAC7E,MAAM,UAAU,GAAG,UAAU,CAAC,UAAU,IAAI,SAAS,CAAC;IAEtD,mEAAmE;IACnE,MAAM,eAAe,GAAG,GAAG,OAAO,KAAK,QAAQ,KAAK,UAAU,EAAE,CAAC;IAEjE,YAAY,CAAC,GAAG,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;IAE7C,OAAO,mBAAmB,CAAC,QAAQ,EAAE,CAAC;AAC1C,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,wBAAwB,CAAC,gBAAwB,EAAE,eAAwB;IACvF,IAAI,CAAC;QACD,IAAI,gBAAgB,CAAC,gBAAgB,EAAE,EAAE,eAAe,EAAE,CAAC,CAAC;IAChE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CACX,yCAAyC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CACpG,CAAC;IACN,CAAC;AACL,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function detectContainerEnv(): Promise<boolean>;
2
+ //# sourceMappingURL=container.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"container.d.ts","sourceRoot":"","sources":["../../../src/helpers/container.ts"],"names":[],"mappings":"AAIA,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC,CA8B3D"}
@@ -0,0 +1,28 @@
1
+ import fs from "fs/promises";
2
+ let containerEnv;
3
+ export async function detectContainerEnv() {
4
+ if (containerEnv !== undefined) {
5
+ return containerEnv;
6
+ }
7
+ const detect = async function () {
8
+ if (process.platform !== "linux") {
9
+ return false; // we only support linux containers for now
10
+ }
11
+ if (process.env.container) {
12
+ return true;
13
+ }
14
+ const exists = await Promise.all(["/.dockerenv", "/run/.containerenv", "/var/run/.containerenv"].map(async (file) => {
15
+ try {
16
+ await fs.access(file);
17
+ return true;
18
+ }
19
+ catch {
20
+ return false;
21
+ }
22
+ }));
23
+ return exists.includes(true);
24
+ };
25
+ containerEnv = await detect();
26
+ return containerEnv;
27
+ }
28
+ //# sourceMappingURL=container.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"container.js","sourceRoot":"","sources":["../../../src/helpers/container.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,aAAa,CAAC;AAE7B,IAAI,YAAiC,CAAC;AAEtC,MAAM,CAAC,KAAK,UAAU,kBAAkB;IACpC,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;QAC7B,OAAO,YAAY,CAAC;IACxB,CAAC;IAED,MAAM,MAAM,GAAG,KAAK;QAChB,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;YAC/B,OAAO,KAAK,CAAC,CAAC,2CAA2C;QAC7D,CAAC;QAED,IAAI,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;YACxB,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,CAC5B,CAAC,aAAa,EAAE,oBAAoB,EAAE,wBAAwB,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;YAC/E,IAAI,CAAC;gBACD,MAAM,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACtB,OAAO,IAAI,CAAC;YAChB,CAAC;YAAC,MAAM,CAAC;gBACL,OAAO,KAAK,CAAC;YACjB,CAAC;QACL,CAAC,CAAC,CACL,CAAC;QAEF,OAAO,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC,CAAC;IAEF,YAAY,GAAG,MAAM,MAAM,EAAE,CAAC;IAC9B,OAAO,YAAY,CAAC;AACxB,CAAC"}
@@ -0,0 +1,24 @@
1
+ import type { LoggerBase } from "../common/logger.js";
2
+ export declare const DEVICE_ID_TIMEOUT = 3000;
3
+ export declare class DeviceId {
4
+ private static readonly UnknownDeviceId;
5
+ private deviceIdPromise;
6
+ private abortController;
7
+ private logger;
8
+ private readonly getMachineId;
9
+ private timeout;
10
+ private constructor();
11
+ private initialize;
12
+ static create(logger: LoggerBase, timeout?: number): DeviceId;
13
+ /**
14
+ * Closes the device ID calculation promise and abort controller.
15
+ */
16
+ close(): void;
17
+ /**
18
+ * Gets the device ID, waiting for the calculation to complete if necessary.
19
+ * @returns Promise that resolves to the device ID string
20
+ */
21
+ get(): Promise<string>;
22
+ private handleDeviceIdError;
23
+ }
24
+ //# sourceMappingURL=deviceId.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deviceId.d.ts","sourceRoot":"","sources":["../../../src/helpers/deviceId.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAGtD,eAAO,MAAM,iBAAiB,OAAO,CAAC;AAEtC,qBAAa,QAAQ;IACjB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,CAA8B;IAErE,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,MAAM,CAAa;IAC3B,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAwB;IACrD,OAAO,CAAC,OAAO,CAAS;IAExB,OAAO;IAaP,OAAO,CAAC,UAAU;WAWJ,MAAM,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,QAAQ;IAOpE;;OAEG;IACI,KAAK,IAAI,IAAI;IAIpB;;;OAGG;IACI,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC;IAI7B,OAAO,CAAC,mBAAmB;CAwB9B"}
@@ -0,0 +1,69 @@
1
+ import { getDeviceId } from "@mongodb-js/device-id";
2
+ import { LogId } from "../common/logger.js";
3
+ export const DEVICE_ID_TIMEOUT = 3000;
4
+ export class DeviceId {
5
+ constructor(logger, timeout = DEVICE_ID_TIMEOUT) {
6
+ this.logger = logger;
7
+ this.timeout = timeout;
8
+ this.getMachineId = async () => {
9
+ const nodeMachineId = await import("node-machine-id");
10
+ const machineId = nodeMachineId.default?.machineId || nodeMachineId.machineId;
11
+ return machineId(true);
12
+ };
13
+ this.abortController = new AbortController();
14
+ this.deviceIdPromise = DeviceId.UnknownDeviceId;
15
+ }
16
+ initialize() {
17
+ this.deviceIdPromise = getDeviceId({
18
+ getMachineId: this.getMachineId,
19
+ onError: (reason, error) => {
20
+ this.handleDeviceIdError(reason, String(error));
21
+ },
22
+ timeout: this.timeout,
23
+ abortSignal: this.abortController.signal,
24
+ });
25
+ }
26
+ static create(logger, timeout) {
27
+ const instance = new DeviceId(logger, timeout ?? DEVICE_ID_TIMEOUT);
28
+ instance.initialize();
29
+ return instance;
30
+ }
31
+ /**
32
+ * Closes the device ID calculation promise and abort controller.
33
+ */
34
+ close() {
35
+ this.abortController.abort();
36
+ }
37
+ /**
38
+ * Gets the device ID, waiting for the calculation to complete if necessary.
39
+ * @returns Promise that resolves to the device ID string
40
+ */
41
+ get() {
42
+ return this.deviceIdPromise;
43
+ }
44
+ handleDeviceIdError(reason, error) {
45
+ this.deviceIdPromise = DeviceId.UnknownDeviceId;
46
+ switch (reason) {
47
+ case "resolutionError":
48
+ this.logger.debug({
49
+ id: LogId.deviceIdResolutionError,
50
+ context: "deviceId",
51
+ message: `Resolution error: ${String(error)}`,
52
+ });
53
+ break;
54
+ case "timeout":
55
+ this.logger.debug({
56
+ id: LogId.deviceIdTimeout,
57
+ context: "deviceId",
58
+ message: "Device ID retrieval timed out",
59
+ noRedaction: true,
60
+ });
61
+ break;
62
+ case "abort":
63
+ // No need to log in the case of 'abort' errors
64
+ break;
65
+ }
66
+ }
67
+ }
68
+ DeviceId.UnknownDeviceId = Promise.resolve("unknown");
69
+ //# sourceMappingURL=deviceId.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deviceId.js","sourceRoot":"","sources":["../../../src/helpers/deviceId.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEpD,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAE5C,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,CAAC;AAEtC,MAAM,OAAO,QAAQ;IASjB,YAAoB,MAAkB,EAAE,UAAkB,iBAAiB;QACvE,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,YAAY,GAAG,KAAK,IAAqB,EAAE;YAC5C,MAAM,aAAa,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,CAAC;YACtD,MAAM,SAAS,GAAG,aAAa,CAAC,OAAO,EAAE,SAAS,IAAI,aAAa,CAAC,SAAS,CAAC;YAC9E,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC;QAC3B,CAAC,CAAC;QACF,IAAI,CAAC,eAAe,GAAG,IAAI,eAAe,EAAE,CAAC;QAE7C,IAAI,CAAC,eAAe,GAAG,QAAQ,CAAC,eAAe,CAAC;IACpD,CAAC;IAEO,UAAU;QACd,IAAI,CAAC,eAAe,GAAG,WAAW,CAAC;YAC/B,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,OAAO,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;gBACvB,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YACpD,CAAC;YACD,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,WAAW,EAAE,IAAI,CAAC,eAAe,CAAC,MAAM;SAC3C,CAAC,CAAC;IACP,CAAC;IAEM,MAAM,CAAC,MAAM,CAAC,MAAkB,EAAE,OAAgB;QACrD,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,MAAM,EAAE,OAAO,IAAI,iBAAiB,CAAC,CAAC;QACpE,QAAQ,CAAC,UAAU,EAAE,CAAC;QAEtB,OAAO,QAAQ,CAAC;IACpB,CAAC;IAED;;OAEG;IACI,KAAK;QACR,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;IACjC,CAAC;IAED;;;OAGG;IACI,GAAG;QACN,OAAO,IAAI,CAAC,eAAe,CAAC;IAChC,CAAC;IAEO,mBAAmB,CAAC,MAAc,EAAE,KAAa;QACrD,IAAI,CAAC,eAAe,GAAG,QAAQ,CAAC,eAAe,CAAC;QAEhD,QAAQ,MAAM,EAAE,CAAC;YACb,KAAK,iBAAiB;gBAClB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;oBACd,EAAE,EAAE,KAAK,CAAC,uBAAuB;oBACjC,OAAO,EAAE,UAAU;oBACnB,OAAO,EAAE,qBAAqB,MAAM,CAAC,KAAK,CAAC,EAAE;iBAChD,CAAC,CAAC;gBACH,MAAM;YACV,KAAK,SAAS;gBACV,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;oBACd,EAAE,EAAE,KAAK,CAAC,eAAe;oBACzB,OAAO,EAAE,UAAU;oBACnB,OAAO,EAAE,+BAA+B;oBACxC,WAAW,EAAE,IAAI;iBACpB,CAAC,CAAC;gBACH,MAAM;YACV,KAAK,OAAO;gBACR,+CAA+C;gBAC/C,MAAM;QACd,CAAC;IACL,CAAC;;AA7EuB,wBAAe,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function generateSecurePassword(): Promise<string>;
2
+ //# sourceMappingURL=generatePassword.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generatePassword.d.ts","sourceRoot":"","sources":["../../../src/helpers/generatePassword.ts"],"names":[],"mappings":"AAKA,wBAAsB,sBAAsB,IAAI,OAAO,CAAC,MAAM,CAAC,CAI9D"}
@@ -0,0 +1,9 @@
1
+ import { randomBytes } from "crypto";
2
+ import { promisify } from "util";
3
+ const randomBytesAsync = promisify(randomBytes);
4
+ export async function generateSecurePassword() {
5
+ const buf = await randomBytesAsync(16);
6
+ const pass = buf.toString("base64url");
7
+ return pass;
8
+ }
9
+ //# sourceMappingURL=generatePassword.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generatePassword.js","sourceRoot":"","sources":["../../../src/helpers/generatePassword.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;AAEjC,MAAM,gBAAgB,GAAG,SAAS,CAAC,WAAW,CAAC,CAAC;AAEhD,MAAM,CAAC,KAAK,UAAU,sBAAsB;IACxC,MAAM,GAAG,GAAG,MAAM,gBAAgB,CAAC,EAAE,CAAC,CAAC;IACvC,MAAM,IAAI,GAAG,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IACvC,OAAO,IAAI,CAAC;AAChB,CAAC"}
@@ -0,0 +1,17 @@
1
+ import type { Document } from "mongodb";
2
+ import type { NodeDriverServiceProvider } from "@mongosh/service-provider-node-driver";
3
+ /**
4
+ * Check if the query plan uses an index
5
+ * @param explainResult The result of the explain query
6
+ * @returns true if an index is used, false if it's a full collection scan
7
+ */
8
+ export declare function usesIndex(explainResult: Document): boolean;
9
+ /**
10
+ * Generate an error message for index check failure
11
+ */
12
+ export declare function getIndexCheckErrorMessage(database: string, collection: string, operation: string): string;
13
+ /**
14
+ * Generic function to perform index usage check
15
+ */
16
+ export declare function checkIndexUsage(provider: NodeDriverServiceProvider, database: string, collection: string, operation: string, explainCallback: () => Promise<Document>): Promise<void>;
17
+ //# sourceMappingURL=indexCheck.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"indexCheck.d.ts","sourceRoot":"","sources":["../../../src/helpers/indexCheck.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,uCAAuC,CAAC;AAGvF;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,aAAa,EAAE,QAAQ,GAAG,OAAO,CAoC1D;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAEzG;AAED;;GAEG;AACH,wBAAsB,eAAe,CACjC,QAAQ,EAAE,yBAAyB,EACnC,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,EACjB,eAAe,EAAE,MAAM,OAAO,CAAC,QAAQ,CAAC,GACzC,OAAO,CAAC,IAAI,CAAC,CAmBf"}