mongodb-mcp-server 0.2.0 → 0.3.1-prerelease.1

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 (880) hide show
  1. package/README.md +53 -23
  2. package/dist/cjs/common/atlas/accessListUtils.d.ts +16 -0
  3. package/dist/cjs/common/atlas/accessListUtils.d.ts.map +1 -0
  4. package/dist/cjs/common/atlas/accessListUtils.js +56 -0
  5. package/dist/cjs/common/atlas/accessListUtils.js.map +1 -0
  6. package/dist/cjs/common/atlas/apiClient.d.ts +235 -0
  7. package/dist/cjs/common/atlas/apiClient.d.ts.map +1 -0
  8. package/dist/cjs/common/atlas/apiClient.js +439 -0
  9. package/dist/cjs/common/atlas/apiClient.js.map +1 -0
  10. package/dist/cjs/common/atlas/apiClientError.d.ts +11 -0
  11. package/dist/cjs/common/atlas/apiClientError.d.ts.map +1 -0
  12. package/dist/cjs/common/atlas/apiClientError.js +54 -0
  13. package/dist/cjs/common/atlas/apiClientError.js.map +1 -0
  14. package/dist/cjs/common/atlas/cluster.d.ts +14 -0
  15. package/dist/cjs/common/atlas/cluster.d.ts.map +1 -0
  16. package/dist/cjs/common/atlas/cluster.js +75 -0
  17. package/dist/cjs/common/atlas/cluster.js.map +1 -0
  18. package/dist/cjs/common/atlas/roles.d.ts +8 -0
  19. package/dist/cjs/common/atlas/roles.d.ts.map +1 -0
  20. package/dist/cjs/common/atlas/roles.js +28 -0
  21. package/dist/cjs/common/atlas/roles.js.map +1 -0
  22. package/dist/cjs/common/config.d.ts +46 -0
  23. package/dist/cjs/common/config.d.ts.map +1 -0
  24. package/dist/cjs/common/config.js +383 -0
  25. package/dist/cjs/common/config.js.map +1 -0
  26. package/dist/cjs/common/connectionErrorHandler.d.ts +18 -0
  27. package/dist/cjs/common/connectionErrorHandler.d.ts.map +1 -0
  28. package/dist/cjs/common/connectionErrorHandler.js +70 -0
  29. package/dist/cjs/common/connectionErrorHandler.js.map +1 -0
  30. package/dist/cjs/common/connectionManager.d.ts +100 -0
  31. package/dist/cjs/common/connectionManager.d.ts.map +1 -0
  32. package/dist/cjs/common/connectionManager.js +239 -0
  33. package/dist/cjs/common/connectionManager.js.map +1 -0
  34. package/dist/cjs/common/errors.d.ts +11 -0
  35. package/dist/cjs/common/errors.d.ts.map +1 -0
  36. package/dist/cjs/common/errors.js +18 -0
  37. package/dist/cjs/common/errors.js.map +1 -0
  38. package/dist/cjs/common/exportsManager.d.ts +86 -0
  39. package/dist/cjs/common/exportsManager.d.ts.map +1 -0
  40. package/dist/cjs/common/exportsManager.js +288 -0
  41. package/dist/cjs/common/exportsManager.js.map +1 -0
  42. package/dist/cjs/common/keychain.d.ts +22 -0
  43. package/dist/cjs/common/keychain.d.ts.map +1 -0
  44. package/dist/cjs/common/keychain.js +36 -0
  45. package/dist/cjs/common/keychain.js.map +1 -0
  46. package/dist/cjs/common/logger.d.ts +125 -0
  47. package/dist/cjs/common/logger.d.ts.map +1 -0
  48. package/dist/cjs/common/logger.js +275 -0
  49. package/dist/cjs/common/logger.js.map +1 -0
  50. package/dist/cjs/common/managedTimeout.d.ts +6 -0
  51. package/dist/cjs/common/managedTimeout.d.ts.map +1 -0
  52. package/dist/cjs/common/managedTimeout.js +23 -0
  53. package/dist/cjs/common/managedTimeout.js.map +1 -0
  54. package/dist/cjs/common/packageInfo.d.ts +5 -0
  55. package/dist/cjs/common/packageInfo.d.ts.map +1 -0
  56. package/dist/cjs/common/packageInfo.js +9 -0
  57. package/dist/cjs/common/packageInfo.js.map +1 -0
  58. package/dist/cjs/common/session.d.ts +45 -0
  59. package/dist/cjs/common/session.d.ts.map +1 -0
  60. package/dist/cjs/common/session.js +107 -0
  61. package/dist/cjs/common/session.js.map +1 -0
  62. package/dist/cjs/common/sessionStore.d.ts +16 -0
  63. package/dist/cjs/common/sessionStore.d.ts.map +1 -0
  64. package/dist/cjs/common/sessionStore.js +99 -0
  65. package/dist/cjs/common/sessionStore.js.map +1 -0
  66. package/dist/cjs/helpers/connectionOptions.d.ts +25 -0
  67. package/dist/cjs/helpers/connectionOptions.d.ts.map +1 -0
  68. package/dist/cjs/helpers/connectionOptions.js +43 -0
  69. package/dist/cjs/helpers/connectionOptions.js.map +1 -0
  70. package/dist/cjs/helpers/container.d.ts +2 -0
  71. package/dist/cjs/helpers/container.d.ts.map +1 -0
  72. package/dist/cjs/helpers/container.js +34 -0
  73. package/dist/cjs/helpers/container.js.map +1 -0
  74. package/dist/cjs/helpers/deviceId.d.ts +24 -0
  75. package/dist/cjs/helpers/deviceId.d.ts.map +1 -0
  76. package/dist/cjs/helpers/deviceId.js +106 -0
  77. package/dist/cjs/helpers/deviceId.js.map +1 -0
  78. package/dist/cjs/helpers/generatePassword.d.ts +2 -0
  79. package/dist/cjs/helpers/generatePassword.d.ts.map +1 -0
  80. package/dist/cjs/helpers/generatePassword.js +12 -0
  81. package/dist/cjs/helpers/generatePassword.js.map +1 -0
  82. package/dist/cjs/helpers/indexCheck.d.ts +17 -0
  83. package/dist/cjs/helpers/indexCheck.d.ts.map +1 -0
  84. package/dist/cjs/helpers/indexCheck.js +68 -0
  85. package/dist/cjs/helpers/indexCheck.js.map +1 -0
  86. package/dist/cjs/index.d.ts +3 -0
  87. package/dist/cjs/index.d.ts.map +1 -0
  88. package/dist/cjs/index.js +138 -0
  89. package/dist/cjs/index.js.map +1 -0
  90. package/dist/cjs/lib.d.ts +12 -0
  91. package/dist/cjs/lib.d.ts.map +1 -0
  92. package/dist/cjs/lib.js +23 -0
  93. package/dist/cjs/lib.js.map +1 -0
  94. package/dist/cjs/package.json +1 -0
  95. package/dist/cjs/resources/common/config.d.ts +10 -0
  96. package/dist/cjs/resources/common/config.d.ts.map +1 -0
  97. package/dist/cjs/resources/common/config.js +46 -0
  98. package/dist/cjs/resources/common/config.js.map +1 -0
  99. package/dist/cjs/resources/common/debug.d.ts +17 -0
  100. package/dist/cjs/resources/common/debug.d.ts.map +1 -0
  101. package/dist/cjs/resources/common/debug.js +67 -0
  102. package/dist/cjs/resources/common/debug.js.map +1 -0
  103. package/dist/cjs/resources/common/exportedData.d.ts +15 -0
  104. package/dist/cjs/resources/common/exportedData.d.ts.map +1 -0
  105. package/dist/cjs/resources/common/exportedData.js +103 -0
  106. package/dist/cjs/resources/common/exportedData.js.map +1 -0
  107. package/dist/cjs/resources/resource.d.ts +44 -0
  108. package/dist/cjs/resources/resource.d.ts.map +1 -0
  109. package/dist/cjs/resources/resource.js +56 -0
  110. package/dist/cjs/resources/resource.js.map +1 -0
  111. package/dist/cjs/resources/resources.d.ts +5 -0
  112. package/dist/cjs/resources/resources.d.ts.map +1 -0
  113. package/dist/cjs/resources/resources.js +8 -0
  114. package/dist/cjs/resources/resources.js.map +1 -0
  115. package/dist/cjs/server.d.ts +43 -0
  116. package/dist/cjs/server.d.ts.map +1 -0
  117. package/dist/cjs/server.js +206 -0
  118. package/dist/cjs/server.js.map +1 -0
  119. package/dist/cjs/telemetry/constants.d.ts +6 -0
  120. package/dist/cjs/telemetry/constants.d.ts.map +1 -0
  121. package/dist/cjs/telemetry/constants.js +16 -0
  122. package/dist/cjs/telemetry/constants.js.map +1 -0
  123. package/dist/cjs/telemetry/eventCache.d.ts +41 -0
  124. package/dist/cjs/telemetry/eventCache.d.ts.map +1 -0
  125. package/dist/cjs/telemetry/eventCache.js +64 -0
  126. package/dist/cjs/telemetry/eventCache.js.map +1 -0
  127. package/dist/cjs/telemetry/telemetry.d.ts +57 -0
  128. package/dist/cjs/telemetry/telemetry.d.ts.map +1 -0
  129. package/dist/cjs/telemetry/telemetry.js +182 -0
  130. package/dist/cjs/telemetry/telemetry.js.map +1 -0
  131. package/dist/cjs/telemetry/types.d.ts +118 -0
  132. package/dist/cjs/telemetry/types.d.ts.map +1 -0
  133. package/dist/cjs/telemetry/types.js +3 -0
  134. package/dist/cjs/telemetry/types.js.map +1 -0
  135. package/dist/cjs/tools/atlas/atlasTool.d.ts +18 -0
  136. package/dist/cjs/tools/atlas/atlasTool.d.ts.map +1 -0
  137. package/dist/cjs/tools/atlas/atlasTool.js +92 -0
  138. package/dist/cjs/tools/atlas/atlasTool.js.map +1 -0
  139. package/dist/cjs/tools/atlas/connect/connectCluster.d.ts +18 -0
  140. package/dist/cjs/tools/atlas/connect/connectCluster.d.ts.map +1 -0
  141. package/dist/cjs/tools/atlas/connect/connectCluster.js +239 -0
  142. package/dist/cjs/tools/atlas/connect/connectCluster.js.map +1 -0
  143. package/dist/cjs/tools/atlas/create/createAccessList.d.ts +18 -0
  144. package/dist/cjs/tools/atlas/create/createAccessList.d.ts.map +1 -0
  145. package/dist/cjs/tools/atlas/create/createAccessList.js +66 -0
  146. package/dist/cjs/tools/atlas/create/createAccessList.js.map +1 -0
  147. package/dist/cjs/tools/atlas/create/createDBUser.d.ts +30 -0
  148. package/dist/cjs/tools/atlas/create/createDBUser.d.ts.map +1 -0
  149. package/dist/cjs/tools/atlas/create/createDBUser.js +84 -0
  150. package/dist/cjs/tools/atlas/create/createDBUser.js.map +1 -0
  151. package/dist/cjs/tools/atlas/create/createFreeCluster.d.ts +16 -0
  152. package/dist/cjs/tools/atlas/create/createFreeCluster.d.ts.map +1 -0
  153. package/dist/cjs/tools/atlas/create/createFreeCluster.js +59 -0
  154. package/dist/cjs/tools/atlas/create/createFreeCluster.js.map +1 -0
  155. package/dist/cjs/tools/atlas/create/createProject.d.ts +15 -0
  156. package/dist/cjs/tools/atlas/create/createProject.d.ts.map +1 -0
  157. package/dist/cjs/tools/atlas/create/createProject.js +60 -0
  158. package/dist/cjs/tools/atlas/create/createProject.js.map +1 -0
  159. package/dist/cjs/tools/atlas/read/inspectAccessList.d.ts +14 -0
  160. package/dist/cjs/tools/atlas/read/inspectAccessList.d.ts.map +1 -0
  161. package/dist/cjs/tools/atlas/read/inspectAccessList.js +43 -0
  162. package/dist/cjs/tools/atlas/read/inspectAccessList.js.map +1 -0
  163. package/dist/cjs/tools/atlas/read/inspectCluster.d.ts +16 -0
  164. package/dist/cjs/tools/atlas/read/inspectCluster.d.ts.map +1 -0
  165. package/dist/cjs/tools/atlas/read/inspectCluster.js +32 -0
  166. package/dist/cjs/tools/atlas/read/inspectCluster.js.map +1 -0
  167. package/dist/cjs/tools/atlas/read/listAlerts.d.ts +14 -0
  168. package/dist/cjs/tools/atlas/read/listAlerts.d.ts.map +1 -0
  169. package/dist/cjs/tools/atlas/read/listAlerts.js +46 -0
  170. package/dist/cjs/tools/atlas/read/listAlerts.js.map +1 -0
  171. package/dist/cjs/tools/atlas/read/listClusters.d.ts +16 -0
  172. package/dist/cjs/tools/atlas/read/listClusters.d.ts.map +1 -0
  173. package/dist/cjs/tools/atlas/read/listClusters.js +96 -0
  174. package/dist/cjs/tools/atlas/read/listClusters.js.map +1 -0
  175. package/dist/cjs/tools/atlas/read/listDBUsers.d.ts +14 -0
  176. package/dist/cjs/tools/atlas/read/listDBUsers.d.ts.map +1 -0
  177. package/dist/cjs/tools/atlas/read/listDBUsers.js +58 -0
  178. package/dist/cjs/tools/atlas/read/listDBUsers.js.map +1 -0
  179. package/dist/cjs/tools/atlas/read/listOrgs.d.ts +11 -0
  180. package/dist/cjs/tools/atlas/read/listOrgs.d.ts.map +1 -0
  181. package/dist/cjs/tools/atlas/read/listOrgs.js +36 -0
  182. package/dist/cjs/tools/atlas/read/listOrgs.js.map +1 -0
  183. package/dist/cjs/tools/atlas/read/listProjects.d.ts +15 -0
  184. package/dist/cjs/tools/atlas/read/listProjects.d.ts.map +1 -0
  185. package/dist/cjs/tools/atlas/read/listProjects.js +59 -0
  186. package/dist/cjs/tools/atlas/read/listProjects.js.map +1 -0
  187. package/dist/cjs/tools/atlas/tools.d.ts +14 -0
  188. package/dist/cjs/tools/atlas/tools.d.ts.map +1 -0
  189. package/dist/cjs/tools/atlas/tools.js +30 -0
  190. package/dist/cjs/tools/atlas/tools.js.map +1 -0
  191. package/dist/cjs/tools/mongodb/connect/connect.d.ts +26 -0
  192. package/dist/cjs/tools/mongodb/connect/connect.d.ts.map +1 -0
  193. package/dist/cjs/tools/mongodb/connect/connect.js +86 -0
  194. package/dist/cjs/tools/mongodb/connect/connect.js.map +1 -0
  195. package/dist/cjs/tools/mongodb/create/createCollection.d.ts +14 -0
  196. package/dist/cjs/tools/mongodb/create/createCollection.d.ts.map +1 -0
  197. package/dist/cjs/tools/mongodb/create/createCollection.js +27 -0
  198. package/dist/cjs/tools/mongodb/create/createCollection.js.map +1 -0
  199. package/dist/cjs/tools/mongodb/create/createIndex.d.ts +18 -0
  200. package/dist/cjs/tools/mongodb/create/createIndex.d.ts.map +1 -0
  201. package/dist/cjs/tools/mongodb/create/createIndex.js +37 -0
  202. package/dist/cjs/tools/mongodb/create/createIndex.js.map +1 -0
  203. package/dist/cjs/tools/mongodb/create/insertMany.d.ts +16 -0
  204. package/dist/cjs/tools/mongodb/create/insertMany.d.ts.map +1 -0
  205. package/dist/cjs/tools/mongodb/create/insertMany.js +37 -0
  206. package/dist/cjs/tools/mongodb/create/insertMany.js.map +1 -0
  207. package/dist/cjs/tools/mongodb/delete/deleteMany.d.ts +16 -0
  208. package/dist/cjs/tools/mongodb/delete/deleteMany.d.ts.map +1 -0
  209. package/dist/cjs/tools/mongodb/delete/deleteMany.js +53 -0
  210. package/dist/cjs/tools/mongodb/delete/deleteMany.js.map +1 -0
  211. package/dist/cjs/tools/mongodb/delete/dropCollection.d.ts +14 -0
  212. package/dist/cjs/tools/mongodb/delete/dropCollection.d.ts.map +1 -0
  213. package/dist/cjs/tools/mongodb/delete/dropCollection.js +29 -0
  214. package/dist/cjs/tools/mongodb/delete/dropCollection.js.map +1 -0
  215. package/dist/cjs/tools/mongodb/delete/dropDatabase.d.ts +13 -0
  216. package/dist/cjs/tools/mongodb/delete/dropDatabase.d.ts.map +1 -0
  217. package/dist/cjs/tools/mongodb/delete/dropDatabase.js +29 -0
  218. package/dist/cjs/tools/mongodb/delete/dropDatabase.js.map +1 -0
  219. package/dist/cjs/tools/mongodb/metadata/collectionSchema.d.ts +14 -0
  220. package/dist/cjs/tools/mongodb/metadata/collectionSchema.d.ts.map +1 -0
  221. package/dist/cjs/tools/mongodb/metadata/collectionSchema.js +36 -0
  222. package/dist/cjs/tools/mongodb/metadata/collectionSchema.js.map +1 -0
  223. package/dist/cjs/tools/mongodb/metadata/collectionStorageSize.d.ts +16 -0
  224. package/dist/cjs/tools/mongodb/metadata/collectionStorageSize.d.ts.map +1 -0
  225. package/dist/cjs/tools/mongodb/metadata/collectionStorageSize.js +61 -0
  226. package/dist/cjs/tools/mongodb/metadata/collectionStorageSize.js.map +1 -0
  227. package/dist/cjs/tools/mongodb/metadata/dbStats.d.ts +13 -0
  228. package/dist/cjs/tools/mongodb/metadata/dbStats.d.ts.map +1 -0
  229. package/dist/cjs/tools/mongodb/metadata/dbStats.js +29 -0
  230. package/dist/cjs/tools/mongodb/metadata/dbStats.js.map +1 -0
  231. package/dist/cjs/tools/mongodb/metadata/explain.d.ts +89 -0
  232. package/dist/cjs/tools/mongodb/metadata/explain.d.ts.map +1 -0
  233. package/dist/cjs/tools/mongodb/metadata/explain.js +80 -0
  234. package/dist/cjs/tools/mongodb/metadata/explain.js.map +1 -0
  235. package/dist/cjs/tools/mongodb/metadata/listCollections.d.ts +13 -0
  236. package/dist/cjs/tools/mongodb/metadata/listCollections.d.ts.map +1 -0
  237. package/dist/cjs/tools/mongodb/metadata/listCollections.js +35 -0
  238. package/dist/cjs/tools/mongodb/metadata/listCollections.js.map +1 -0
  239. package/dist/cjs/tools/mongodb/metadata/listDatabases.d.ts +11 -0
  240. package/dist/cjs/tools/mongodb/metadata/listDatabases.d.ts.map +1 -0
  241. package/dist/cjs/tools/mongodb/metadata/listDatabases.js +25 -0
  242. package/dist/cjs/tools/mongodb/metadata/listDatabases.js.map +1 -0
  243. package/dist/cjs/tools/mongodb/metadata/logs.d.ts +15 -0
  244. package/dist/cjs/tools/mongodb/metadata/logs.d.ts.map +1 -0
  245. package/dist/cjs/tools/mongodb/metadata/logs.js +49 -0
  246. package/dist/cjs/tools/mongodb/metadata/logs.js.map +1 -0
  247. package/dist/cjs/tools/mongodb/mongodbTool.d.ts +20 -0
  248. package/dist/cjs/tools/mongodb/mongodbTool.d.ts.map +1 -0
  249. package/dist/cjs/tools/mongodb/mongodbTool.js +89 -0
  250. package/dist/cjs/tools/mongodb/mongodbTool.js.map +1 -0
  251. package/dist/cjs/tools/mongodb/read/aggregate.d.ts +20 -0
  252. package/dist/cjs/tools/mongodb/read/aggregate.d.ts.map +1 -0
  253. package/dist/cjs/tools/mongodb/read/aggregate.js +52 -0
  254. package/dist/cjs/tools/mongodb/read/aggregate.js.map +1 -0
  255. package/dist/cjs/tools/mongodb/read/collectionIndexes.d.ts +15 -0
  256. package/dist/cjs/tools/mongodb/read/collectionIndexes.d.ts.map +1 -0
  257. package/dist/cjs/tools/mongodb/read/collectionIndexes.js +40 -0
  258. package/dist/cjs/tools/mongodb/read/collectionIndexes.js.map +1 -0
  259. package/dist/cjs/tools/mongodb/read/count.d.ts +19 -0
  260. package/dist/cjs/tools/mongodb/read/count.d.ts.map +1 -0
  261. package/dist/cjs/tools/mongodb/read/count.js +51 -0
  262. package/dist/cjs/tools/mongodb/read/count.js.map +1 -0
  263. package/dist/cjs/tools/mongodb/read/export.d.ts +72 -0
  264. package/dist/cjs/tools/mongodb/read/export.d.ts.map +1 -0
  265. package/dist/cjs/tools/mongodb/read/export.js +119 -0
  266. package/dist/cjs/tools/mongodb/read/export.js.map +1 -0
  267. package/dist/cjs/tools/mongodb/read/find.d.ts +26 -0
  268. package/dist/cjs/tools/mongodb/read/find.d.ts.map +1 -0
  269. package/dist/cjs/tools/mongodb/read/find.js +53 -0
  270. package/dist/cjs/tools/mongodb/read/find.js.map +1 -0
  271. package/dist/cjs/tools/mongodb/tools.d.ts +23 -0
  272. package/dist/cjs/tools/mongodb/tools.d.ts.map +1 -0
  273. package/dist/cjs/tools/mongodb/tools.js +48 -0
  274. package/dist/cjs/tools/mongodb/tools.js.map +1 -0
  275. package/dist/cjs/tools/mongodb/update/renameCollection.d.ts +18 -0
  276. package/dist/cjs/tools/mongodb/update/renameCollection.d.ts.map +1 -0
  277. package/dist/cjs/tools/mongodb/update/renameCollection.js +59 -0
  278. package/dist/cjs/tools/mongodb/update/renameCollection.js.map +1 -0
  279. package/dist/cjs/tools/mongodb/update/updateMany.d.ts +18 -0
  280. package/dist/cjs/tools/mongodb/update/updateMany.d.ts.map +1 -0
  281. package/dist/cjs/tools/mongodb/update/updateMany.js +78 -0
  282. package/dist/cjs/tools/mongodb/update/updateMany.js.map +1 -0
  283. package/dist/cjs/tools/tool.d.ts +49 -0
  284. package/dist/cjs/tools/tool.d.ts.map +1 -0
  285. package/dist/cjs/tools/tool.js +207 -0
  286. package/dist/cjs/tools/tool.js.map +1 -0
  287. package/dist/cjs/transports/base.d.ts +28 -0
  288. package/dist/cjs/transports/base.d.ts.map +1 -0
  289. package/dist/cjs/transports/base.js +83 -0
  290. package/dist/cjs/transports/base.js.map +1 -0
  291. package/dist/cjs/transports/stdio.d.ts +17 -0
  292. package/dist/cjs/transports/stdio.d.ts.map +1 -0
  293. package/dist/cjs/transports/stdio.js +69 -0
  294. package/dist/cjs/transports/stdio.js.map +1 -0
  295. package/dist/cjs/transports/streamableHttp.d.ts +11 -0
  296. package/dist/cjs/transports/streamableHttp.d.ts.map +1 -0
  297. package/dist/cjs/transports/streamableHttp.js +220 -0
  298. package/dist/cjs/transports/streamableHttp.js.map +1 -0
  299. package/dist/esm/common/atlas/accessListUtils.d.ts +16 -0
  300. package/dist/esm/common/atlas/accessListUtils.d.ts.map +1 -0
  301. package/dist/esm/common/atlas/accessListUtils.js +51 -0
  302. package/dist/esm/common/atlas/accessListUtils.js.map +1 -0
  303. package/dist/esm/common/atlas/apiClient.d.ts +235 -0
  304. package/dist/esm/common/atlas/apiClient.d.ts.map +1 -0
  305. package/dist/esm/common/atlas/apiClient.js +399 -0
  306. package/dist/esm/common/atlas/apiClient.js.map +1 -0
  307. package/dist/esm/common/atlas/apiClientError.d.ts +11 -0
  308. package/dist/esm/common/atlas/apiClientError.d.ts.map +1 -0
  309. package/dist/esm/common/atlas/apiClientError.js.map +1 -0
  310. package/dist/esm/common/atlas/cluster.d.ts +14 -0
  311. package/dist/esm/common/atlas/cluster.d.ts.map +1 -0
  312. package/dist/esm/common/atlas/cluster.js +70 -0
  313. package/dist/esm/common/atlas/cluster.js.map +1 -0
  314. package/dist/esm/common/atlas/roles.d.ts +8 -0
  315. package/dist/esm/common/atlas/roles.d.ts.map +1 -0
  316. package/dist/esm/common/atlas/roles.js +25 -0
  317. package/dist/esm/common/atlas/roles.js.map +1 -0
  318. package/dist/esm/common/config.d.ts +46 -0
  319. package/dist/esm/common/config.d.ts.map +1 -0
  320. package/dist/esm/common/config.js +372 -0
  321. package/dist/esm/common/config.js.map +1 -0
  322. package/dist/esm/common/connectionErrorHandler.d.ts +18 -0
  323. package/dist/esm/common/connectionErrorHandler.d.ts.map +1 -0
  324. package/dist/esm/common/connectionErrorHandler.js +66 -0
  325. package/dist/esm/common/connectionErrorHandler.js.map +1 -0
  326. package/dist/esm/common/connectionManager.d.ts +100 -0
  327. package/dist/esm/common/connectionManager.d.ts.map +1 -0
  328. package/dist/esm/common/connectionManager.js +233 -0
  329. package/dist/esm/common/connectionManager.js.map +1 -0
  330. package/dist/esm/common/errors.d.ts +11 -0
  331. package/dist/esm/common/errors.d.ts.map +1 -0
  332. package/dist/esm/common/errors.js +14 -0
  333. package/dist/esm/common/errors.js.map +1 -0
  334. package/dist/esm/common/exportsManager.d.ts +86 -0
  335. package/dist/esm/common/exportsManager.d.ts.map +1 -0
  336. package/dist/esm/common/exportsManager.js +278 -0
  337. package/dist/esm/common/exportsManager.js.map +1 -0
  338. package/dist/esm/common/keychain.d.ts +22 -0
  339. package/dist/esm/common/keychain.d.ts.map +1 -0
  340. package/dist/esm/common/keychain.js +31 -0
  341. package/dist/esm/common/keychain.js.map +1 -0
  342. package/dist/esm/common/logger.d.ts +125 -0
  343. package/dist/esm/common/logger.d.ts.map +1 -0
  344. package/dist/esm/common/logger.js +263 -0
  345. package/dist/esm/common/logger.js.map +1 -0
  346. package/dist/esm/common/managedTimeout.d.ts +6 -0
  347. package/dist/esm/common/managedTimeout.d.ts.map +1 -0
  348. package/dist/esm/common/managedTimeout.js.map +1 -0
  349. package/dist/esm/common/packageInfo.d.ts +5 -0
  350. package/dist/esm/common/packageInfo.d.ts.map +1 -0
  351. package/dist/esm/common/packageInfo.js +6 -0
  352. package/dist/esm/common/packageInfo.js.map +1 -0
  353. package/dist/esm/common/session.d.ts +45 -0
  354. package/dist/esm/common/session.d.ts.map +1 -0
  355. package/dist/esm/common/session.js +100 -0
  356. package/dist/esm/common/session.js.map +1 -0
  357. package/dist/esm/common/sessionStore.d.ts +16 -0
  358. package/dist/esm/common/sessionStore.d.ts.map +1 -0
  359. package/dist/esm/common/sessionStore.js +95 -0
  360. package/dist/esm/common/sessionStore.js.map +1 -0
  361. package/dist/esm/helpers/connectionOptions.d.ts +25 -0
  362. package/dist/esm/helpers/connectionOptions.d.ts.map +1 -0
  363. package/dist/esm/helpers/connectionOptions.js +39 -0
  364. package/dist/esm/helpers/connectionOptions.js.map +1 -0
  365. package/dist/esm/helpers/container.d.ts +2 -0
  366. package/dist/esm/helpers/container.d.ts.map +1 -0
  367. package/dist/esm/helpers/container.js.map +1 -0
  368. package/dist/esm/helpers/deviceId.d.ts +24 -0
  369. package/dist/esm/helpers/deviceId.d.ts.map +1 -0
  370. package/dist/esm/helpers/deviceId.js +69 -0
  371. package/dist/esm/helpers/deviceId.js.map +1 -0
  372. package/dist/esm/helpers/generatePassword.d.ts +2 -0
  373. package/dist/esm/helpers/generatePassword.d.ts.map +1 -0
  374. package/dist/esm/helpers/generatePassword.js.map +1 -0
  375. package/dist/esm/helpers/indexCheck.d.ts +17 -0
  376. package/dist/esm/helpers/indexCheck.d.ts.map +1 -0
  377. package/dist/esm/helpers/indexCheck.js.map +1 -0
  378. package/dist/esm/index.d.ts +3 -0
  379. package/dist/esm/index.d.ts.map +1 -0
  380. package/dist/esm/index.js +133 -0
  381. package/dist/esm/index.js.map +1 -0
  382. package/dist/esm/lib.d.ts +12 -0
  383. package/dist/esm/lib.d.ts.map +1 -0
  384. package/dist/esm/lib.js +10 -0
  385. package/dist/esm/lib.js.map +1 -0
  386. package/dist/esm/package.json +1 -0
  387. package/dist/esm/resources/common/config.d.ts +10 -0
  388. package/dist/esm/resources/common/config.d.ts.map +1 -0
  389. package/dist/esm/resources/common/config.js +42 -0
  390. package/dist/esm/resources/common/config.js.map +1 -0
  391. package/dist/esm/resources/common/debug.d.ts +17 -0
  392. package/dist/esm/resources/common/debug.d.ts.map +1 -0
  393. package/dist/esm/resources/common/debug.js +63 -0
  394. package/dist/esm/resources/common/debug.js.map +1 -0
  395. package/dist/esm/resources/common/exportedData.d.ts +15 -0
  396. package/dist/esm/resources/common/exportedData.d.ts.map +1 -0
  397. package/dist/esm/resources/common/exportedData.js +99 -0
  398. package/dist/esm/resources/common/exportedData.js.map +1 -0
  399. package/dist/esm/resources/resource.d.ts +44 -0
  400. package/dist/esm/resources/resource.d.ts.map +1 -0
  401. package/dist/esm/resources/resource.js +52 -0
  402. package/dist/esm/resources/resource.js.map +1 -0
  403. package/dist/esm/resources/resources.d.ts +5 -0
  404. package/dist/esm/resources/resources.d.ts.map +1 -0
  405. package/dist/esm/resources/resources.js +5 -0
  406. package/dist/esm/resources/resources.js.map +1 -0
  407. package/dist/esm/server.d.ts +43 -0
  408. package/dist/esm/server.d.ts.map +1 -0
  409. package/dist/esm/server.js +199 -0
  410. package/dist/esm/server.js.map +1 -0
  411. package/dist/esm/telemetry/constants.d.ts +6 -0
  412. package/dist/esm/telemetry/constants.d.ts.map +1 -0
  413. package/dist/esm/telemetry/constants.js.map +1 -0
  414. package/dist/esm/telemetry/eventCache.d.ts +41 -0
  415. package/dist/esm/telemetry/eventCache.d.ts.map +1 -0
  416. package/dist/esm/telemetry/eventCache.js +60 -0
  417. package/dist/esm/telemetry/eventCache.js.map +1 -0
  418. package/dist/esm/telemetry/telemetry.d.ts +57 -0
  419. package/dist/esm/telemetry/telemetry.d.ts.map +1 -0
  420. package/dist/esm/telemetry/telemetry.js +178 -0
  421. package/dist/esm/telemetry/telemetry.js.map +1 -0
  422. package/dist/esm/telemetry/types.d.ts +118 -0
  423. package/dist/esm/telemetry/types.d.ts.map +1 -0
  424. package/dist/esm/telemetry/types.js.map +1 -0
  425. package/dist/esm/tools/atlas/atlasTool.d.ts +18 -0
  426. package/dist/esm/tools/atlas/atlasTool.d.ts.map +1 -0
  427. package/dist/esm/tools/atlas/atlasTool.js +88 -0
  428. package/dist/esm/tools/atlas/atlasTool.js.map +1 -0
  429. package/dist/esm/tools/atlas/connect/connectCluster.d.ts +18 -0
  430. package/dist/esm/tools/atlas/connect/connectCluster.d.ts.map +1 -0
  431. package/dist/esm/tools/atlas/connect/connectCluster.js +235 -0
  432. package/dist/esm/tools/atlas/connect/connectCluster.js.map +1 -0
  433. package/dist/esm/tools/atlas/create/createAccessList.d.ts +18 -0
  434. package/dist/esm/tools/atlas/create/createAccessList.d.ts.map +1 -0
  435. package/dist/esm/tools/atlas/create/createAccessList.js.map +1 -0
  436. package/dist/esm/tools/atlas/create/createDBUser.d.ts +30 -0
  437. package/dist/esm/tools/atlas/create/createDBUser.d.ts.map +1 -0
  438. package/dist/esm/tools/atlas/create/createDBUser.js +80 -0
  439. package/dist/esm/tools/atlas/create/createDBUser.js.map +1 -0
  440. package/dist/esm/tools/atlas/create/createFreeCluster.d.ts +16 -0
  441. package/dist/esm/tools/atlas/create/createFreeCluster.d.ts.map +1 -0
  442. package/dist/esm/tools/atlas/create/createFreeCluster.js.map +1 -0
  443. package/dist/esm/tools/atlas/create/createProject.d.ts +15 -0
  444. package/dist/esm/tools/atlas/create/createProject.d.ts.map +1 -0
  445. package/dist/esm/tools/atlas/create/createProject.js.map +1 -0
  446. package/dist/esm/tools/atlas/read/inspectAccessList.d.ts +14 -0
  447. package/dist/esm/tools/atlas/read/inspectAccessList.d.ts.map +1 -0
  448. package/dist/esm/tools/atlas/read/inspectAccessList.js +39 -0
  449. package/dist/esm/tools/atlas/read/inspectAccessList.js.map +1 -0
  450. package/dist/esm/tools/atlas/read/inspectCluster.d.ts +16 -0
  451. package/dist/esm/tools/atlas/read/inspectCluster.d.ts.map +1 -0
  452. package/dist/esm/tools/atlas/read/inspectCluster.js +28 -0
  453. package/dist/esm/tools/atlas/read/inspectCluster.js.map +1 -0
  454. package/dist/esm/tools/atlas/read/listAlerts.d.ts +14 -0
  455. package/dist/esm/tools/atlas/read/listAlerts.d.ts.map +1 -0
  456. package/dist/esm/tools/atlas/read/listAlerts.js +42 -0
  457. package/dist/esm/tools/atlas/read/listAlerts.js.map +1 -0
  458. package/dist/esm/tools/atlas/read/listClusters.d.ts +16 -0
  459. package/dist/esm/tools/atlas/read/listClusters.d.ts.map +1 -0
  460. package/dist/esm/tools/atlas/read/listClusters.js +92 -0
  461. package/dist/esm/tools/atlas/read/listClusters.js.map +1 -0
  462. package/dist/esm/tools/atlas/read/listDBUsers.d.ts +14 -0
  463. package/dist/esm/tools/atlas/read/listDBUsers.d.ts.map +1 -0
  464. package/dist/esm/tools/atlas/read/listDBUsers.js +54 -0
  465. package/dist/esm/tools/atlas/read/listDBUsers.js.map +1 -0
  466. package/dist/esm/tools/atlas/read/listOrgs.d.ts +11 -0
  467. package/dist/esm/tools/atlas/read/listOrgs.d.ts.map +1 -0
  468. package/dist/esm/tools/atlas/read/listOrgs.js +32 -0
  469. package/dist/esm/tools/atlas/read/listOrgs.js.map +1 -0
  470. package/dist/esm/tools/atlas/read/listProjects.d.ts +15 -0
  471. package/dist/esm/tools/atlas/read/listProjects.d.ts.map +1 -0
  472. package/dist/esm/tools/atlas/read/listProjects.js +55 -0
  473. package/dist/esm/tools/atlas/read/listProjects.js.map +1 -0
  474. package/dist/esm/tools/atlas/tools.d.ts +14 -0
  475. package/dist/esm/tools/atlas/tools.d.ts.map +1 -0
  476. package/dist/esm/tools/atlas/tools.js.map +1 -0
  477. package/dist/esm/tools/mongodb/connect/connect.d.ts +26 -0
  478. package/dist/esm/tools/mongodb/connect/connect.d.ts.map +1 -0
  479. package/dist/esm/tools/mongodb/connect/connect.js +79 -0
  480. package/dist/esm/tools/mongodb/connect/connect.js.map +1 -0
  481. package/dist/esm/tools/mongodb/create/createCollection.d.ts +14 -0
  482. package/dist/esm/tools/mongodb/create/createCollection.d.ts.map +1 -0
  483. package/dist/esm/tools/mongodb/create/createCollection.js.map +1 -0
  484. package/dist/esm/tools/mongodb/create/createIndex.d.ts +18 -0
  485. package/dist/esm/tools/mongodb/create/createIndex.d.ts.map +1 -0
  486. package/dist/esm/tools/mongodb/create/createIndex.js.map +1 -0
  487. package/dist/esm/tools/mongodb/create/insertMany.d.ts +16 -0
  488. package/dist/esm/tools/mongodb/create/insertMany.d.ts.map +1 -0
  489. package/dist/esm/tools/mongodb/create/insertMany.js.map +1 -0
  490. package/dist/esm/tools/mongodb/delete/deleteMany.d.ts +16 -0
  491. package/dist/esm/tools/mongodb/delete/deleteMany.d.ts.map +1 -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.map +1 -0
  496. package/dist/esm/tools/mongodb/delete/dropDatabase.d.ts +13 -0
  497. package/dist/esm/tools/mongodb/delete/dropDatabase.d.ts.map +1 -0
  498. package/dist/esm/tools/mongodb/delete/dropDatabase.js.map +1 -0
  499. package/dist/esm/tools/mongodb/metadata/collectionSchema.d.ts +14 -0
  500. package/dist/esm/tools/mongodb/metadata/collectionSchema.d.ts.map +1 -0
  501. package/dist/esm/tools/mongodb/metadata/collectionSchema.js +32 -0
  502. package/dist/esm/tools/mongodb/metadata/collectionSchema.js.map +1 -0
  503. package/dist/esm/tools/mongodb/metadata/collectionStorageSize.d.ts +16 -0
  504. package/dist/esm/tools/mongodb/metadata/collectionStorageSize.d.ts.map +1 -0
  505. package/dist/esm/tools/mongodb/metadata/collectionStorageSize.js.map +1 -0
  506. package/dist/esm/tools/mongodb/metadata/dbStats.d.ts +13 -0
  507. package/dist/esm/tools/mongodb/metadata/dbStats.d.ts.map +1 -0
  508. package/dist/esm/tools/mongodb/metadata/dbStats.js +25 -0
  509. package/dist/esm/tools/mongodb/metadata/dbStats.js.map +1 -0
  510. package/dist/esm/tools/mongodb/metadata/explain.d.ts +89 -0
  511. package/dist/esm/tools/mongodb/metadata/explain.d.ts.map +1 -0
  512. package/dist/esm/tools/mongodb/metadata/explain.js +76 -0
  513. package/dist/esm/tools/mongodb/metadata/explain.js.map +1 -0
  514. package/dist/esm/tools/mongodb/metadata/listCollections.d.ts +13 -0
  515. package/dist/esm/tools/mongodb/metadata/listCollections.d.ts.map +1 -0
  516. package/dist/esm/tools/mongodb/metadata/listCollections.js +31 -0
  517. package/dist/esm/tools/mongodb/metadata/listCollections.js.map +1 -0
  518. package/dist/esm/tools/mongodb/metadata/listDatabases.d.ts +11 -0
  519. package/dist/esm/tools/mongodb/metadata/listDatabases.d.ts.map +1 -0
  520. package/dist/esm/tools/mongodb/metadata/listDatabases.js +21 -0
  521. package/dist/esm/tools/mongodb/metadata/listDatabases.js.map +1 -0
  522. package/dist/esm/tools/mongodb/metadata/logs.d.ts +15 -0
  523. package/dist/esm/tools/mongodb/metadata/logs.d.ts.map +1 -0
  524. package/dist/esm/tools/mongodb/metadata/logs.js.map +1 -0
  525. package/dist/esm/tools/mongodb/mongodbTool.d.ts +20 -0
  526. package/dist/esm/tools/mongodb/mongodbTool.d.ts.map +1 -0
  527. package/dist/esm/tools/mongodb/mongodbTool.js +85 -0
  528. package/dist/esm/tools/mongodb/mongodbTool.js.map +1 -0
  529. package/dist/esm/tools/mongodb/read/aggregate.d.ts +20 -0
  530. package/dist/esm/tools/mongodb/read/aggregate.d.ts.map +1 -0
  531. package/dist/esm/tools/mongodb/read/aggregate.js +48 -0
  532. package/dist/esm/tools/mongodb/read/aggregate.js.map +1 -0
  533. package/dist/esm/tools/mongodb/read/collectionIndexes.d.ts +15 -0
  534. package/dist/esm/tools/mongodb/read/collectionIndexes.d.ts.map +1 -0
  535. package/dist/esm/tools/mongodb/read/collectionIndexes.js +36 -0
  536. package/dist/esm/tools/mongodb/read/collectionIndexes.js.map +1 -0
  537. package/dist/esm/tools/mongodb/read/count.d.ts +19 -0
  538. package/dist/esm/tools/mongodb/read/count.d.ts.map +1 -0
  539. package/dist/esm/tools/mongodb/read/count.js.map +1 -0
  540. package/dist/esm/tools/mongodb/read/export.d.ts +72 -0
  541. package/dist/esm/tools/mongodb/read/export.d.ts.map +1 -0
  542. package/dist/esm/tools/mongodb/read/export.js +112 -0
  543. package/dist/esm/tools/mongodb/read/export.js.map +1 -0
  544. package/dist/esm/tools/mongodb/read/find.d.ts +26 -0
  545. package/dist/esm/tools/mongodb/read/find.d.ts.map +1 -0
  546. package/dist/esm/tools/mongodb/read/find.js +49 -0
  547. package/dist/esm/tools/mongodb/read/find.js.map +1 -0
  548. package/dist/esm/tools/mongodb/tools.d.ts +23 -0
  549. package/dist/esm/tools/mongodb/tools.d.ts.map +1 -0
  550. package/dist/esm/tools/mongodb/tools.js +45 -0
  551. package/dist/esm/tools/mongodb/tools.js.map +1 -0
  552. package/dist/esm/tools/mongodb/update/renameCollection.d.ts +18 -0
  553. package/dist/esm/tools/mongodb/update/renameCollection.d.ts.map +1 -0
  554. package/dist/esm/tools/mongodb/update/renameCollection.js.map +1 -0
  555. package/dist/esm/tools/mongodb/update/updateMany.d.ts +18 -0
  556. package/dist/esm/tools/mongodb/update/updateMany.d.ts.map +1 -0
  557. package/dist/esm/tools/mongodb/update/updateMany.js.map +1 -0
  558. package/dist/esm/tools/tool.d.ts +49 -0
  559. package/dist/esm/tools/tool.d.ts.map +1 -0
  560. package/dist/esm/tools/tool.js +202 -0
  561. package/dist/esm/tools/tool.js.map +1 -0
  562. package/dist/esm/transports/base.d.ts +28 -0
  563. package/dist/esm/transports/base.d.ts.map +1 -0
  564. package/dist/esm/transports/base.js +79 -0
  565. package/dist/esm/transports/base.js.map +1 -0
  566. package/dist/esm/transports/stdio.d.ts +17 -0
  567. package/dist/esm/transports/stdio.d.ts.map +1 -0
  568. package/dist/esm/transports/stdio.js +63 -0
  569. package/dist/esm/transports/stdio.js.map +1 -0
  570. package/dist/esm/transports/streamableHttp.d.ts +11 -0
  571. package/dist/esm/transports/streamableHttp.d.ts.map +1 -0
  572. package/dist/esm/transports/streamableHttp.js +213 -0
  573. package/dist/esm/transports/streamableHttp.js.map +1 -0
  574. package/dist/index.js +1 -44
  575. package/package.json +64 -30
  576. package/.dockerignore +0 -11
  577. package/.github/CODEOWNERS +0 -1
  578. package/.github/ISSUE_TEMPLATE/bug_report.yml +0 -48
  579. package/.github/dependabot.yml +0 -10
  580. package/.github/pull_request_template.md +0 -5
  581. package/.github/workflows/accuracy-tests.yml +0 -55
  582. package/.github/workflows/check-pr-title.yml +0 -29
  583. package/.github/workflows/check.yml +0 -58
  584. package/.github/workflows/code_health.yaml +0 -94
  585. package/.github/workflows/code_health_fork.yaml +0 -36
  586. package/.github/workflows/codeql.yml +0 -34
  587. package/.github/workflows/dependabot_pr.yaml +0 -26
  588. package/.github/workflows/docker.yaml +0 -57
  589. package/.github/workflows/jira-issue.yml +0 -72
  590. package/.github/workflows/prepare_release.yaml +0 -53
  591. package/.github/workflows/publish.yaml +0 -73
  592. package/.github/workflows/stale.yml +0 -32
  593. package/.prettierignore +0 -5
  594. package/.prettierrc.json +0 -37
  595. package/.smithery/Dockerfile +0 -30
  596. package/.smithery/smithery.yaml +0 -73
  597. package/.vscode/extensions.json +0 -9
  598. package/.vscode/launch.json +0 -27
  599. package/.vscode/settings.json +0 -1
  600. package/CONTRIBUTING.md +0 -185
  601. package/Dockerfile +0 -11
  602. package/dist/common/atlas/accessListUtils.js +0 -36
  603. package/dist/common/atlas/accessListUtils.js.map +0 -1
  604. package/dist/common/atlas/apiClient.js +0 -306
  605. package/dist/common/atlas/apiClient.js.map +0 -1
  606. package/dist/common/atlas/apiClientError.js.map +0 -1
  607. package/dist/common/atlas/cluster.js +0 -66
  608. package/dist/common/atlas/cluster.js.map +0 -1
  609. package/dist/common/config.js +0 -89
  610. package/dist/common/config.js.map +0 -1
  611. package/dist/common/errors.js +0 -13
  612. package/dist/common/errors.js.map +0 -1
  613. package/dist/common/logger.js +0 -152
  614. package/dist/common/logger.js.map +0 -1
  615. package/dist/common/managedTimeout.js.map +0 -1
  616. package/dist/common/packageInfo.js +0 -6
  617. package/dist/common/packageInfo.js.map +0 -1
  618. package/dist/common/session.js +0 -83
  619. package/dist/common/session.js.map +0 -1
  620. package/dist/common/sessionStore.js +0 -73
  621. package/dist/common/sessionStore.js.map +0 -1
  622. package/dist/helpers/connectionOptions.js +0 -10
  623. package/dist/helpers/connectionOptions.js.map +0 -1
  624. package/dist/helpers/container.js.map +0 -1
  625. package/dist/helpers/generatePassword.js.map +0 -1
  626. package/dist/helpers/indexCheck.js.map +0 -1
  627. package/dist/index.js.map +0 -1
  628. package/dist/server.js +0 -179
  629. package/dist/server.js.map +0 -1
  630. package/dist/telemetry/constants.js.map +0 -1
  631. package/dist/telemetry/eventCache.js +0 -53
  632. package/dist/telemetry/eventCache.js.map +0 -1
  633. package/dist/telemetry/telemetry.js +0 -143
  634. package/dist/telemetry/telemetry.js.map +0 -1
  635. package/dist/telemetry/types.js.map +0 -1
  636. package/dist/tools/atlas/atlasTool.js +0 -84
  637. package/dist/tools/atlas/atlasTool.js.map +0 -1
  638. package/dist/tools/atlas/connect/connectCluster.js +0 -198
  639. package/dist/tools/atlas/connect/connectCluster.js.map +0 -1
  640. package/dist/tools/atlas/create/createAccessList.js.map +0 -1
  641. package/dist/tools/atlas/create/createDBUser.js +0 -76
  642. package/dist/tools/atlas/create/createDBUser.js.map +0 -1
  643. package/dist/tools/atlas/create/createFreeCluster.js.map +0 -1
  644. package/dist/tools/atlas/create/createProject.js.map +0 -1
  645. package/dist/tools/atlas/read/inspectAccessList.js +0 -40
  646. package/dist/tools/atlas/read/inspectAccessList.js.map +0 -1
  647. package/dist/tools/atlas/read/inspectCluster.js +0 -32
  648. package/dist/tools/atlas/read/inspectCluster.js.map +0 -1
  649. package/dist/tools/atlas/read/listAlerts.js +0 -41
  650. package/dist/tools/atlas/read/listAlerts.js.map +0 -1
  651. package/dist/tools/atlas/read/listClusters.js +0 -98
  652. package/dist/tools/atlas/read/listClusters.js.map +0 -1
  653. package/dist/tools/atlas/read/listDBUsers.js +0 -51
  654. package/dist/tools/atlas/read/listDBUsers.js.map +0 -1
  655. package/dist/tools/atlas/read/listOrgs.js +0 -29
  656. package/dist/tools/atlas/read/listOrgs.js.map +0 -1
  657. package/dist/tools/atlas/read/listProjects.js +0 -50
  658. package/dist/tools/atlas/read/listProjects.js.map +0 -1
  659. package/dist/tools/atlas/tools.js.map +0 -1
  660. package/dist/tools/mongodb/connect/connect.js +0 -76
  661. package/dist/tools/mongodb/connect/connect.js.map +0 -1
  662. package/dist/tools/mongodb/create/createCollection.js.map +0 -1
  663. package/dist/tools/mongodb/create/createIndex.js.map +0 -1
  664. package/dist/tools/mongodb/create/insertMany.js.map +0 -1
  665. package/dist/tools/mongodb/delete/deleteMany.js.map +0 -1
  666. package/dist/tools/mongodb/delete/dropCollection.js.map +0 -1
  667. package/dist/tools/mongodb/delete/dropDatabase.js.map +0 -1
  668. package/dist/tools/mongodb/metadata/collectionSchema.js +0 -40
  669. package/dist/tools/mongodb/metadata/collectionSchema.js.map +0 -1
  670. package/dist/tools/mongodb/metadata/collectionStorageSize.js.map +0 -1
  671. package/dist/tools/mongodb/metadata/dbStats.js +0 -33
  672. package/dist/tools/mongodb/metadata/dbStats.js.map +0 -1
  673. package/dist/tools/mongodb/metadata/explain.js +0 -84
  674. package/dist/tools/mongodb/metadata/explain.js.map +0 -1
  675. package/dist/tools/mongodb/metadata/listCollections.js +0 -35
  676. package/dist/tools/mongodb/metadata/listCollections.js.map +0 -1
  677. package/dist/tools/mongodb/metadata/listDatabases.js +0 -23
  678. package/dist/tools/mongodb/metadata/listDatabases.js.map +0 -1
  679. package/dist/tools/mongodb/metadata/logs.js.map +0 -1
  680. package/dist/tools/mongodb/mongodbTool.js +0 -111
  681. package/dist/tools/mongodb/mongodbTool.js.map +0 -1
  682. package/dist/tools/mongodb/read/aggregate.js +0 -47
  683. package/dist/tools/mongodb/read/aggregate.js.map +0 -1
  684. package/dist/tools/mongodb/read/collectionIndexes.js +0 -42
  685. package/dist/tools/mongodb/read/collectionIndexes.js.map +0 -1
  686. package/dist/tools/mongodb/read/count.js.map +0 -1
  687. package/dist/tools/mongodb/read/find.js +0 -60
  688. package/dist/tools/mongodb/read/find.js.map +0 -1
  689. package/dist/tools/mongodb/tools.js +0 -43
  690. package/dist/tools/mongodb/tools.js.map +0 -1
  691. package/dist/tools/mongodb/update/renameCollection.js.map +0 -1
  692. package/dist/tools/mongodb/update/updateMany.js.map +0 -1
  693. package/dist/tools/tool.js +0 -153
  694. package/dist/tools/tool.js.map +0 -1
  695. package/dist/transports/base.js +0 -26
  696. package/dist/transports/base.js.map +0 -1
  697. package/dist/transports/stdio.js +0 -60
  698. package/dist/transports/stdio.js.map +0 -1
  699. package/dist/transports/streamableHttp.js +0 -140
  700. package/dist/transports/streamableHttp.js.map +0 -1
  701. package/eslint.config.js +0 -64
  702. package/resources/test-summary-template.html +0 -415
  703. package/scripts/accuracy/generateTestSummary.ts +0 -335
  704. package/scripts/accuracy/runAccuracyTests.sh +0 -45
  705. package/scripts/accuracy/updateAccuracyRunStatus.ts +0 -21
  706. package/scripts/apply.ts +0 -135
  707. package/scripts/filter.ts +0 -76
  708. package/scripts/generate.sh +0 -11
  709. package/src/common/atlas/accessListUtils.ts +0 -54
  710. package/src/common/atlas/apiClient.ts +0 -406
  711. package/src/common/atlas/apiClientError.ts +0 -72
  712. package/src/common/atlas/cluster.ts +0 -94
  713. package/src/common/atlas/openapi.d.ts +0 -7486
  714. package/src/common/config.ts +0 -137
  715. package/src/common/errors.ts +0 -14
  716. package/src/common/logger.ts +0 -188
  717. package/src/common/managedTimeout.ts +0 -27
  718. package/src/common/packageInfo.ts +0 -6
  719. package/src/common/session.ts +0 -118
  720. package/src/common/sessionStore.ts +0 -111
  721. package/src/helpers/connectionOptions.ts +0 -20
  722. package/src/helpers/container.ts +0 -35
  723. package/src/helpers/generatePassword.ts +0 -10
  724. package/src/helpers/indexCheck.ts +0 -83
  725. package/src/index.ts +0 -48
  726. package/src/server.ts +0 -250
  727. package/src/telemetry/constants.ts +0 -14
  728. package/src/telemetry/eventCache.ts +0 -62
  729. package/src/telemetry/telemetry.ts +0 -202
  730. package/src/telemetry/types.ts +0 -76
  731. package/src/tools/atlas/atlasTool.ts +0 -103
  732. package/src/tools/atlas/connect/connectCluster.ts +0 -259
  733. package/src/tools/atlas/create/createAccessList.ts +0 -78
  734. package/src/tools/atlas/create/createDBUser.ts +0 -90
  735. package/src/tools/atlas/create/createFreeCluster.ts +0 -58
  736. package/src/tools/atlas/create/createProject.ts +0 -68
  737. package/src/tools/atlas/read/inspectAccessList.ts +0 -42
  738. package/src/tools/atlas/read/inspectCluster.ts +0 -34
  739. package/src/tools/atlas/read/listAlerts.ts +0 -45
  740. package/src/tools/atlas/read/listClusters.ts +0 -113
  741. package/src/tools/atlas/read/listDBUsers.ts +0 -60
  742. package/src/tools/atlas/read/listOrgs.ts +0 -32
  743. package/src/tools/atlas/read/listProjects.ts +0 -56
  744. package/src/tools/atlas/tools.ts +0 -27
  745. package/src/tools/mongodb/connect/connect.ts +0 -99
  746. package/src/tools/mongodb/create/createCollection.ts +0 -26
  747. package/src/tools/mongodb/create/createIndex.ts +0 -41
  748. package/src/tools/mongodb/create/insertMany.ts +0 -40
  749. package/src/tools/mongodb/delete/deleteMany.ts +0 -58
  750. package/src/tools/mongodb/delete/dropCollection.ts +0 -27
  751. package/src/tools/mongodb/delete/dropDatabase.ts +0 -26
  752. package/src/tools/mongodb/metadata/collectionSchema.ts +0 -43
  753. package/src/tools/mongodb/metadata/collectionStorageSize.ts +0 -68
  754. package/src/tools/mongodb/metadata/dbStats.ts +0 -35
  755. package/src/tools/mongodb/metadata/explain.ts +0 -103
  756. package/src/tools/mongodb/metadata/listCollections.ts +0 -38
  757. package/src/tools/mongodb/metadata/listDatabases.ts +0 -25
  758. package/src/tools/mongodb/metadata/logs.ts +0 -55
  759. package/src/tools/mongodb/mongodbTool.ts +0 -136
  760. package/src/tools/mongodb/read/aggregate.ts +0 -56
  761. package/src/tools/mongodb/read/collectionIndexes.ts +0 -48
  762. package/src/tools/mongodb/read/count.ts +0 -55
  763. package/src/tools/mongodb/read/find.ts +0 -75
  764. package/src/tools/mongodb/tools.ts +0 -43
  765. package/src/tools/mongodb/update/renameCollection.ts +0 -66
  766. package/src/tools/mongodb/update/updateMany.ts +0 -85
  767. package/src/tools/tool.ts +0 -219
  768. package/src/transports/base.ts +0 -34
  769. package/src/transports/stdio.ts +0 -76
  770. package/src/transports/streamableHttp.ts +0 -178
  771. package/src/types/mongodb-connection-string-url.d.ts +0 -69
  772. package/src/types/mongodb-redact.d.ts +0 -4
  773. package/tests/accuracy/aggregate.test.ts +0 -27
  774. package/tests/accuracy/collectionIndexes.test.ts +0 -40
  775. package/tests/accuracy/collectionSchema.test.ts +0 -28
  776. package/tests/accuracy/collectionStorageSize.test.ts +0 -41
  777. package/tests/accuracy/count.test.ts +0 -44
  778. package/tests/accuracy/createCollection.test.ts +0 -46
  779. package/tests/accuracy/createIndex.test.ts +0 -37
  780. package/tests/accuracy/dbStats.test.ts +0 -15
  781. package/tests/accuracy/deleteMany.test.ts +0 -44
  782. package/tests/accuracy/dropCollection.test.ts +0 -74
  783. package/tests/accuracy/dropDatabase.test.ts +0 -41
  784. package/tests/accuracy/explain.test.ts +0 -73
  785. package/tests/accuracy/find.test.ts +0 -114
  786. package/tests/accuracy/insertMany.test.ts +0 -48
  787. package/tests/accuracy/listCollections.test.ts +0 -60
  788. package/tests/accuracy/listDatabases.test.ts +0 -31
  789. package/tests/accuracy/logs.test.ts +0 -28
  790. package/tests/accuracy/renameCollection.test.ts +0 -31
  791. package/tests/accuracy/sdk/accuracyResultStorage/diskStorage.ts +0 -189
  792. package/tests/accuracy/sdk/accuracyResultStorage/getAccuracyResultStorage.ts +0 -11
  793. package/tests/accuracy/sdk/accuracyResultStorage/mongodbStorage.ts +0 -151
  794. package/tests/accuracy/sdk/accuracyResultStorage/resultStorage.ts +0 -117
  795. package/tests/accuracy/sdk/accuracyScorer.ts +0 -93
  796. package/tests/accuracy/sdk/accuracyTestingClient.ts +0 -94
  797. package/tests/accuracy/sdk/agent.ts +0 -56
  798. package/tests/accuracy/sdk/constants.ts +0 -26
  799. package/tests/accuracy/sdk/describeAccuracyTests.ts +0 -126
  800. package/tests/accuracy/sdk/gitInfo.ts +0 -7
  801. package/tests/accuracy/sdk/matcher.ts +0 -193
  802. package/tests/accuracy/sdk/models.ts +0 -95
  803. package/tests/accuracy/test-data-dumps/comics.books.json +0 -417
  804. package/tests/accuracy/test-data-dumps/comics.characters.json +0 -402
  805. package/tests/accuracy/test-data-dumps/mflix.movies.json +0 -496
  806. package/tests/accuracy/test-data-dumps/mflix.shows.json +0 -572
  807. package/tests/accuracy/updateMany.test.ts +0 -42
  808. package/tests/integration/helpers.ts +0 -265
  809. package/tests/integration/inMemoryTransport.ts +0 -59
  810. package/tests/integration/indexCheck.test.ts +0 -464
  811. package/tests/integration/server.test.ts +0 -88
  812. package/tests/integration/telemetry.test.ts +0 -29
  813. package/tests/integration/tools/atlas/accessLists.test.ts +0 -118
  814. package/tests/integration/tools/atlas/alerts.test.ts +0 -43
  815. package/tests/integration/tools/atlas/atlasHelpers.ts +0 -111
  816. package/tests/integration/tools/atlas/clusters.test.ts +0 -237
  817. package/tests/integration/tools/atlas/dbUsers.test.ts +0 -118
  818. package/tests/integration/tools/atlas/orgs.test.ts +0 -25
  819. package/tests/integration/tools/atlas/projects.test.ts +0 -79
  820. package/tests/integration/tools/mongodb/connect/connect.test.ts +0 -159
  821. package/tests/integration/tools/mongodb/create/createCollection.test.ts +0 -96
  822. package/tests/integration/tools/mongodb/create/createIndex.test.ts +0 -204
  823. package/tests/integration/tools/mongodb/create/insertMany.test.ts +0 -99
  824. package/tests/integration/tools/mongodb/delete/deleteMany.test.ts +0 -155
  825. package/tests/integration/tools/mongodb/delete/dropCollection.test.ts +0 -69
  826. package/tests/integration/tools/mongodb/delete/dropDatabase.test.ts +0 -81
  827. package/tests/integration/tools/mongodb/metadata/collectionSchema.test.ts +0 -155
  828. package/tests/integration/tools/mongodb/metadata/collectionStorageSize.test.ts +0 -87
  829. package/tests/integration/tools/mongodb/metadata/dbStats.test.ts +0 -105
  830. package/tests/integration/tools/mongodb/metadata/explain.test.ts +0 -172
  831. package/tests/integration/tools/mongodb/metadata/listCollections.test.ts +0 -77
  832. package/tests/integration/tools/mongodb/metadata/listDatabases.test.ts +0 -78
  833. package/tests/integration/tools/mongodb/metadata/logs.test.ts +0 -84
  834. package/tests/integration/tools/mongodb/mongodbHelpers.ts +0 -235
  835. package/tests/integration/tools/mongodb/read/aggregate.test.ts +0 -115
  836. package/tests/integration/tools/mongodb/read/collectionIndexes.test.ts +0 -100
  837. package/tests/integration/tools/mongodb/read/count.test.ts +0 -96
  838. package/tests/integration/tools/mongodb/read/find.test.ts +0 -211
  839. package/tests/integration/tools/mongodb/update/renameCollection.test.ts +0 -195
  840. package/tests/integration/tools/mongodb/update/updateMany.test.ts +0 -239
  841. package/tests/integration/transports/stdio.test.ts +0 -40
  842. package/tests/integration/transports/streamableHttp.test.ts +0 -56
  843. package/tests/matchers/toIncludeSameMembers.test.ts +0 -59
  844. package/tests/matchers/toIncludeSameMembers.ts +0 -12
  845. package/tests/setup.ts +0 -7
  846. package/tests/unit/accessListUtils.test.ts +0 -39
  847. package/tests/unit/accuracyScorer.test.ts +0 -390
  848. package/tests/unit/common/apiClient.test.ts +0 -193
  849. package/tests/unit/common/managedTimeout.test.ts +0 -67
  850. package/tests/unit/common/session.test.ts +0 -60
  851. package/tests/unit/helpers/indexCheck.test.ts +0 -150
  852. package/tests/unit/telemetry.test.ts +0 -332
  853. package/tests/unit/transports/stdio.test.ts +0 -71
  854. package/tests/vitest.d.ts +0 -11
  855. package/tsconfig.build.json +0 -20
  856. package/tsconfig.json +0 -8
  857. package/tsconfig.test.json +0 -8
  858. package/vitest.config.ts +0 -41
  859. /package/dist/{common → esm/common}/atlas/apiClientError.js +0 -0
  860. /package/dist/{common → esm/common}/managedTimeout.js +0 -0
  861. /package/dist/{helpers → esm/helpers}/container.js +0 -0
  862. /package/dist/{helpers → esm/helpers}/generatePassword.js +0 -0
  863. /package/dist/{helpers → esm/helpers}/indexCheck.js +0 -0
  864. /package/dist/{telemetry → esm/telemetry}/constants.js +0 -0
  865. /package/dist/{telemetry → esm/telemetry}/types.js +0 -0
  866. /package/dist/{tools → esm/tools}/atlas/create/createAccessList.js +0 -0
  867. /package/dist/{tools → esm/tools}/atlas/create/createFreeCluster.js +0 -0
  868. /package/dist/{tools → esm/tools}/atlas/create/createProject.js +0 -0
  869. /package/dist/{tools → esm/tools}/atlas/tools.js +0 -0
  870. /package/dist/{tools → esm/tools}/mongodb/create/createCollection.js +0 -0
  871. /package/dist/{tools → esm/tools}/mongodb/create/createIndex.js +0 -0
  872. /package/dist/{tools → esm/tools}/mongodb/create/insertMany.js +0 -0
  873. /package/dist/{tools → esm/tools}/mongodb/delete/deleteMany.js +0 -0
  874. /package/dist/{tools → esm/tools}/mongodb/delete/dropCollection.js +0 -0
  875. /package/dist/{tools → esm/tools}/mongodb/delete/dropDatabase.js +0 -0
  876. /package/dist/{tools → esm/tools}/mongodb/metadata/collectionStorageSize.js +0 -0
  877. /package/dist/{tools → esm/tools}/mongodb/metadata/logs.js +0 -0
  878. /package/dist/{tools → esm/tools}/mongodb/read/count.js +0 -0
  879. /package/dist/{tools → esm/tools}/mongodb/update/renameCollection.js +0 -0
  880. /package/dist/{tools → esm/tools}/mongodb/update/updateMany.js +0 -0
@@ -1,40 +0,0 @@
1
- import { z } from "zod";
2
- import { CallToolResult } from "@modelcontextprotocol/sdk/types.js";
3
- import { DbOperationArgs, MongoDBToolBase } from "../mongodbTool.js";
4
- import { ToolArgs, OperationType } from "../../tool.js";
5
-
6
- export class InsertManyTool extends MongoDBToolBase {
7
- public name = "insert-many";
8
- protected description = "Insert an array of documents into a MongoDB collection";
9
- protected argsShape = {
10
- ...DbOperationArgs,
11
- documents: z
12
- .array(z.object({}).passthrough().describe("An individual MongoDB document"))
13
- .describe(
14
- "The array of documents to insert, matching the syntax of the document argument of db.collection.insertMany()"
15
- ),
16
- };
17
- public operationType: OperationType = "create";
18
-
19
- protected async execute({
20
- database,
21
- collection,
22
- documents,
23
- }: ToolArgs<typeof this.argsShape>): Promise<CallToolResult> {
24
- const provider = await this.ensureConnected();
25
- const result = await provider.insertMany(database, collection, documents);
26
-
27
- return {
28
- content: [
29
- {
30
- text: `Inserted \`${result.insertedCount}\` document(s) into collection "${collection}"`,
31
- type: "text",
32
- },
33
- {
34
- text: `Inserted IDs: ${Object.values(result.insertedIds).join(", ")}`,
35
- type: "text",
36
- },
37
- ],
38
- };
39
- }
40
- }
@@ -1,58 +0,0 @@
1
- import { z } from "zod";
2
- import { CallToolResult } from "@modelcontextprotocol/sdk/types.js";
3
- import { DbOperationArgs, MongoDBToolBase } from "../mongodbTool.js";
4
- import { ToolArgs, OperationType } from "../../tool.js";
5
- import { checkIndexUsage } from "../../../helpers/indexCheck.js";
6
-
7
- export class DeleteManyTool extends MongoDBToolBase {
8
- public name = "delete-many";
9
- protected description = "Removes all documents that match the filter from a MongoDB collection";
10
- protected argsShape = {
11
- ...DbOperationArgs,
12
- filter: z
13
- .object({})
14
- .passthrough()
15
- .optional()
16
- .describe(
17
- "The query filter, specifying the deletion criteria. Matches the syntax of the filter argument of db.collection.deleteMany()"
18
- ),
19
- };
20
- public operationType: OperationType = "delete";
21
-
22
- protected async execute({
23
- database,
24
- collection,
25
- filter,
26
- }: ToolArgs<typeof this.argsShape>): Promise<CallToolResult> {
27
- const provider = await this.ensureConnected();
28
-
29
- // Check if delete operation uses an index if enabled
30
- if (this.config.indexCheck) {
31
- await checkIndexUsage(provider, database, collection, "deleteMany", async () => {
32
- return provider.runCommandWithCheck(database, {
33
- explain: {
34
- delete: collection,
35
- deletes: [
36
- {
37
- q: filter || {},
38
- limit: 0, // 0 means delete all matching documents
39
- },
40
- ],
41
- },
42
- verbosity: "queryPlanner",
43
- });
44
- });
45
- }
46
-
47
- const result = await provider.deleteMany(database, collection, filter);
48
-
49
- return {
50
- content: [
51
- {
52
- text: `Deleted \`${result.deletedCount}\` document(s) from collection "${collection}"`,
53
- type: "text",
54
- },
55
- ],
56
- };
57
- }
58
- }
@@ -1,27 +0,0 @@
1
- import { CallToolResult } from "@modelcontextprotocol/sdk/types.js";
2
- import { DbOperationArgs, MongoDBToolBase } from "../mongodbTool.js";
3
- import { ToolArgs, OperationType } from "../../tool.js";
4
-
5
- export class DropCollectionTool extends MongoDBToolBase {
6
- public name = "drop-collection";
7
- protected description =
8
- "Removes a collection or view from the database. The method also removes any indexes associated with the dropped collection.";
9
- protected argsShape = {
10
- ...DbOperationArgs,
11
- };
12
- public operationType: OperationType = "delete";
13
-
14
- protected async execute({ database, collection }: ToolArgs<typeof this.argsShape>): Promise<CallToolResult> {
15
- const provider = await this.ensureConnected();
16
- const result = await provider.dropCollection(database, collection);
17
-
18
- return {
19
- content: [
20
- {
21
- text: `${result ? "Successfully dropped" : "Failed to drop"} collection "${collection}" from database "${database}"`,
22
- type: "text",
23
- },
24
- ],
25
- };
26
- }
27
- }
@@ -1,26 +0,0 @@
1
- import { CallToolResult } from "@modelcontextprotocol/sdk/types.js";
2
- import { DbOperationArgs, MongoDBToolBase } from "../mongodbTool.js";
3
- import { ToolArgs, OperationType } from "../../tool.js";
4
-
5
- export class DropDatabaseTool extends MongoDBToolBase {
6
- public name = "drop-database";
7
- protected description = "Removes the specified database, deleting the associated data files";
8
- protected argsShape = {
9
- database: DbOperationArgs.database,
10
- };
11
- public operationType: OperationType = "delete";
12
-
13
- protected async execute({ database }: ToolArgs<typeof this.argsShape>): Promise<CallToolResult> {
14
- const provider = await this.ensureConnected();
15
- const result = await provider.dropDatabase(database);
16
-
17
- return {
18
- content: [
19
- {
20
- text: `${result.ok ? "Successfully dropped" : "Failed to drop"} database "${database}"`,
21
- type: "text",
22
- },
23
- ],
24
- };
25
- }
26
- }
@@ -1,43 +0,0 @@
1
- import { CallToolResult } from "@modelcontextprotocol/sdk/types.js";
2
- import { DbOperationArgs, MongoDBToolBase } from "../mongodbTool.js";
3
- import { ToolArgs, OperationType } from "../../tool.js";
4
- import { getSimplifiedSchema } from "mongodb-schema";
5
-
6
- export class CollectionSchemaTool extends MongoDBToolBase {
7
- public name = "collection-schema";
8
- protected description = "Describe the schema for a collection";
9
- protected argsShape = DbOperationArgs;
10
-
11
- public operationType: OperationType = "metadata";
12
-
13
- protected async execute({ database, collection }: ToolArgs<typeof DbOperationArgs>): Promise<CallToolResult> {
14
- const provider = await this.ensureConnected();
15
- const documents = await provider.find(database, collection, {}, { limit: 5 }).toArray();
16
- const schema = await getSimplifiedSchema(documents);
17
-
18
- const fieldsCount = Object.entries(schema).length;
19
- if (fieldsCount === 0) {
20
- return {
21
- content: [
22
- {
23
- text: `Could not deduce the schema for "${database}.${collection}". This may be because it doesn't exist or is empty.`,
24
- type: "text",
25
- },
26
- ],
27
- };
28
- }
29
-
30
- return {
31
- content: [
32
- {
33
- text: `Found ${fieldsCount} fields in the schema for "${database}.${collection}"`,
34
- type: "text",
35
- },
36
- {
37
- text: JSON.stringify(schema),
38
- type: "text",
39
- },
40
- ],
41
- };
42
- }
43
- }
@@ -1,68 +0,0 @@
1
- import { CallToolResult } from "@modelcontextprotocol/sdk/types.js";
2
- import { DbOperationArgs, MongoDBToolBase } from "../mongodbTool.js";
3
- import { ToolArgs, OperationType } from "../../tool.js";
4
-
5
- export class CollectionStorageSizeTool extends MongoDBToolBase {
6
- public name = "collection-storage-size";
7
- protected description = "Gets the size of the collection";
8
- protected argsShape = DbOperationArgs;
9
-
10
- public operationType: OperationType = "metadata";
11
-
12
- protected async execute({ database, collection }: ToolArgs<typeof DbOperationArgs>): Promise<CallToolResult> {
13
- const provider = await this.ensureConnected();
14
- const [{ value }] = (await provider
15
- .aggregate(database, collection, [
16
- { $collStats: { storageStats: {} } },
17
- { $group: { _id: null, value: { $sum: "$storageStats.size" } } },
18
- ])
19
- .toArray()) as [{ value: number }];
20
-
21
- const { units, value: scaledValue } = CollectionStorageSizeTool.getStats(value);
22
-
23
- return {
24
- content: [
25
- {
26
- text: `The size of "${database}.${collection}" is \`${scaledValue.toFixed(2)} ${units}\``,
27
- type: "text",
28
- },
29
- ],
30
- };
31
- }
32
-
33
- protected handleError(
34
- error: unknown,
35
- args: ToolArgs<typeof this.argsShape>
36
- ): Promise<CallToolResult> | CallToolResult {
37
- if (error instanceof Error && "codeName" in error && error.codeName === "NamespaceNotFound") {
38
- return {
39
- content: [
40
- {
41
- text: `The size of "${args.database}.${args.collection}" cannot be determined because the collection does not exist.`,
42
- type: "text",
43
- },
44
- ],
45
- };
46
- }
47
-
48
- return super.handleError(error, args);
49
- }
50
-
51
- private static getStats(value: number): { value: number; units: string } {
52
- const kb = 1024;
53
- const mb = kb * 1024;
54
- const gb = mb * 1024;
55
-
56
- if (value > gb) {
57
- return { value: value / gb, units: "GB" };
58
- }
59
-
60
- if (value > mb) {
61
- return { value: value / mb, units: "MB" };
62
- }
63
- if (value > kb) {
64
- return { value: value / kb, units: "KB" };
65
- }
66
- return { value, units: "bytes" };
67
- }
68
- }
@@ -1,35 +0,0 @@
1
- import { CallToolResult } from "@modelcontextprotocol/sdk/types.js";
2
- import { DbOperationArgs, MongoDBToolBase } from "../mongodbTool.js";
3
- import { ToolArgs, OperationType } from "../../tool.js";
4
- import { EJSON } from "bson";
5
-
6
- export class DbStatsTool extends MongoDBToolBase {
7
- public name = "db-stats";
8
- protected description = "Returns statistics that reflect the use state of a single database";
9
- protected argsShape = {
10
- database: DbOperationArgs.database,
11
- };
12
-
13
- public operationType: OperationType = "metadata";
14
-
15
- protected async execute({ database }: ToolArgs<typeof this.argsShape>): Promise<CallToolResult> {
16
- const provider = await this.ensureConnected();
17
- const result = await provider.runCommandWithCheck(database, {
18
- dbStats: 1,
19
- scale: 1,
20
- });
21
-
22
- return {
23
- content: [
24
- {
25
- text: `Statistics for database ${database}`,
26
- type: "text",
27
- },
28
- {
29
- text: EJSON.stringify(result),
30
- type: "text",
31
- },
32
- ],
33
- };
34
- }
35
- }
@@ -1,103 +0,0 @@
1
- import { CallToolResult } from "@modelcontextprotocol/sdk/types.js";
2
- import { DbOperationArgs, MongoDBToolBase } from "../mongodbTool.js";
3
- import { ToolArgs, OperationType } from "../../tool.js";
4
- import { z } from "zod";
5
- import { ExplainVerbosity, Document } from "mongodb";
6
- import { AggregateArgs } from "../read/aggregate.js";
7
- import { FindArgs } from "../read/find.js";
8
- import { CountArgs } from "../read/count.js";
9
-
10
- export class ExplainTool extends MongoDBToolBase {
11
- public name = "explain";
12
- protected description =
13
- "Returns statistics describing the execution of the winning plan chosen by the query optimizer for the evaluated method";
14
-
15
- protected argsShape = {
16
- ...DbOperationArgs,
17
- method: z
18
- .array(
19
- z.discriminatedUnion("name", [
20
- z.object({
21
- name: z.literal("aggregate"),
22
- arguments: z.object(AggregateArgs),
23
- }),
24
- z.object({
25
- name: z.literal("find"),
26
- arguments: z.object(FindArgs),
27
- }),
28
- z.object({
29
- name: z.literal("count"),
30
- arguments: z.object(CountArgs),
31
- }),
32
- ])
33
- )
34
- .describe("The method and its arguments to run"),
35
- };
36
-
37
- public operationType: OperationType = "metadata";
38
-
39
- static readonly defaultVerbosity = ExplainVerbosity.queryPlanner;
40
-
41
- protected async execute({
42
- database,
43
- collection,
44
- method: methods,
45
- }: ToolArgs<typeof this.argsShape>): Promise<CallToolResult> {
46
- const provider = await this.ensureConnected();
47
- const method = methods[0];
48
-
49
- if (!method) {
50
- throw new Error("No method provided. Expected one of the following: `aggregate`, `find`, or `count`");
51
- }
52
-
53
- let result: Document;
54
- switch (method.name) {
55
- case "aggregate": {
56
- const { pipeline } = method.arguments;
57
- result = await provider
58
- .aggregate(
59
- database,
60
- collection,
61
- pipeline,
62
- {},
63
- {
64
- writeConcern: undefined,
65
- }
66
- )
67
- .explain(ExplainTool.defaultVerbosity);
68
- break;
69
- }
70
- case "find": {
71
- const { filter, ...rest } = method.arguments;
72
- result = await provider
73
- .find(database, collection, filter as Document, { ...rest })
74
- .explain(ExplainTool.defaultVerbosity);
75
- break;
76
- }
77
- case "count": {
78
- const { query } = method.arguments;
79
- result = await provider.runCommandWithCheck(database, {
80
- explain: {
81
- count: collection,
82
- query,
83
- },
84
- verbosity: ExplainTool.defaultVerbosity,
85
- });
86
- break;
87
- }
88
- }
89
-
90
- return {
91
- content: [
92
- {
93
- text: `Here is some information about the winning plan chosen by the query optimizer for running the given \`${method.name}\` operation in "${database}.${collection}". This information can be used to understand how the query was executed and to optimize the query performance.`,
94
- type: "text",
95
- },
96
- {
97
- text: JSON.stringify(result),
98
- type: "text",
99
- },
100
- ],
101
- };
102
- }
103
- }
@@ -1,38 +0,0 @@
1
- import { CallToolResult } from "@modelcontextprotocol/sdk/types.js";
2
- import { DbOperationArgs, MongoDBToolBase } from "../mongodbTool.js";
3
- import { ToolArgs, OperationType } from "../../tool.js";
4
-
5
- export class ListCollectionsTool extends MongoDBToolBase {
6
- public name = "list-collections";
7
- protected description = "List all collections for a given database";
8
- protected argsShape = {
9
- database: DbOperationArgs.database,
10
- };
11
-
12
- public operationType: OperationType = "metadata";
13
-
14
- protected async execute({ database }: ToolArgs<typeof this.argsShape>): Promise<CallToolResult> {
15
- const provider = await this.ensureConnected();
16
- const collections = await provider.listCollections(database);
17
-
18
- if (collections.length === 0) {
19
- return {
20
- content: [
21
- {
22
- type: "text",
23
- text: `No collections found for database "${database}". To create a collection, use the "create-collection" tool.`,
24
- },
25
- ],
26
- };
27
- }
28
-
29
- return {
30
- content: collections.map((collection) => {
31
- return {
32
- text: `Name: "${collection.name}"`,
33
- type: "text",
34
- };
35
- }),
36
- };
37
- }
38
- }
@@ -1,25 +0,0 @@
1
- import { CallToolResult } from "@modelcontextprotocol/sdk/types.js";
2
- import { MongoDBToolBase } from "../mongodbTool.js";
3
- import * as bson from "bson";
4
- import { OperationType } from "../../tool.js";
5
-
6
- export class ListDatabasesTool extends MongoDBToolBase {
7
- public name = "list-databases";
8
- protected description = "List all databases for a MongoDB connection";
9
- protected argsShape = {};
10
- public operationType: OperationType = "metadata";
11
-
12
- protected async execute(): Promise<CallToolResult> {
13
- const provider = await this.ensureConnected();
14
- const dbs = (await provider.listDatabases("")).databases as { name: string; sizeOnDisk: bson.Long }[];
15
-
16
- return {
17
- content: dbs.map((db) => {
18
- return {
19
- text: `Name: ${db.name}, Size: ${db.sizeOnDisk.toString()} bytes`,
20
- type: "text",
21
- };
22
- }),
23
- };
24
- }
25
- }
@@ -1,55 +0,0 @@
1
- import { CallToolResult } from "@modelcontextprotocol/sdk/types.js";
2
- import { MongoDBToolBase } from "../mongodbTool.js";
3
- import { ToolArgs, OperationType } from "../../tool.js";
4
- import { z } from "zod";
5
-
6
- export class LogsTool extends MongoDBToolBase {
7
- public name = "mongodb-logs";
8
- protected description = "Returns the most recent logged mongod events";
9
- protected argsShape = {
10
- type: z
11
- .enum(["global", "startupWarnings"])
12
- .optional()
13
- .default("global")
14
- .describe(
15
- "The type of logs to return. Global returns all recent log entries, while startupWarnings returns only warnings and errors from when the process started."
16
- ),
17
- limit: z
18
- .number()
19
- .int()
20
- .max(1024)
21
- .min(1)
22
- .optional()
23
- .default(50)
24
- .describe("The maximum number of log entries to return."),
25
- };
26
-
27
- public operationType: OperationType = "metadata";
28
-
29
- protected async execute({ type, limit }: ToolArgs<typeof this.argsShape>): Promise<CallToolResult> {
30
- const provider = await this.ensureConnected();
31
-
32
- const result = await provider.runCommandWithCheck("admin", {
33
- getLog: type,
34
- });
35
-
36
- const logs = (result.log as string[]).slice(0, limit);
37
-
38
- return {
39
- content: [
40
- {
41
- text: `Found: ${result.totalLinesWritten} messages`,
42
- type: "text",
43
- },
44
-
45
- ...logs.map(
46
- (log) =>
47
- ({
48
- text: log,
49
- type: "text",
50
- }) as const
51
- ),
52
- ],
53
- };
54
- }
55
- }
@@ -1,136 +0,0 @@
1
- import { z } from "zod";
2
- import { ToolArgs, ToolBase, ToolCategory, TelemetryToolMetadata } from "../tool.js";
3
- import { NodeDriverServiceProvider } from "@mongosh/service-provider-node-driver";
4
- import { CallToolResult } from "@modelcontextprotocol/sdk/types.js";
5
- import { ErrorCodes, MongoDBError } from "../../common/errors.js";
6
- import logger, { LogId } from "../../common/logger.js";
7
- import { Server } from "../../server.js";
8
-
9
- export const DbOperationArgs = {
10
- database: z.string().describe("Database name"),
11
- collection: z.string().describe("Collection name"),
12
- };
13
-
14
- export abstract class MongoDBToolBase extends ToolBase {
15
- private server?: Server;
16
- public category: ToolCategory = "mongodb";
17
-
18
- protected async ensureConnected(): Promise<NodeDriverServiceProvider> {
19
- if (!this.session.serviceProvider) {
20
- if (this.session.connectedAtlasCluster) {
21
- throw new MongoDBError(
22
- ErrorCodes.NotConnectedToMongoDB,
23
- `Attempting to connect to Atlas cluster "${this.session.connectedAtlasCluster.clusterName}", try again in a few seconds.`
24
- );
25
- }
26
-
27
- if (this.config.connectionString) {
28
- try {
29
- await this.connectToMongoDB(this.config.connectionString);
30
- } catch (error) {
31
- logger.error(
32
- LogId.mongodbConnectFailure,
33
- "mongodbTool",
34
- `Failed to connect to MongoDB instance using the connection string from the config: ${error as string}`
35
- );
36
- throw new MongoDBError(ErrorCodes.MisconfiguredConnectionString, "Not connected to MongoDB.");
37
- }
38
- }
39
- }
40
-
41
- if (!this.session.serviceProvider) {
42
- throw new MongoDBError(ErrorCodes.NotConnectedToMongoDB, "Not connected to MongoDB");
43
- }
44
-
45
- return this.session.serviceProvider;
46
- }
47
-
48
- public register(server: Server): boolean {
49
- this.server = server;
50
- return super.register(server);
51
- }
52
-
53
- protected handleError(
54
- error: unknown,
55
- args: ToolArgs<typeof this.argsShape>
56
- ): Promise<CallToolResult> | CallToolResult {
57
- if (error instanceof MongoDBError) {
58
- const connectTools = this.server?.tools
59
- .filter((t) => t.operationType === "connect")
60
- .sort((a, b) => a.category.localeCompare(b.category)); // Sort Altas tools before MongoDB tools
61
-
62
- // Find the first Atlas connect tool if available and suggest to the LLM to use it.
63
- // Note: if we ever have multiple Atlas connect tools, we may want to refine this logic to select the most appropriate one.
64
- const atlasConnectTool = connectTools?.find((t) => t.category === "atlas");
65
- const llmConnectHint = atlasConnectTool
66
- ? `Note to LLM: prefer using the "${atlasConnectTool.name}" tool to connect to an Atlas cluster over using a connection string. Make sure to ask the user to specify a cluster name they want to connect to or ask them if they want to use the "list-clusters" tool to list all their clusters. Do not invent cluster names or connection strings unless the user has explicitly specified them. If they've previously connected to MongoDB using MCP, you can ask them if they want to reconnect using the same cluster/connection.`
67
- : "Note to LLM: do not invent connection strings and explicitly ask the user to provide one. If they have previously connected to MongoDB using MCP, you can ask them if they want to reconnect using the same connection string.";
68
-
69
- const connectToolsNames = connectTools?.map((t) => `"${t.name}"`).join(", ");
70
- switch (error.code) {
71
- case ErrorCodes.NotConnectedToMongoDB:
72
- return {
73
- content: [
74
- {
75
- type: "text",
76
- text: "You need to connect to a MongoDB instance before you can access its data.",
77
- },
78
- {
79
- type: "text",
80
- text: connectToolsNames
81
- ? `Please use one of the following tools: ${connectToolsNames} to connect to a MongoDB instance or update the MCP server configuration to include a connection string. ${llmConnectHint}`
82
- : "There are no tools available to connect. Please update the configuration to include a connection string and restart the server.",
83
- },
84
- ],
85
- isError: true,
86
- };
87
- case ErrorCodes.MisconfiguredConnectionString:
88
- return {
89
- content: [
90
- {
91
- type: "text",
92
- text: "The configured connection string is not valid. Please check the connection string and confirm it points to a valid MongoDB instance.",
93
- },
94
- {
95
- type: "text",
96
- text: connectTools
97
- ? `Alternatively, you can use one of the following tools: ${connectToolsNames} to connect to a MongoDB instance. ${llmConnectHint}`
98
- : "Please update the configuration to use a valid connection string and restart the server.",
99
- },
100
- ],
101
- isError: true,
102
- };
103
- case ErrorCodes.ForbiddenCollscan:
104
- return {
105
- content: [
106
- {
107
- type: "text",
108
- text: error.message,
109
- },
110
- ],
111
- isError: true,
112
- };
113
- }
114
- }
115
-
116
- return super.handleError(error, args);
117
- }
118
-
119
- protected connectToMongoDB(connectionString: string): Promise<void> {
120
- return this.session.connectToMongoDB(connectionString, this.config.connectOptions);
121
- }
122
-
123
- protected resolveTelemetryMetadata(
124
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
125
- args: ToolArgs<typeof this.argsShape>
126
- ): TelemetryToolMetadata {
127
- const metadata: TelemetryToolMetadata = {};
128
-
129
- // Add projectId to the metadata if running a MongoDB operation to an Atlas cluster
130
- if (this.session.connectedAtlasCluster?.projectId) {
131
- metadata.projectId = this.session.connectedAtlasCluster.projectId;
132
- }
133
-
134
- return metadata;
135
- }
136
- }