mongodb-mcp-server 1.1.0 → 1.3.0-pre.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 (506) hide show
  1. package/README.md +64 -28
  2. package/dist/cjs/common/atlas/accessListUtils.js +1 -1
  3. package/dist/cjs/common/atlas/accessListUtils.js.map +1 -1
  4. package/dist/cjs/common/atlas/apiClient.d.ts +30 -26
  5. package/dist/cjs/common/atlas/apiClient.d.ts.map +1 -1
  6. package/dist/cjs/common/atlas/apiClient.js +12 -12
  7. package/dist/cjs/common/atlas/apiClient.js.map +1 -1
  8. package/dist/cjs/common/atlas/cluster.d.ts +7 -2
  9. package/dist/cjs/common/atlas/cluster.d.ts.map +1 -1
  10. package/dist/cjs/common/atlas/cluster.js +18 -4
  11. package/dist/cjs/common/atlas/cluster.js.map +1 -1
  12. package/dist/cjs/common/atlas/performanceAdvisorUtils.js +2 -2
  13. package/dist/cjs/common/atlas/performanceAdvisorUtils.js.map +1 -1
  14. package/dist/cjs/common/atlas/roles.d.ts +1 -1
  15. package/dist/cjs/common/atlas/roles.d.ts.map +1 -1
  16. package/dist/cjs/common/atlasLocal.d.ts +4 -0
  17. package/dist/cjs/common/atlasLocal.d.ts.map +1 -0
  18. package/dist/cjs/common/atlasLocal.js +57 -0
  19. package/dist/cjs/common/atlasLocal.js.map +1 -0
  20. package/dist/cjs/common/config/argsParserOptions.d.ts +12 -0
  21. package/dist/cjs/common/config/argsParserOptions.d.ts.map +1 -0
  22. package/dist/cjs/common/config/argsParserOptions.js +103 -0
  23. package/dist/cjs/common/config/argsParserOptions.js.map +1 -0
  24. package/dist/cjs/common/config/configOverrides.d.ts +30 -0
  25. package/dist/cjs/common/config/configOverrides.d.ts.map +1 -0
  26. package/dist/cjs/common/config/configOverrides.js +145 -0
  27. package/dist/cjs/common/config/configOverrides.js.map +1 -0
  28. package/dist/cjs/common/config/configUtils.d.ts +43 -0
  29. package/dist/cjs/common/config/configUtils.d.ts.map +1 -0
  30. package/dist/cjs/common/config/configUtils.js +178 -0
  31. package/dist/cjs/common/config/configUtils.js.map +1 -0
  32. package/dist/cjs/common/config/createUserConfig.d.ts +10 -0
  33. package/dist/cjs/common/config/createUserConfig.d.ts.map +1 -0
  34. package/dist/cjs/common/config/createUserConfig.js +156 -0
  35. package/dist/cjs/common/config/createUserConfig.js.map +1 -0
  36. package/dist/cjs/common/config/userConfig.d.ts +54 -0
  37. package/dist/cjs/common/config/userConfig.d.ts.map +1 -0
  38. package/dist/cjs/common/config/userConfig.js +180 -0
  39. package/dist/cjs/common/config/userConfig.js.map +1 -0
  40. package/dist/cjs/common/connectionErrorHandler.d.ts.map +1 -1
  41. package/dist/cjs/common/connectionErrorHandler.js +15 -6
  42. package/dist/cjs/common/connectionErrorHandler.js.map +1 -1
  43. package/dist/cjs/common/connectionManager.d.ts +6 -5
  44. package/dist/cjs/common/connectionManager.d.ts.map +1 -1
  45. package/dist/cjs/common/connectionManager.js +29 -19
  46. package/dist/cjs/common/connectionManager.js.map +1 -1
  47. package/dist/cjs/common/errors.d.ts +6 -1
  48. package/dist/cjs/common/errors.d.ts.map +1 -1
  49. package/dist/cjs/common/errors.js +5 -0
  50. package/dist/cjs/common/errors.js.map +1 -1
  51. package/dist/cjs/common/exportsManager.d.ts +1 -1
  52. package/dist/cjs/common/exportsManager.d.ts.map +1 -1
  53. package/dist/cjs/common/logger.d.ts +2 -0
  54. package/dist/cjs/common/logger.d.ts.map +1 -1
  55. package/dist/cjs/common/logger.js +2 -0
  56. package/dist/cjs/common/logger.js.map +1 -1
  57. package/dist/cjs/common/packageInfo.js +1 -1
  58. package/dist/cjs/common/packageInfo.js.map +1 -1
  59. package/dist/cjs/common/schemas.d.ts +5 -0
  60. package/dist/cjs/common/schemas.d.ts.map +1 -0
  61. package/dist/cjs/common/schemas.js +6 -0
  62. package/dist/cjs/common/schemas.js.map +1 -0
  63. package/dist/cjs/common/search/embeddingsProvider.d.ts +10 -0
  64. package/dist/cjs/common/search/embeddingsProvider.d.ts.map +1 -0
  65. package/dist/cjs/common/search/embeddingsProvider.js +45 -0
  66. package/dist/cjs/common/search/embeddingsProvider.js.map +1 -0
  67. package/dist/cjs/common/search/vectorSearchEmbeddingsManager.d.ts +67 -0
  68. package/dist/cjs/common/search/vectorSearchEmbeddingsManager.d.ts.map +1 -0
  69. package/dist/cjs/common/search/vectorSearchEmbeddingsManager.js +188 -0
  70. package/dist/cjs/common/search/vectorSearchEmbeddingsManager.js.map +1 -0
  71. package/dist/cjs/common/session.d.ts +14 -5
  72. package/dist/cjs/common/session.d.ts.map +1 -1
  73. package/dist/cjs/common/session.js +28 -8
  74. package/dist/cjs/common/session.js.map +1 -1
  75. package/dist/cjs/helpers/assertVectorSearchFilterFieldsAreIndexed.d.ts +27 -0
  76. package/dist/cjs/helpers/assertVectorSearchFilterFieldsAreIndexed.d.ts.map +1 -0
  77. package/dist/cjs/helpers/assertVectorSearchFilterFieldsAreIndexed.js +58 -0
  78. package/dist/cjs/helpers/assertVectorSearchFilterFieldsAreIndexed.js.map +1 -0
  79. package/dist/cjs/index.d.ts +2 -1
  80. package/dist/cjs/index.d.ts.map +1 -1
  81. package/dist/cjs/index.js +44 -16
  82. package/dist/cjs/index.js.map +1 -1
  83. package/dist/cjs/lib.d.ts +6 -2
  84. package/dist/cjs/lib.d.ts.map +1 -1
  85. package/dist/cjs/lib.js +10 -4
  86. package/dist/cjs/lib.js.map +1 -1
  87. package/dist/cjs/resources/common/config.d.ts +1 -1
  88. package/dist/cjs/resources/common/config.d.ts.map +1 -1
  89. package/dist/cjs/resources/common/config.js +4 -3
  90. package/dist/cjs/resources/common/config.js.map +1 -1
  91. package/dist/cjs/resources/resource.d.ts +1 -1
  92. package/dist/cjs/resources/resource.d.ts.map +1 -1
  93. package/dist/cjs/server.d.ts +26 -5
  94. package/dist/cjs/server.d.ts.map +1 -1
  95. package/dist/cjs/server.js +7 -23
  96. package/dist/cjs/server.js.map +1 -1
  97. package/dist/cjs/telemetry/telemetry.d.ts +1 -1
  98. package/dist/cjs/telemetry/telemetry.d.ts.map +1 -1
  99. package/dist/cjs/telemetry/types.d.ts +22 -4
  100. package/dist/cjs/telemetry/types.d.ts.map +1 -1
  101. package/dist/cjs/tools/args.d.ts +1 -0
  102. package/dist/cjs/tools/args.d.ts.map +1 -1
  103. package/dist/cjs/tools/args.js +1 -0
  104. package/dist/cjs/tools/args.js.map +1 -1
  105. package/dist/cjs/tools/atlas/atlasTool.d.ts +3 -2
  106. package/dist/cjs/tools/atlas/atlasTool.d.ts.map +1 -1
  107. package/dist/cjs/tools/atlas/atlasTool.js +3 -3
  108. package/dist/cjs/tools/atlas/atlasTool.js.map +1 -1
  109. package/dist/cjs/tools/atlas/connect/connectCluster.d.ts +6 -1
  110. package/dist/cjs/tools/atlas/connect/connectCluster.d.ts.map +1 -1
  111. package/dist/cjs/tools/atlas/connect/connectCluster.js +46 -21
  112. package/dist/cjs/tools/atlas/connect/connectCluster.js.map +1 -1
  113. package/dist/cjs/tools/atlas/create/createAccessList.js +1 -1
  114. package/dist/cjs/tools/atlas/create/createAccessList.js.map +1 -1
  115. package/dist/cjs/tools/atlas/create/createProject.d.ts +0 -4
  116. package/dist/cjs/tools/atlas/create/createProject.d.ts.map +1 -1
  117. package/dist/cjs/tools/atlas/create/createProject.js +5 -8
  118. package/dist/cjs/tools/atlas/create/createProject.js.map +1 -1
  119. package/dist/cjs/tools/atlas/read/getPerformanceAdvisor.d.ts +4 -1
  120. package/dist/cjs/tools/atlas/read/getPerformanceAdvisor.d.ts.map +1 -1
  121. package/dist/cjs/tools/atlas/read/getPerformanceAdvisor.js +7 -1
  122. package/dist/cjs/tools/atlas/read/getPerformanceAdvisor.js.map +1 -1
  123. package/dist/cjs/tools/atlas/read/inspectAccessList.d.ts.map +1 -1
  124. package/dist/cjs/tools/atlas/read/inspectAccessList.js +7 -8
  125. package/dist/cjs/tools/atlas/read/inspectAccessList.js.map +1 -1
  126. package/dist/cjs/tools/atlas/read/inspectCluster.d.ts.map +1 -1
  127. package/dist/cjs/tools/atlas/read/inspectCluster.js +9 -3
  128. package/dist/cjs/tools/atlas/read/inspectCluster.js.map +1 -1
  129. package/dist/cjs/tools/atlas/read/listAlerts.d.ts.map +1 -1
  130. package/dist/cjs/tools/atlas/read/listAlerts.js +9 -13
  131. package/dist/cjs/tools/atlas/read/listAlerts.js.map +1 -1
  132. package/dist/cjs/tools/atlas/read/listClusters.d.ts.map +1 -1
  133. package/dist/cjs/tools/atlas/read/listClusters.js +9 -25
  134. package/dist/cjs/tools/atlas/read/listClusters.js.map +1 -1
  135. package/dist/cjs/tools/atlas/read/listDBUsers.d.ts.map +1 -1
  136. package/dist/cjs/tools/atlas/read/listDBUsers.js +13 -23
  137. package/dist/cjs/tools/atlas/read/listDBUsers.js.map +1 -1
  138. package/dist/cjs/tools/atlas/read/listOrgs.d.ts.map +1 -1
  139. package/dist/cjs/tools/atlas/read/listOrgs.js +6 -11
  140. package/dist/cjs/tools/atlas/read/listOrgs.js.map +1 -1
  141. package/dist/cjs/tools/atlas/read/listProjects.d.ts +0 -3
  142. package/dist/cjs/tools/atlas/read/listProjects.d.ts.map +1 -1
  143. package/dist/cjs/tools/atlas/read/listProjects.js +18 -23
  144. package/dist/cjs/tools/atlas/read/listProjects.js.map +1 -1
  145. package/dist/cjs/tools/atlasLocal/atlasLocalTool.d.ts +20 -0
  146. package/dist/cjs/tools/atlasLocal/atlasLocalTool.d.ts.map +1 -0
  147. package/dist/cjs/tools/atlasLocal/atlasLocalTool.js +109 -0
  148. package/dist/cjs/tools/atlasLocal/atlasLocalTool.js.map +1 -0
  149. package/dist/cjs/tools/atlasLocal/connect/connectDeployment.d.ts +16 -0
  150. package/dist/cjs/tools/atlasLocal/connect/connectDeployment.d.ts.map +1 -0
  151. package/dist/cjs/tools/atlasLocal/connect/connectDeployment.js +38 -0
  152. package/dist/cjs/tools/atlasLocal/connect/connectDeployment.js.map +1 -0
  153. package/dist/cjs/tools/atlasLocal/create/createDeployment.d.ts +14 -0
  154. package/dist/cjs/tools/atlasLocal/create/createDeployment.d.ts.map +1 -0
  155. package/dist/cjs/tools/atlasLocal/create/createDeployment.js +41 -0
  156. package/dist/cjs/tools/atlasLocal/create/createDeployment.js.map +1 -0
  157. package/dist/cjs/tools/atlasLocal/delete/deleteDeployment.d.ts +14 -0
  158. package/dist/cjs/tools/atlasLocal/delete/deleteDeployment.d.ts.map +1 -0
  159. package/dist/cjs/tools/atlasLocal/delete/deleteDeployment.js +32 -0
  160. package/dist/cjs/tools/atlasLocal/delete/deleteDeployment.js.map +1 -0
  161. package/dist/cjs/tools/atlasLocal/read/listDeployments.d.ts +13 -0
  162. package/dist/cjs/tools/atlasLocal/read/listDeployments.d.ts.map +1 -0
  163. package/dist/cjs/tools/atlasLocal/read/listDeployments.js +42 -0
  164. package/dist/cjs/tools/atlasLocal/read/listDeployments.js.map +1 -0
  165. package/dist/cjs/tools/atlasLocal/tools.d.ts +6 -0
  166. package/dist/cjs/tools/atlasLocal/tools.d.ts.map +1 -0
  167. package/dist/cjs/tools/atlasLocal/tools.js +9 -0
  168. package/dist/cjs/tools/atlasLocal/tools.js.map +1 -0
  169. package/dist/cjs/tools/index.d.ts +7 -0
  170. package/dist/cjs/tools/index.d.ts.map +1 -0
  171. package/dist/cjs/tools/index.js +14 -0
  172. package/dist/cjs/tools/index.js.map +1 -0
  173. package/dist/cjs/tools/mongodb/connect/connect.d.ts +4 -10
  174. package/dist/cjs/tools/mongodb/connect/connect.d.ts.map +1 -1
  175. package/dist/cjs/tools/mongodb/connect/connect.js +17 -70
  176. package/dist/cjs/tools/mongodb/connect/connect.js.map +1 -1
  177. package/dist/cjs/tools/mongodb/connect/switchConnection.d.ts +17 -0
  178. package/dist/cjs/tools/mongodb/connect/switchConnection.d.ts.map +1 -0
  179. package/dist/cjs/tools/mongodb/connect/switchConnection.js +52 -0
  180. package/dist/cjs/tools/mongodb/connect/switchConnection.js.map +1 -0
  181. package/dist/cjs/tools/mongodb/create/createIndex.d.ts +1 -1
  182. package/dist/cjs/tools/mongodb/create/createIndex.d.ts.map +1 -1
  183. package/dist/cjs/tools/mongodb/create/createIndex.js +9 -22
  184. package/dist/cjs/tools/mongodb/create/createIndex.js.map +1 -1
  185. package/dist/cjs/tools/mongodb/create/insertMany.d.ts +22 -2
  186. package/dist/cjs/tools/mongodb/create/insertMany.d.ts.map +1 -1
  187. package/dist/cjs/tools/mongodb/create/insertMany.js +88 -12
  188. package/dist/cjs/tools/mongodb/create/insertMany.js.map +1 -1
  189. package/dist/cjs/tools/mongodb/delete/dropIndex.d.ts +5 -2
  190. package/dist/cjs/tools/mongodb/delete/dropIndex.d.ts.map +1 -1
  191. package/dist/cjs/tools/mongodb/delete/dropIndex.js +36 -3
  192. package/dist/cjs/tools/mongodb/delete/dropIndex.js.map +1 -1
  193. package/dist/cjs/tools/mongodb/metadata/collectionIndexes.d.ts +15 -0
  194. package/dist/cjs/tools/mongodb/metadata/collectionIndexes.d.ts.map +1 -1
  195. package/dist/cjs/tools/mongodb/metadata/collectionIndexes.js +30 -5
  196. package/dist/cjs/tools/mongodb/metadata/collectionIndexes.js.map +1 -1
  197. package/dist/cjs/tools/mongodb/metadata/collectionSchema.js +1 -1
  198. package/dist/cjs/tools/mongodb/metadata/explain.d.ts +192 -10
  199. package/dist/cjs/tools/mongodb/metadata/explain.d.ts.map +1 -1
  200. package/dist/cjs/tools/mongodb/metadata/explain.js +1 -1
  201. package/dist/cjs/tools/mongodb/metadata/explain.js.map +1 -1
  202. package/dist/cjs/tools/mongodb/metadata/listDatabases.d.ts.map +1 -1
  203. package/dist/cjs/tools/mongodb/metadata/listDatabases.js +1 -3
  204. package/dist/cjs/tools/mongodb/metadata/listDatabases.js.map +1 -1
  205. package/dist/cjs/tools/mongodb/mongodbSchemas.d.ts +155 -0
  206. package/dist/cjs/tools/mongodb/mongodbSchemas.d.ts.map +1 -0
  207. package/dist/cjs/tools/mongodb/mongodbSchemas.js +69 -0
  208. package/dist/cjs/tools/mongodb/mongodbSchemas.js.map +1 -0
  209. package/dist/cjs/tools/mongodb/mongodbTool.d.ts +14 -3
  210. package/dist/cjs/tools/mongodb/mongodbTool.d.ts.map +1 -1
  211. package/dist/cjs/tools/mongodb/mongodbTool.js +31 -11
  212. package/dist/cjs/tools/mongodb/mongodbTool.js.map +1 -1
  213. package/dist/cjs/tools/mongodb/read/aggregate.d.ts +218 -4
  214. package/dist/cjs/tools/mongodb/read/aggregate.d.ts.map +1 -1
  215. package/dist/cjs/tools/mongodb/read/aggregate.js +125 -18
  216. package/dist/cjs/tools/mongodb/read/aggregate.js.map +1 -1
  217. package/dist/cjs/tools/mongodb/read/export.d.ts +192 -10
  218. package/dist/cjs/tools/mongodb/read/export.d.ts.map +1 -1
  219. package/dist/cjs/tools/mongodb/read/export.js +3 -1
  220. package/dist/cjs/tools/mongodb/read/export.js.map +1 -1
  221. package/dist/cjs/tools/mongodb/read/find.js +2 -2
  222. package/dist/cjs/tools/mongodb/read/find.js.map +1 -1
  223. package/dist/cjs/tools/mongodb/tools.d.ts +2 -2
  224. package/dist/cjs/tools/mongodb/tools.d.ts.map +1 -1
  225. package/dist/cjs/tools/mongodb/tools.js +2 -2
  226. package/dist/cjs/tools/mongodb/tools.js.map +1 -1
  227. package/dist/cjs/tools/tool.d.ts +14 -24
  228. package/dist/cjs/tools/tool.d.ts.map +1 -1
  229. package/dist/cjs/tools/tool.js +44 -54
  230. package/dist/cjs/tools/tool.js.map +1 -1
  231. package/dist/cjs/transports/base.d.ts +25 -3
  232. package/dist/cjs/transports/base.d.ts.map +1 -1
  233. package/dist/cjs/transports/base.js +41 -10
  234. package/dist/cjs/transports/base.js.map +1 -1
  235. package/dist/cjs/transports/dryModeRunner.d.ts +19 -0
  236. package/dist/cjs/transports/dryModeRunner.d.ts.map +1 -0
  237. package/dist/cjs/transports/dryModeRunner.js +37 -0
  238. package/dist/cjs/transports/dryModeRunner.js.map +1 -0
  239. package/dist/cjs/transports/inMemoryTransport.d.ts +18 -0
  240. package/dist/cjs/transports/inMemoryTransport.d.ts.map +1 -0
  241. package/dist/cjs/transports/inMemoryTransport.js +43 -0
  242. package/dist/cjs/transports/inMemoryTransport.js.map +1 -0
  243. package/dist/cjs/transports/streamableHttp.d.ts.map +1 -1
  244. package/dist/cjs/transports/streamableHttp.js +5 -1
  245. package/dist/cjs/transports/streamableHttp.js.map +1 -1
  246. package/dist/esm/common/atlas/accessListUtils.js +1 -1
  247. package/dist/esm/common/atlas/accessListUtils.js.map +1 -1
  248. package/dist/esm/common/atlas/apiClient.d.ts +30 -26
  249. package/dist/esm/common/atlas/apiClient.d.ts.map +1 -1
  250. package/dist/esm/common/atlas/apiClient.js +12 -12
  251. package/dist/esm/common/atlas/apiClient.js.map +1 -1
  252. package/dist/esm/common/atlas/cluster.d.ts +7 -2
  253. package/dist/esm/common/atlas/cluster.d.ts.map +1 -1
  254. package/dist/esm/common/atlas/cluster.js +17 -4
  255. package/dist/esm/common/atlas/cluster.js.map +1 -1
  256. package/dist/esm/common/atlas/performanceAdvisorUtils.js +2 -2
  257. package/dist/esm/common/atlas/performanceAdvisorUtils.js.map +1 -1
  258. package/dist/esm/common/atlas/roles.d.ts +1 -1
  259. package/dist/esm/common/atlas/roles.d.ts.map +1 -1
  260. package/dist/esm/common/atlasLocal.d.ts +4 -0
  261. package/dist/esm/common/atlasLocal.d.ts.map +1 -0
  262. package/dist/esm/common/atlasLocal.js +20 -0
  263. package/dist/esm/common/atlasLocal.js.map +1 -0
  264. package/dist/esm/common/config/argsParserOptions.d.ts +12 -0
  265. package/dist/esm/common/config/argsParserOptions.d.ts.map +1 -0
  266. package/dist/esm/common/config/argsParserOptions.js +100 -0
  267. package/dist/esm/common/config/argsParserOptions.js.map +1 -0
  268. package/dist/esm/common/config/configOverrides.d.ts +30 -0
  269. package/dist/esm/common/config/configOverrides.d.ts.map +1 -0
  270. package/dist/esm/common/config/configOverrides.js +139 -0
  271. package/dist/esm/common/config/configOverrides.js.map +1 -0
  272. package/dist/esm/common/config/configUtils.d.ts +43 -0
  273. package/dist/esm/common/config/configUtils.d.ts.map +1 -0
  274. package/dist/esm/common/config/configUtils.js +130 -0
  275. package/dist/esm/common/config/configUtils.js.map +1 -0
  276. package/dist/esm/common/config/createUserConfig.d.ts +10 -0
  277. package/dist/esm/common/config/createUserConfig.d.ts.map +1 -0
  278. package/dist/esm/common/config/createUserConfig.js +149 -0
  279. package/dist/esm/common/config/createUserConfig.js.map +1 -0
  280. package/dist/esm/common/config/userConfig.d.ts +54 -0
  281. package/dist/esm/common/config/userConfig.d.ts.map +1 -0
  282. package/dist/esm/common/config/userConfig.js +177 -0
  283. package/dist/esm/common/config/userConfig.js.map +1 -0
  284. package/dist/esm/common/connectionErrorHandler.d.ts.map +1 -1
  285. package/dist/esm/common/connectionErrorHandler.js +15 -6
  286. package/dist/esm/common/connectionErrorHandler.js.map +1 -1
  287. package/dist/esm/common/connectionManager.d.ts +6 -5
  288. package/dist/esm/common/connectionManager.d.ts.map +1 -1
  289. package/dist/esm/common/connectionManager.js +28 -18
  290. package/dist/esm/common/connectionManager.js.map +1 -1
  291. package/dist/esm/common/errors.d.ts +6 -1
  292. package/dist/esm/common/errors.d.ts.map +1 -1
  293. package/dist/esm/common/errors.js +5 -0
  294. package/dist/esm/common/errors.js.map +1 -1
  295. package/dist/esm/common/exportsManager.d.ts +1 -1
  296. package/dist/esm/common/exportsManager.d.ts.map +1 -1
  297. package/dist/esm/common/logger.d.ts +2 -0
  298. package/dist/esm/common/logger.d.ts.map +1 -1
  299. package/dist/esm/common/logger.js +2 -0
  300. package/dist/esm/common/logger.js.map +1 -1
  301. package/dist/esm/common/packageInfo.js +1 -1
  302. package/dist/esm/common/packageInfo.js.map +1 -1
  303. package/dist/esm/common/schemas.d.ts +5 -0
  304. package/dist/esm/common/schemas.d.ts.map +1 -0
  305. package/dist/esm/common/schemas.js +3 -0
  306. package/dist/esm/common/schemas.js.map +1 -0
  307. package/dist/esm/common/search/embeddingsProvider.d.ts +10 -0
  308. package/dist/esm/common/search/embeddingsProvider.d.ts.map +1 -0
  309. package/dist/esm/common/search/embeddingsProvider.js +39 -0
  310. package/dist/esm/common/search/embeddingsProvider.js.map +1 -0
  311. package/dist/esm/common/search/vectorSearchEmbeddingsManager.d.ts +67 -0
  312. package/dist/esm/common/search/vectorSearchEmbeddingsManager.d.ts.map +1 -0
  313. package/dist/esm/common/search/vectorSearchEmbeddingsManager.js +181 -0
  314. package/dist/esm/common/search/vectorSearchEmbeddingsManager.js.map +1 -0
  315. package/dist/esm/common/session.d.ts +14 -5
  316. package/dist/esm/common/session.d.ts.map +1 -1
  317. package/dist/esm/common/session.js +28 -8
  318. package/dist/esm/common/session.js.map +1 -1
  319. package/dist/esm/helpers/assertVectorSearchFilterFieldsAreIndexed.d.ts +27 -0
  320. package/dist/esm/helpers/assertVectorSearchFilterFieldsAreIndexed.d.ts.map +1 -0
  321. package/dist/esm/helpers/assertVectorSearchFilterFieldsAreIndexed.js +54 -0
  322. package/dist/esm/helpers/assertVectorSearchFilterFieldsAreIndexed.js.map +1 -0
  323. package/dist/esm/index.d.ts +2 -1
  324. package/dist/esm/index.d.ts.map +1 -1
  325. package/dist/esm/index.js +40 -13
  326. package/dist/esm/index.js.map +1 -1
  327. package/dist/esm/lib.d.ts +6 -2
  328. package/dist/esm/lib.d.ts.map +1 -1
  329. package/dist/esm/lib.js +5 -2
  330. package/dist/esm/lib.js.map +1 -1
  331. package/dist/esm/resources/common/config.d.ts +1 -1
  332. package/dist/esm/resources/common/config.d.ts.map +1 -1
  333. package/dist/esm/resources/common/config.js +4 -3
  334. package/dist/esm/resources/common/config.js.map +1 -1
  335. package/dist/esm/resources/resource.d.ts +1 -1
  336. package/dist/esm/resources/resource.d.ts.map +1 -1
  337. package/dist/esm/server.d.ts +26 -5
  338. package/dist/esm/server.d.ts.map +1 -1
  339. package/dist/esm/server.js +7 -23
  340. package/dist/esm/server.js.map +1 -1
  341. package/dist/esm/telemetry/telemetry.d.ts +1 -1
  342. package/dist/esm/telemetry/telemetry.d.ts.map +1 -1
  343. package/dist/esm/telemetry/types.d.ts +22 -4
  344. package/dist/esm/telemetry/types.d.ts.map +1 -1
  345. package/dist/esm/tools/args.d.ts +1 -0
  346. package/dist/esm/tools/args.d.ts.map +1 -1
  347. package/dist/esm/tools/args.js +1 -0
  348. package/dist/esm/tools/args.js.map +1 -1
  349. package/dist/esm/tools/atlas/atlasTool.d.ts +3 -2
  350. package/dist/esm/tools/atlas/atlasTool.d.ts.map +1 -1
  351. package/dist/esm/tools/atlas/atlasTool.js +3 -3
  352. package/dist/esm/tools/atlas/atlasTool.js.map +1 -1
  353. package/dist/esm/tools/atlas/connect/connectCluster.d.ts +6 -1
  354. package/dist/esm/tools/atlas/connect/connectCluster.d.ts.map +1 -1
  355. package/dist/esm/tools/atlas/connect/connectCluster.js +47 -22
  356. package/dist/esm/tools/atlas/connect/connectCluster.js.map +1 -1
  357. package/dist/esm/tools/atlas/create/createAccessList.js +1 -1
  358. package/dist/esm/tools/atlas/create/createAccessList.js.map +1 -1
  359. package/dist/esm/tools/atlas/create/createProject.d.ts +0 -4
  360. package/dist/esm/tools/atlas/create/createProject.d.ts.map +1 -1
  361. package/dist/esm/tools/atlas/create/createProject.js +4 -7
  362. package/dist/esm/tools/atlas/create/createProject.js.map +1 -1
  363. package/dist/esm/tools/atlas/read/getPerformanceAdvisor.d.ts +4 -1
  364. package/dist/esm/tools/atlas/read/getPerformanceAdvisor.d.ts.map +1 -1
  365. package/dist/esm/tools/atlas/read/getPerformanceAdvisor.js +7 -1
  366. package/dist/esm/tools/atlas/read/getPerformanceAdvisor.js.map +1 -1
  367. package/dist/esm/tools/atlas/read/inspectAccessList.d.ts.map +1 -1
  368. package/dist/esm/tools/atlas/read/inspectAccessList.js +7 -8
  369. package/dist/esm/tools/atlas/read/inspectAccessList.js.map +1 -1
  370. package/dist/esm/tools/atlas/read/inspectCluster.d.ts.map +1 -1
  371. package/dist/esm/tools/atlas/read/inspectCluster.js +9 -3
  372. package/dist/esm/tools/atlas/read/inspectCluster.js.map +1 -1
  373. package/dist/esm/tools/atlas/read/listAlerts.d.ts.map +1 -1
  374. package/dist/esm/tools/atlas/read/listAlerts.js +9 -13
  375. package/dist/esm/tools/atlas/read/listAlerts.js.map +1 -1
  376. package/dist/esm/tools/atlas/read/listClusters.d.ts.map +1 -1
  377. package/dist/esm/tools/atlas/read/listClusters.js +9 -25
  378. package/dist/esm/tools/atlas/read/listClusters.js.map +1 -1
  379. package/dist/esm/tools/atlas/read/listDBUsers.d.ts.map +1 -1
  380. package/dist/esm/tools/atlas/read/listDBUsers.js +13 -23
  381. package/dist/esm/tools/atlas/read/listDBUsers.js.map +1 -1
  382. package/dist/esm/tools/atlas/read/listOrgs.d.ts.map +1 -1
  383. package/dist/esm/tools/atlas/read/listOrgs.js +6 -11
  384. package/dist/esm/tools/atlas/read/listOrgs.js.map +1 -1
  385. package/dist/esm/tools/atlas/read/listProjects.d.ts +0 -3
  386. package/dist/esm/tools/atlas/read/listProjects.d.ts.map +1 -1
  387. package/dist/esm/tools/atlas/read/listProjects.js +17 -22
  388. package/dist/esm/tools/atlas/read/listProjects.js.map +1 -1
  389. package/dist/esm/tools/atlasLocal/atlasLocalTool.d.ts +20 -0
  390. package/dist/esm/tools/atlasLocal/atlasLocalTool.d.ts.map +1 -0
  391. package/dist/esm/tools/atlasLocal/atlasLocalTool.js +105 -0
  392. package/dist/esm/tools/atlasLocal/atlasLocalTool.js.map +1 -0
  393. package/dist/esm/tools/atlasLocal/connect/connectDeployment.d.ts +16 -0
  394. package/dist/esm/tools/atlasLocal/connect/connectDeployment.d.ts.map +1 -0
  395. package/dist/esm/tools/atlasLocal/connect/connectDeployment.js +34 -0
  396. package/dist/esm/tools/atlasLocal/connect/connectDeployment.js.map +1 -0
  397. package/dist/esm/tools/atlasLocal/create/createDeployment.d.ts +14 -0
  398. package/dist/esm/tools/atlasLocal/create/createDeployment.d.ts.map +1 -0
  399. package/dist/esm/tools/atlasLocal/create/createDeployment.js +37 -0
  400. package/dist/esm/tools/atlasLocal/create/createDeployment.js.map +1 -0
  401. package/dist/esm/tools/atlasLocal/delete/deleteDeployment.d.ts +14 -0
  402. package/dist/esm/tools/atlasLocal/delete/deleteDeployment.d.ts.map +1 -0
  403. package/dist/esm/tools/atlasLocal/delete/deleteDeployment.js +28 -0
  404. package/dist/esm/tools/atlasLocal/delete/deleteDeployment.js.map +1 -0
  405. package/dist/esm/tools/atlasLocal/read/listDeployments.d.ts +13 -0
  406. package/dist/esm/tools/atlasLocal/read/listDeployments.d.ts.map +1 -0
  407. package/dist/esm/tools/atlasLocal/read/listDeployments.js +38 -0
  408. package/dist/esm/tools/atlasLocal/read/listDeployments.js.map +1 -0
  409. package/dist/esm/tools/atlasLocal/tools.d.ts +6 -0
  410. package/dist/esm/tools/atlasLocal/tools.d.ts.map +1 -0
  411. package/dist/esm/tools/atlasLocal/tools.js +6 -0
  412. package/dist/esm/tools/atlasLocal/tools.js.map +1 -0
  413. package/dist/esm/tools/index.d.ts +7 -0
  414. package/dist/esm/tools/index.d.ts.map +1 -0
  415. package/dist/esm/tools/index.js +7 -0
  416. package/dist/esm/tools/index.js.map +1 -0
  417. package/dist/esm/tools/mongodb/connect/connect.d.ts +4 -10
  418. package/dist/esm/tools/mongodb/connect/connect.d.ts.map +1 -1
  419. package/dist/esm/tools/mongodb/connect/connect.js +17 -67
  420. package/dist/esm/tools/mongodb/connect/connect.js.map +1 -1
  421. package/dist/esm/tools/mongodb/connect/switchConnection.d.ts +17 -0
  422. package/dist/esm/tools/mongodb/connect/switchConnection.d.ts.map +1 -0
  423. package/dist/esm/tools/mongodb/connect/switchConnection.js +45 -0
  424. package/dist/esm/tools/mongodb/connect/switchConnection.js.map +1 -0
  425. package/dist/esm/tools/mongodb/create/createIndex.d.ts +1 -1
  426. package/dist/esm/tools/mongodb/create/createIndex.d.ts.map +1 -1
  427. package/dist/esm/tools/mongodb/create/createIndex.js +9 -22
  428. package/dist/esm/tools/mongodb/create/createIndex.js.map +1 -1
  429. package/dist/esm/tools/mongodb/create/insertMany.d.ts +22 -2
  430. package/dist/esm/tools/mongodb/create/insertMany.d.ts.map +1 -1
  431. package/dist/esm/tools/mongodb/create/insertMany.js +88 -12
  432. package/dist/esm/tools/mongodb/create/insertMany.js.map +1 -1
  433. package/dist/esm/tools/mongodb/delete/dropIndex.d.ts +5 -2
  434. package/dist/esm/tools/mongodb/delete/dropIndex.d.ts.map +1 -1
  435. package/dist/esm/tools/mongodb/delete/dropIndex.js +36 -3
  436. package/dist/esm/tools/mongodb/delete/dropIndex.js.map +1 -1
  437. package/dist/esm/tools/mongodb/metadata/collectionIndexes.d.ts +15 -0
  438. package/dist/esm/tools/mongodb/metadata/collectionIndexes.d.ts.map +1 -1
  439. package/dist/esm/tools/mongodb/metadata/collectionIndexes.js +30 -5
  440. package/dist/esm/tools/mongodb/metadata/collectionIndexes.js.map +1 -1
  441. package/dist/esm/tools/mongodb/metadata/collectionSchema.js +1 -1
  442. package/dist/esm/tools/mongodb/metadata/explain.d.ts +192 -10
  443. package/dist/esm/tools/mongodb/metadata/explain.d.ts.map +1 -1
  444. package/dist/esm/tools/mongodb/metadata/explain.js +2 -2
  445. package/dist/esm/tools/mongodb/metadata/explain.js.map +1 -1
  446. package/dist/esm/tools/mongodb/metadata/listDatabases.d.ts.map +1 -1
  447. package/dist/esm/tools/mongodb/metadata/listDatabases.js +1 -3
  448. package/dist/esm/tools/mongodb/metadata/listDatabases.js.map +1 -1
  449. package/dist/esm/tools/mongodb/mongodbSchemas.d.ts +155 -0
  450. package/dist/esm/tools/mongodb/mongodbSchemas.d.ts.map +1 -0
  451. package/dist/esm/tools/mongodb/mongodbSchemas.js +63 -0
  452. package/dist/esm/tools/mongodb/mongodbSchemas.js.map +1 -0
  453. package/dist/esm/tools/mongodb/mongodbTool.d.ts +14 -3
  454. package/dist/esm/tools/mongodb/mongodbTool.d.ts.map +1 -1
  455. package/dist/esm/tools/mongodb/mongodbTool.js +31 -11
  456. package/dist/esm/tools/mongodb/mongodbTool.js.map +1 -1
  457. package/dist/esm/tools/mongodb/read/aggregate.d.ts +218 -4
  458. package/dist/esm/tools/mongodb/read/aggregate.d.ts.map +1 -1
  459. package/dist/esm/tools/mongodb/read/aggregate.js +123 -17
  460. package/dist/esm/tools/mongodb/read/aggregate.js.map +1 -1
  461. package/dist/esm/tools/mongodb/read/export.d.ts +192 -10
  462. package/dist/esm/tools/mongodb/read/export.d.ts.map +1 -1
  463. package/dist/esm/tools/mongodb/read/export.js +4 -2
  464. package/dist/esm/tools/mongodb/read/export.js.map +1 -1
  465. package/dist/esm/tools/mongodb/read/find.js +2 -2
  466. package/dist/esm/tools/mongodb/read/find.js.map +1 -1
  467. package/dist/esm/tools/mongodb/tools.d.ts +2 -2
  468. package/dist/esm/tools/mongodb/tools.d.ts.map +1 -1
  469. package/dist/esm/tools/mongodb/tools.js +2 -2
  470. package/dist/esm/tools/mongodb/tools.js.map +1 -1
  471. package/dist/esm/tools/tool.d.ts +14 -24
  472. package/dist/esm/tools/tool.d.ts.map +1 -1
  473. package/dist/esm/tools/tool.js +44 -54
  474. package/dist/esm/tools/tool.js.map +1 -1
  475. package/dist/esm/transports/base.d.ts +25 -3
  476. package/dist/esm/transports/base.d.ts.map +1 -1
  477. package/dist/esm/transports/base.js +41 -10
  478. package/dist/esm/transports/base.js.map +1 -1
  479. package/dist/esm/transports/dryModeRunner.d.ts +19 -0
  480. package/dist/esm/transports/dryModeRunner.d.ts.map +1 -0
  481. package/dist/esm/transports/dryModeRunner.js +33 -0
  482. package/dist/esm/transports/dryModeRunner.js.map +1 -0
  483. package/dist/esm/transports/inMemoryTransport.d.ts +18 -0
  484. package/dist/esm/transports/inMemoryTransport.d.ts.map +1 -0
  485. package/dist/esm/transports/inMemoryTransport.js +39 -0
  486. package/dist/esm/transports/inMemoryTransport.js.map +1 -0
  487. package/dist/esm/transports/streamableHttp.d.ts.map +1 -1
  488. package/dist/esm/transports/streamableHttp.js +5 -1
  489. package/dist/esm/transports/streamableHttp.js.map +1 -1
  490. package/package.json +60 -39
  491. package/dist/cjs/common/config.d.ts +0 -53
  492. package/dist/cjs/common/config.d.ts.map +0 -1
  493. package/dist/cjs/common/config.js +0 -401
  494. package/dist/cjs/common/config.js.map +0 -1
  495. package/dist/cjs/tools/mongodb/search/listSearchIndexes.d.ts +0 -30
  496. package/dist/cjs/tools/mongodb/search/listSearchIndexes.d.ts.map +0 -1
  497. package/dist/cjs/tools/mongodb/search/listSearchIndexes.js +0 -65
  498. package/dist/cjs/tools/mongodb/search/listSearchIndexes.js.map +0 -1
  499. package/dist/esm/common/config.d.ts +0 -53
  500. package/dist/esm/common/config.d.ts.map +0 -1
  501. package/dist/esm/common/config.js +0 -390
  502. package/dist/esm/common/config.js.map +0 -1
  503. package/dist/esm/tools/mongodb/search/listSearchIndexes.d.ts +0 -30
  504. package/dist/esm/tools/mongodb/search/listSearchIndexes.d.ts.map +0 -1
  505. package/dist/esm/tools/mongodb/search/listSearchIndexes.js +0 -61
  506. package/dist/esm/tools/mongodb/search/listSearchIndexes.js.map +0 -1
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DeleteDeploymentTool = void 0;
4
+ const atlasLocalTool_js_1 = require("../atlasLocalTool.js");
5
+ const args_js_1 = require("../../args.js");
6
+ class DeleteDeploymentTool extends atlasLocalTool_js_1.AtlasLocalToolBase {
7
+ constructor() {
8
+ super(...arguments);
9
+ this.name = "atlas-local-delete-deployment";
10
+ this.description = "Delete a MongoDB Atlas local deployment";
11
+ this.operationType = "delete";
12
+ this.argsShape = {
13
+ deploymentName: args_js_1.CommonArgs.string().describe("Name of the deployment to delete"),
14
+ };
15
+ }
16
+ async executeWithAtlasLocalClient(client, { deploymentName }) {
17
+ // Lookup telemetry metadata
18
+ // We need to lookup the telemetry metadata before deleting the deployment
19
+ // to ensure that the deployment ID is set in the result metadata
20
+ const telemetryMetadata = await this.lookupTelemetryMetadata(client, deploymentName);
21
+ // Delete the deployment
22
+ await client.deleteDeployment(deploymentName);
23
+ return {
24
+ content: [{ type: "text", text: `Deployment "${deploymentName}" deleted successfully.` }],
25
+ _meta: {
26
+ ...telemetryMetadata,
27
+ },
28
+ };
29
+ }
30
+ }
31
+ exports.DeleteDeploymentTool = DeleteDeploymentTool;
32
+ //# sourceMappingURL=deleteDeployment.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deleteDeployment.js","sourceRoot":"","sources":["../../../../../src/tools/atlasLocal/delete/deleteDeployment.ts"],"names":[],"mappings":";;;AACA,4DAA0D;AAG1D,2CAA2C;AAE3C,MAAa,oBAAqB,SAAQ,sCAAkB;IAA5D;;QACW,SAAI,GAAG,+BAA+B,CAAC;QACpC,gBAAW,GAAG,yCAAyC,CAAC;QAC3D,kBAAa,GAAkB,QAAQ,CAAC;QACrC,cAAS,GAAG;YAClB,cAAc,EAAE,oBAAU,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;SACnF,CAAC;IAqBN,CAAC;IAnBa,KAAK,CAAC,2BAA2B,CACvC,MAAc,EACd,EAAE,cAAc,EAAmC;QAEnD,4BAA4B;QAC5B,0EAA0E;QAC1E,iEAAiE;QACjE,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;QAErF,wBAAwB;QACxB,MAAM,MAAM,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC;QAE9C,OAAO;YACH,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,cAAc,yBAAyB,EAAE,CAAC;YACzF,KAAK,EAAE;gBACH,GAAG,iBAAiB;aACvB;SACJ,CAAC;IACN,CAAC;CACJ;AA3BD,oDA2BC"}
@@ -0,0 +1,13 @@
1
+ import type { CallToolResult } from "@modelcontextprotocol/sdk/types.js";
2
+ import { AtlasLocalToolBase } from "../atlasLocalTool.js";
3
+ import type { OperationType } from "../../tool.js";
4
+ import type { Client } from "@mongodb-js/atlas-local";
5
+ export declare class ListDeploymentsTool extends AtlasLocalToolBase {
6
+ name: string;
7
+ protected description: string;
8
+ operationType: OperationType;
9
+ protected argsShape: {};
10
+ protected executeWithAtlasLocalClient(client: Client): Promise<CallToolResult>;
11
+ private formatDeploymentsTable;
12
+ }
13
+ //# sourceMappingURL=listDeployments.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"listDeployments.d.ts","sourceRoot":"","sources":["../../../../../src/tools/atlasLocal/read/listDeployments.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAGnD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAEtD,qBAAa,mBAAoB,SAAQ,kBAAkB;IAChD,IAAI,SAAkC;IAC7C,SAAS,CAAC,WAAW,SAA0C;IACxD,aAAa,EAAE,aAAa,CAAU;IAC7C,SAAS,CAAC,SAAS,KAAM;cAET,2BAA2B,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAQpF,OAAO,CAAC,sBAAsB;CAsBjC"}
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ListDeploymentsTool = void 0;
4
+ const atlasLocalTool_js_1 = require("../atlasLocalTool.js");
5
+ const tool_js_1 = require("../../tool.js");
6
+ class ListDeploymentsTool extends atlasLocalTool_js_1.AtlasLocalToolBase {
7
+ constructor() {
8
+ super(...arguments);
9
+ this.name = "atlas-local-list-deployments";
10
+ this.description = "List MongoDB Atlas local deployments";
11
+ this.operationType = "read";
12
+ this.argsShape = {};
13
+ }
14
+ async executeWithAtlasLocalClient(client) {
15
+ // List the deployments
16
+ const deployments = await client.listDeployments();
17
+ // Format the deployments
18
+ return this.formatDeploymentsTable(deployments);
19
+ }
20
+ formatDeploymentsTable(deployments) {
21
+ // Check if deployments are absent
22
+ if (!deployments?.length) {
23
+ return {
24
+ content: [{ type: "text", text: "No deployments found." }],
25
+ };
26
+ }
27
+ // Filter out the fields we want to return to the user
28
+ // We don't want to return the entire deployment object because it contains too much data
29
+ const deploymentsJson = deployments.map((deployment) => {
30
+ return {
31
+ name: deployment.name,
32
+ state: deployment.state,
33
+ mongodbVersion: deployment.mongodbVersion,
34
+ };
35
+ });
36
+ return {
37
+ content: (0, tool_js_1.formatUntrustedData)(`Found ${deployments.length} deployments`, JSON.stringify(deploymentsJson)),
38
+ };
39
+ }
40
+ }
41
+ exports.ListDeploymentsTool = ListDeploymentsTool;
42
+ //# sourceMappingURL=listDeployments.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"listDeployments.js","sourceRoot":"","sources":["../../../../../src/tools/atlasLocal/read/listDeployments.ts"],"names":[],"mappings":";;;AACA,4DAA0D;AAE1D,2CAAoD;AAIpD,MAAa,mBAAoB,SAAQ,sCAAkB;IAA3D;;QACW,SAAI,GAAG,8BAA8B,CAAC;QACnC,gBAAW,GAAG,sCAAsC,CAAC;QACxD,kBAAa,GAAkB,MAAM,CAAC;QACnC,cAAS,GAAG,EAAE,CAAC;IAgC7B,CAAC;IA9Ba,KAAK,CAAC,2BAA2B,CAAC,MAAc;QACtD,uBAAuB;QACvB,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,eAAe,EAAE,CAAC;QAEnD,yBAAyB;QACzB,OAAO,IAAI,CAAC,sBAAsB,CAAC,WAAW,CAAC,CAAC;IACpD,CAAC;IAEO,sBAAsB,CAAC,WAAyB;QACpD,kCAAkC;QAClC,IAAI,CAAC,WAAW,EAAE,MAAM,EAAE,CAAC;YACvB,OAAO;gBACH,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,uBAAuB,EAAE,CAAC;aAC7D,CAAC;QACN,CAAC;QAED,sDAAsD;QACtD,yFAAyF;QACzF,MAAM,eAAe,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE;YACnD,OAAO;gBACH,IAAI,EAAE,UAAU,CAAC,IAAI;gBACrB,KAAK,EAAE,UAAU,CAAC,KAAK;gBACvB,cAAc,EAAE,UAAU,CAAC,cAAc;aAC5C,CAAC;QACN,CAAC,CAAC,CAAC;QAEH,OAAO;YACH,OAAO,EAAE,IAAA,6BAAmB,EAAC,SAAS,WAAW,CAAC,MAAM,cAAc,EAAE,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;SAC3G,CAAC;IACN,CAAC;CACJ;AApCD,kDAoCC"}
@@ -0,0 +1,6 @@
1
+ import { DeleteDeploymentTool } from "./delete/deleteDeployment.js";
2
+ import { ListDeploymentsTool } from "./read/listDeployments.js";
3
+ import { CreateDeploymentTool } from "./create/createDeployment.js";
4
+ import { ConnectDeploymentTool } from "./connect/connectDeployment.js";
5
+ export declare const AtlasLocalTools: (typeof DeleteDeploymentTool | typeof ListDeploymentsTool | typeof CreateDeploymentTool | typeof ConnectDeploymentTool)[];
6
+ //# sourceMappingURL=tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../../../src/tools/atlasLocal/tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAEvE,eAAO,MAAM,eAAe,2HAA2F,CAAC"}
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AtlasLocalTools = void 0;
4
+ const deleteDeployment_js_1 = require("./delete/deleteDeployment.js");
5
+ const listDeployments_js_1 = require("./read/listDeployments.js");
6
+ const createDeployment_js_1 = require("./create/createDeployment.js");
7
+ const connectDeployment_js_1 = require("./connect/connectDeployment.js");
8
+ exports.AtlasLocalTools = [listDeployments_js_1.ListDeploymentsTool, deleteDeployment_js_1.DeleteDeploymentTool, createDeployment_js_1.CreateDeploymentTool, connectDeployment_js_1.ConnectDeploymentTool];
9
+ //# sourceMappingURL=tools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../../../src/tools/atlasLocal/tools.ts"],"names":[],"mappings":";;;AAAA,sEAAoE;AACpE,kEAAgE;AAChE,sEAAoE;AACpE,yEAAuE;AAE1D,QAAA,eAAe,GAAG,CAAC,wCAAmB,EAAE,0CAAoB,EAAE,0CAAoB,EAAE,4CAAqB,CAAC,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { AtlasTools } from "./atlas/tools.js";
2
+ import { AtlasLocalTools } from "./atlasLocal/tools.js";
3
+ import { MongoDbTools } from "./mongodb/tools.js";
4
+ declare const AllTools: (typeof import("./atlas/read/listClusters.js").ListClustersTool | typeof import("./atlas/read/listProjects.js").ListProjectsTool | typeof import("./atlas/read/inspectCluster.js").InspectClusterTool | typeof import("./atlas/create/createFreeCluster.js").CreateFreeClusterTool | typeof import("./atlas/create/createAccessList.js").CreateAccessListTool | typeof import("./atlas/read/inspectAccessList.js").InspectAccessListTool | typeof import("./atlas/read/listDBUsers.js").ListDBUsersTool | typeof import("./atlas/create/createDBUser.js").CreateDBUserTool | typeof import("./atlas/create/createProject.js").CreateProjectTool | typeof import("./atlas/read/listOrgs.js").ListOrganizationsTool | typeof import("./atlas/connect/connectCluster.js").ConnectClusterTool | typeof import("./atlas/read/listAlerts.js").ListAlertsTool | typeof import("./atlas/read/getPerformanceAdvisor.js").GetPerformanceAdvisorTool | typeof import("./atlasLocal/delete/deleteDeployment.js").DeleteDeploymentTool | typeof import("./atlasLocal/read/listDeployments.js").ListDeploymentsTool | typeof import("./atlasLocal/create/createDeployment.js").CreateDeploymentTool | typeof import("./atlasLocal/connect/connectDeployment.js").ConnectDeploymentTool | typeof import("./mongodb/connect/connect.js").ConnectTool | typeof import("./mongodb/metadata/listCollections.js").ListCollectionsTool | typeof import("./mongodb/metadata/collectionIndexes.js").CollectionIndexesTool | typeof import("./mongodb/metadata/listDatabases.js").ListDatabasesTool | typeof import("./mongodb/create/createIndex.js").CreateIndexTool | typeof import("./mongodb/metadata/collectionSchema.js").CollectionSchemaTool | typeof import("./mongodb/read/find.js").FindTool | typeof import("./mongodb/create/insertMany.js").InsertManyTool | typeof import("./mongodb/delete/deleteMany.js").DeleteManyTool | typeof import("./mongodb/metadata/collectionStorageSize.js").CollectionStorageSizeTool | typeof import("./mongodb/read/count.js").CountTool | typeof import("./mongodb/metadata/dbStats.js").DbStatsTool | typeof import("./mongodb/read/aggregate.js").AggregateTool | typeof import("./mongodb/update/updateMany.js").UpdateManyTool | typeof import("./mongodb/update/renameCollection.js").RenameCollectionTool | typeof import("./mongodb/delete/dropDatabase.js").DropDatabaseTool | typeof import("./mongodb/delete/dropCollection.js").DropCollectionTool | typeof import("./mongodb/metadata/explain.js").ExplainTool | typeof import("./mongodb/create/createCollection.js").CreateCollectionTool | typeof import("./mongodb/metadata/logs.js").LogsTool | typeof import("./mongodb/read/export.js").ExportTool | typeof import("./mongodb/delete/dropIndex.js").DropIndexTool | typeof import("./mongodb/connect/switchConnection.js").SwitchConnectionTool)[];
5
+ export { AllTools, MongoDbTools, AtlasTools, AtlasLocalTools };
6
+ export { ToolBase, type ToolConstructorParams, type ToolCategory, type OperationType, type ToolArgs, type ToolExecutionContext, } from "./tool.js";
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tools/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,QAAA,MAAM,QAAQ,guFAAuD,CAAC;AAEtE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,UAAU,EAAE,eAAe,EAAE,CAAC;AAE/D,OAAO,EACH,QAAQ,EACR,KAAK,qBAAqB,EAC1B,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,KAAK,QAAQ,EACb,KAAK,oBAAoB,GAC5B,MAAM,WAAW,CAAC"}
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ToolBase = exports.AtlasLocalTools = exports.AtlasTools = exports.MongoDbTools = exports.AllTools = void 0;
4
+ const tools_js_1 = require("./atlas/tools.js");
5
+ Object.defineProperty(exports, "AtlasTools", { enumerable: true, get: function () { return tools_js_1.AtlasTools; } });
6
+ const tools_js_2 = require("./atlasLocal/tools.js");
7
+ Object.defineProperty(exports, "AtlasLocalTools", { enumerable: true, get: function () { return tools_js_2.AtlasLocalTools; } });
8
+ const tools_js_3 = require("./mongodb/tools.js");
9
+ Object.defineProperty(exports, "MongoDbTools", { enumerable: true, get: function () { return tools_js_3.MongoDbTools; } });
10
+ const AllTools = [...tools_js_3.MongoDbTools, ...tools_js_1.AtlasTools, ...tools_js_2.AtlasLocalTools];
11
+ exports.AllTools = AllTools;
12
+ var tool_js_1 = require("./tool.js");
13
+ Object.defineProperty(exports, "ToolBase", { enumerable: true, get: function () { return tool_js_1.ToolBase; } });
14
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tools/index.ts"],"names":[],"mappings":";;;AAAA,+CAA8C;AAMb,2FANxB,qBAAU,OAMwB;AAL3C,oDAAwD;AAKX,gGALpC,0BAAe,OAKoC;AAJ5D,iDAAkD;AAI/B,6FAJV,uBAAY,OAIU;AAF/B,MAAM,QAAQ,GAAG,CAAC,GAAG,uBAAY,EAAE,GAAG,qBAAU,EAAE,GAAG,0BAAe,CAAC,CAAC;AAE7D,4BAAQ;AAEjB,qCAOmB;AANf,mGAAA,QAAQ,OAAA"}
@@ -3,21 +3,15 @@ import type { CallToolResult } from "@modelcontextprotocol/sdk/types.js";
3
3
  import { MongoDBToolBase } from "../mongodbTool.js";
4
4
  import type { ToolArgs, OperationType, ToolConstructorParams } from "../../tool.js";
5
5
  import type { Server } from "../../../server.js";
6
- declare const connectedName: "switch-connection";
7
- declare const disconnectedName: "connect";
8
- declare const connectedDescription = "Switch to a different MongoDB connection. If the user has configured a connection string or has previously called the connect tool, a connection is already established and there's no need to call this tool unless the user has explicitly requested to switch to a new instance.";
9
- declare const disconnectedDescription = "Connect to a MongoDB instance. The config resource captures if the server is already connected to a MongoDB cluster. If the user has configured a connection string or has previously called the connect tool, a connection is already established and there's no need to call this tool unless the user has explicitly requested to switch to a new MongoDB cluster.";
10
6
  export declare class ConnectTool extends MongoDBToolBase {
11
- name: typeof connectedName | typeof disconnectedName;
12
- protected description: typeof connectedDescription | typeof disconnectedDescription;
7
+ name: string;
8
+ protected description: string;
13
9
  protected argsShape: {
14
- connectionString: z.ZodOptional<z.ZodString>;
10
+ connectionString: z.ZodString;
15
11
  };
16
12
  operationType: OperationType;
17
13
  constructor({ session, config, telemetry, elicitation }: ToolConstructorParams);
18
- protected execute({ connectionString }: ToolArgs<typeof this.argsShape>): Promise<CallToolResult>;
19
14
  register(server: Server): boolean;
20
- private updateMetadata;
15
+ protected execute({ connectionString }: ToolArgs<typeof this.argsShape>): Promise<CallToolResult>;
21
16
  }
22
- export {};
23
17
  //# sourceMappingURL=connect.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"connect.d.ts","sourceRoot":"","sources":["../../../../../src/tools/mongodb/connect/connect.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAEpF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAoBjD,QAAA,MAAM,aAAa,EAAG,mBAA4B,CAAC;AACnD,QAAA,MAAM,gBAAgB,EAAG,SAAkB,CAAC;AAE5C,QAAA,MAAM,oBAAoB,wRAC+P,CAAC;AAC1R,QAAA,MAAM,uBAAuB,0WAC8U,CAAC;AAE5W,qBAAa,WAAY,SAAQ,eAAe;IACrC,IAAI,EAAE,OAAO,aAAa,GAAG,OAAO,gBAAgB,CAAoB;IAC/E,SAAS,CAAC,WAAW,EAAE,OAAO,oBAAoB,GAAG,OAAO,uBAAuB,CAA2B;IAI9G,SAAS,CAAC,SAAS;;MAEjB;IAEK,aAAa,EAAE,aAAa,CAAa;gBAEpC,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,EAAE,qBAAqB;cAW9D,OAAO,CAAC,EAAE,gBAAgB,EAAE,EAAE,QAAQ,CAAC,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,cAAc,CAAC;IAsBhG,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IASxC,OAAO,CAAC,cAAc;CA2BzB"}
1
+ {"version":3,"file":"connect.d.ts","sourceRoot":"","sources":["../../../../../src/tools/mongodb/connect/connect.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACpF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AACjD,qBAAa,WAAY,SAAQ,eAAe;IAC5B,IAAI,SAAa;IACjC,UAAmB,WAAW,SAC8U;IAI5W,UAAmB,SAAS;;MAE1B;IAEc,aAAa,EAAE,aAAa,CAAa;gBAE7C,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,EAAE,qBAAqB;IAW9D,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;cAYxB,OAAO,CAAC,EAAE,gBAAgB,EAAE,EAAE,QAAQ,CAAC,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,cAAc,CAAC;CAOnH"}
@@ -1,96 +1,43 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
3
  exports.ConnectTool = void 0;
7
4
  const zod_1 = require("zod");
8
5
  const mongodbTool_js_1 = require("../mongodbTool.js");
9
- const assert_1 = __importDefault(require("assert"));
10
- const logger_js_1 = require("../../../common/logger.js");
11
- const disconnectedSchema = zod_1.z
12
- .object({
13
- connectionString: zod_1.z.string().describe("MongoDB connection string (in the mongodb:// or mongodb+srv:// format)"),
14
- })
15
- .describe("Options for connecting to MongoDB.");
16
- const connectedSchema = zod_1.z
17
- .object({
18
- connectionString: zod_1.z
19
- .string()
20
- .optional()
21
- .describe("MongoDB connection string to switch to (in the mongodb:// or mongodb+srv:// format)"),
22
- })
23
- .describe("Options for switching the current MongoDB connection. If a connection string is not provided, the connection string from the config will be used.");
24
- const connectedName = "switch-connection";
25
- const disconnectedName = "connect";
26
- const connectedDescription = "Switch to a different MongoDB connection. If the user has configured a connection string or has previously called the connect tool, a connection is already established and there's no need to call this tool unless the user has explicitly requested to switch to a new instance.";
27
- const disconnectedDescription = "Connect to a MongoDB instance. The config resource captures if the server is already connected to a MongoDB cluster. If the user has configured a connection string or has previously called the connect tool, a connection is already established and there's no need to call this tool unless the user has explicitly requested to switch to a new MongoDB cluster.";
28
6
  class ConnectTool extends mongodbTool_js_1.MongoDBToolBase {
29
7
  constructor({ session, config, telemetry, elicitation }) {
30
8
  super({ session, config, telemetry, elicitation });
31
- this.name = disconnectedName;
32
- this.description = disconnectedDescription;
9
+ this.name = "connect";
10
+ this.description = "Connect to a MongoDB instance. The config resource captures if the server is already connected to a MongoDB cluster. If the user has configured a connection string or has previously called the connect tool, a connection is already established and there's no need to call this tool unless the user has explicitly requested to switch to a new MongoDB cluster.";
33
11
  // Here the default is empty just to trigger registration, but we're going to override it with the correct
34
12
  // schema in the register method.
35
13
  this.argsShape = {
36
- connectionString: zod_1.z.string().optional(),
14
+ connectionString: zod_1.z.string().describe("MongoDB connection string (in the mongodb:// or mongodb+srv:// format)"),
37
15
  };
38
16
  this.operationType = "connect";
39
17
  session.on("connect", () => {
40
- this.updateMetadata();
18
+ this.disable();
41
19
  });
42
20
  session.on("disconnect", () => {
43
- this.updateMetadata();
21
+ this.enable();
44
22
  });
45
23
  }
46
- async execute({ connectionString }) {
47
- switch (this.name) {
48
- case disconnectedName:
49
- (0, assert_1.default)(connectionString, "Connection string is required");
50
- break;
51
- case connectedName:
52
- connectionString ?? (connectionString = this.config.connectionString);
53
- (0, assert_1.default)(connectionString, "Cannot switch to a new connection because no connection string was provided and no default connection string is configured.");
54
- break;
24
+ register(server) {
25
+ const registrationSuccessful = super.register(server);
26
+ /**
27
+ * When connected to mongodb we want to swap connect with
28
+ * switch-connection tool.
29
+ */
30
+ if (registrationSuccessful && this.session.isConnectedToMongoDB) {
31
+ this.disable();
55
32
  }
56
- await this.connectToMongoDB(connectionString);
57
- this.updateMetadata();
33
+ return registrationSuccessful;
34
+ }
35
+ async execute({ connectionString }) {
36
+ await this.session.connectToMongoDB({ connectionString });
58
37
  return {
59
38
  content: [{ type: "text", text: "Successfully connected to MongoDB." }],
60
39
  };
61
40
  }
62
- register(server) {
63
- if (super.register(server)) {
64
- this.updateMetadata();
65
- return true;
66
- }
67
- return false;
68
- }
69
- updateMetadata() {
70
- let name;
71
- let description;
72
- let inputSchema;
73
- if (this.session.isConnectedToMongoDB) {
74
- name = connectedName;
75
- description = connectedDescription;
76
- inputSchema = connectedSchema;
77
- }
78
- else {
79
- name = disconnectedName;
80
- description = disconnectedDescription;
81
- inputSchema = disconnectedSchema;
82
- }
83
- this.session.logger.info({
84
- id: logger_js_1.LogId.updateToolMetadata,
85
- context: "tool",
86
- message: `Updating tool metadata to ${name}`,
87
- });
88
- this.update?.({
89
- name,
90
- description,
91
- inputSchema,
92
- });
93
- }
94
41
  }
95
42
  exports.ConnectTool = ConnectTool;
96
43
  //# sourceMappingURL=connect.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"connect.js","sourceRoot":"","sources":["../../../../../src/tools/mongodb/connect/connect.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"connect.js","sourceRoot":"","sources":["../../../../../src/tools/mongodb/connect/connect.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AAExB,sDAAoD;AAGpD,MAAa,WAAY,SAAQ,gCAAe;IAa5C,YAAY,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,EAAyB;QAC1E,KAAK,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC,CAAC;QAbvC,SAAI,GAAG,SAAS,CAAC;QACd,gBAAW,GAC1B,uWAAuW,CAAC;QAE5W,0GAA0G;QAC1G,iCAAiC;QACd,cAAS,GAAG;YAC3B,gBAAgB,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wEAAwE,CAAC;SAClH,CAAC;QAEc,kBAAa,GAAkB,SAAS,CAAC;QAIrD,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE;YACvB,IAAI,CAAC,OAAO,EAAE,CAAC;QACnB,CAAC,CAAC,CAAC;QAEH,OAAO,CAAC,EAAE,CAAC,YAAY,EAAE,GAAG,EAAE;YAC1B,IAAI,CAAC,MAAM,EAAE,CAAC;QAClB,CAAC,CAAC,CAAC;IACP,CAAC;IAEe,QAAQ,CAAC,MAAc;QACnC,MAAM,sBAAsB,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACtD;;;WAGG;QACH,IAAI,sBAAsB,IAAI,IAAI,CAAC,OAAO,CAAC,oBAAoB,EAAE,CAAC;YAC9D,IAAI,CAAC,OAAO,EAAE,CAAC;QACnB,CAAC;QACD,OAAO,sBAAsB,CAAC;IAClC,CAAC;IAEkB,KAAK,CAAC,OAAO,CAAC,EAAE,gBAAgB,EAAmC;QAClF,MAAM,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,gBAAgB,EAAE,CAAC,CAAC;QAE1D,OAAO;YACH,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,oCAAoC,EAAE,CAAC;SAC1E,CAAC;IACN,CAAC;CACJ;AA3CD,kCA2CC"}
@@ -0,0 +1,17 @@
1
+ import z from "zod";
2
+ import { type CallToolResult } from "@modelcontextprotocol/sdk/types.js";
3
+ import { MongoDBToolBase } from "../mongodbTool.js";
4
+ import { type ToolArgs, type OperationType, type ToolConstructorParams } from "../../tool.js";
5
+ import type { Server } from "../../../server.js";
6
+ export declare class SwitchConnectionTool extends MongoDBToolBase {
7
+ name: string;
8
+ protected description: string;
9
+ protected argsShape: {
10
+ connectionString: z.ZodOptional<z.ZodString>;
11
+ };
12
+ operationType: OperationType;
13
+ constructor({ session, config, telemetry, elicitation }: ToolConstructorParams);
14
+ register(server: Server): boolean;
15
+ protected execute({ connectionString }: ToolArgs<typeof this.argsShape>): Promise<CallToolResult>;
16
+ }
17
+ //# sourceMappingURL=switchConnection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"switchConnection.d.ts","sourceRoot":"","sources":["../../../../../src/tools/mongodb/connect/switchConnection.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AACpB,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAEzE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,KAAK,QAAQ,EAAE,KAAK,aAAa,EAAE,KAAK,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAC9F,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAEjD,qBAAa,oBAAqB,SAAQ,eAAe;IACrC,IAAI,SAAuB;IAC3C,UAAmB,WAAW,SAC4P;IAE1R,UAAmB,SAAS;;MAO1B;IAEc,aAAa,EAAE,aAAa,CAAa;gBAE7C,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,EAAE,qBAAqB;IAW9D,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;cAYxB,OAAO,CAAC,EAAE,gBAAgB,EAAE,EAAE,QAAQ,CAAC,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,cAAc,CAAC;CAWnH"}
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.SwitchConnectionTool = void 0;
7
+ const zod_1 = __importDefault(require("zod"));
8
+ const mongodbTool_js_1 = require("../mongodbTool.js");
9
+ class SwitchConnectionTool extends mongodbTool_js_1.MongoDBToolBase {
10
+ constructor({ session, config, telemetry, elicitation }) {
11
+ super({ session, config, telemetry, elicitation });
12
+ this.name = "switch-connection";
13
+ this.description = "Switch to a different MongoDB connection. If the user has configured a connection string or has previously called the connect tool, a connection is already established and there's no need to call this tool unless the user has explicitly requested to switch to a new instance.";
14
+ this.argsShape = {
15
+ connectionString: zod_1.default
16
+ .string()
17
+ .optional()
18
+ .describe("MongoDB connection string to switch to (in the mongodb:// or mongodb+srv:// format). If a connection string is not provided, the connection string from the config will be used."),
19
+ };
20
+ this.operationType = "connect";
21
+ session.on("connect", () => {
22
+ this.enable();
23
+ });
24
+ session.on("disconnect", () => {
25
+ this.disable();
26
+ });
27
+ }
28
+ register(server) {
29
+ const registrationSuccessful = super.register(server);
30
+ /**
31
+ * When connected to mongodb we want to swap connect with
32
+ * switch-connection tool.
33
+ */
34
+ if (registrationSuccessful && !this.session.isConnectedToMongoDB) {
35
+ this.disable();
36
+ }
37
+ return registrationSuccessful;
38
+ }
39
+ async execute({ connectionString }) {
40
+ if (typeof connectionString !== "string") {
41
+ await this.session.connectToConfiguredConnection();
42
+ }
43
+ else {
44
+ await this.session.connectToMongoDB({ connectionString });
45
+ }
46
+ return {
47
+ content: [{ type: "text", text: "Successfully connected to MongoDB." }],
48
+ };
49
+ }
50
+ }
51
+ exports.SwitchConnectionTool = SwitchConnectionTool;
52
+ //# sourceMappingURL=switchConnection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"switchConnection.js","sourceRoot":"","sources":["../../../../../src/tools/mongodb/connect/switchConnection.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAoB;AAGpB,sDAAoD;AAIpD,MAAa,oBAAqB,SAAQ,gCAAe;IAgBrD,YAAY,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,EAAyB;QAC1E,KAAK,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC,CAAC;QAhBvC,SAAI,GAAG,mBAAmB,CAAC;QACxB,gBAAW,GAC1B,qRAAqR,CAAC;QAEvQ,cAAS,GAAG;YAC3B,gBAAgB,EAAE,aAAC;iBACd,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CACL,kLAAkL,CACrL;SACR,CAAC;QAEc,kBAAa,GAAkB,SAAS,CAAC;QAIrD,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE;YACvB,IAAI,CAAC,MAAM,EAAE,CAAC;QAClB,CAAC,CAAC,CAAC;QAEH,OAAO,CAAC,EAAE,CAAC,YAAY,EAAE,GAAG,EAAE;YAC1B,IAAI,CAAC,OAAO,EAAE,CAAC;QACnB,CAAC,CAAC,CAAC;IACP,CAAC;IAEe,QAAQ,CAAC,MAAc;QACnC,MAAM,sBAAsB,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACtD;;;WAGG;QACH,IAAI,sBAAsB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,oBAAoB,EAAE,CAAC;YAC/D,IAAI,CAAC,OAAO,EAAE,CAAC;QACnB,CAAC;QACD,OAAO,sBAAsB,CAAC;IAClC,CAAC;IAEkB,KAAK,CAAC,OAAO,CAAC,EAAE,gBAAgB,EAAmC;QAClF,IAAI,OAAO,gBAAgB,KAAK,QAAQ,EAAE,CAAC;YACvC,MAAM,IAAI,CAAC,OAAO,CAAC,6BAA6B,EAAE,CAAC;QACvD,CAAC;aAAM,CAAC;YACJ,MAAM,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,gBAAgB,EAAE,CAAC,CAAC;QAC9D,CAAC;QAED,OAAO;YACH,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,oCAAoC,EAAE,CAAC;SAC1E,CAAC;IACN,CAAC;CACJ;AAlDD,oDAkDC"}
@@ -34,7 +34,7 @@ export declare class CreateIndexTool extends MongoDBToolBase {
34
34
  path: z.ZodString;
35
35
  numDimensions: z.ZodDefault<z.ZodNumber>;
36
36
  similarity: z.ZodDefault<z.ZodEnum<["cosine", "euclidean", "dotProduct"]>>;
37
- quantization: z.ZodDefault<z.ZodOptional<z.ZodEnum<["none", "scalar", "binary"]>>>;
37
+ quantization: z.ZodDefault<z.ZodEnum<["none", "scalar", "binary"]>>;
38
38
  }, "strict", z.ZodTypeAny, {
39
39
  path: string;
40
40
  type: "vector";
@@ -1 +1 @@
1
- {"version":3,"file":"createIndex.d.ts","sourceRoot":"","sources":["../../../../../src/tools/mongodb/create/createIndex.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAmB,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAErE,OAAO,EAAE,KAAK,QAAQ,EAAE,KAAK,aAAa,EAAgB,MAAM,eAAe,CAAC;AAChF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAE9C,qBAAa,eAAgB,SAAQ,eAAe;IAChD,OAAO,CAAC,2BAA2B,CAyDhC;IAEI,IAAI,SAAkB;IAC7B,SAAS,CAAC,WAAW,SAAsC;IAC3D,SAAS,CAAC,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAgBjB;IAEK,aAAa,EAAE,aAAa,CAAY;cAE/B,OAAO,CAAC,EACpB,QAAQ,EACR,UAAU,EACV,IAAI,EACJ,UAAU,EAAE,WAAW,GAC1B,EAAE,QAAQ,CAAC,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,cAAc,CAAC;CAkE/D"}
1
+ {"version":3,"file":"createIndex.d.ts","sourceRoot":"","sources":["../../../../../src/tools/mongodb/create/createIndex.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAmB,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACrE,OAAO,EAAE,KAAK,QAAQ,EAAE,KAAK,aAAa,EAAE,MAAM,eAAe,CAAC;AAClE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAI9C,qBAAa,eAAgB,SAAQ,eAAe;IAChD,OAAO,CAAC,2BAA2B,CAuDhC;IAEI,IAAI,SAAkB;IAC7B,SAAS,CAAC,WAAW,SAAsC;IAC3D,SAAS,CAAC,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAgBjB;IAEK,aAAa,EAAE,aAAa,CAAY;cAE/B,OAAO,CAAC,EACpB,QAAQ,EACR,UAAU,EACV,IAAI,EACJ,UAAU,EAAE,WAAW,GAC1B,EAAE,QAAQ,CAAC,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,cAAc,CAAC;CAmD/D"}
@@ -3,6 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.CreateIndexTool = void 0;
4
4
  const zod_1 = require("zod");
5
5
  const mongodbTool_js_1 = require("../mongodbTool.js");
6
+ const vectorSearchEmbeddingsManager_js_1 = require("../../../common/search/vectorSearchEmbeddingsManager.js");
7
+ const schemas_js_1 = require("../../../common/schemas.js");
6
8
  class CreateIndexTool extends mongodbTool_js_1.MongoDBToolBase {
7
9
  constructor() {
8
10
  super(...arguments);
@@ -32,12 +34,10 @@ class CreateIndexTool extends mongodbTool_js_1.MongoDBToolBase {
32
34
  .default(this.config.vectorSearchDimensions)
33
35
  .describe("Number of vector dimensions that MongoDB Vector Search enforces at index-time and query-time"),
34
36
  similarity: zod_1.z
35
- .enum(["cosine", "euclidean", "dotProduct"])
37
+ .enum(schemas_js_1.similarityValues)
36
38
  .default(this.config.vectorSearchSimilarityFunction)
37
39
  .describe("Vector similarity function to use to search for top K-nearest neighbors. You can set this field only for vector-type fields."),
38
- quantization: zod_1.z
39
- .enum(["none", "scalar", "binary"])
40
- .optional()
40
+ quantization: vectorSearchEmbeddingsManager_js_1.quantizationEnum
41
41
  .default("none")
42
42
  .describe("Type of automatic vector quantization for your vectors. Use this setting only if your embeddings are float or double vectors."),
43
43
  })
@@ -61,9 +61,9 @@ class CreateIndexTool extends mongodbTool_js_1.MongoDBToolBase {
61
61
  type: zod_1.z.literal("classic"),
62
62
  keys: zod_1.z.object({}).catchall(zod_1.z.custom()).describe("The index definition"),
63
63
  }),
64
- ...(this.isFeatureFlagEnabled("vectorSearch" /* FeatureFlags.VectorSearch */) ? [this.vectorSearchIndexDefinition] : []),
64
+ ...(this.isFeatureEnabled("search") ? [this.vectorSearchIndexDefinition] : []),
65
65
  ]))
66
- .describe("The index definition. Use 'classic' for standard indexes and 'vectorSearch' for vector search indexes"),
66
+ .describe(`The index definition. Use 'classic' for standard indexes${this.isFeatureEnabled("search") ? " and 'vectorSearch' for vector search indexes" : ""}.`),
67
67
  };
68
68
  this.operationType = "create";
69
69
  }
@@ -86,22 +86,7 @@ class CreateIndexTool extends mongodbTool_js_1.MongoDBToolBase {
86
86
  break;
87
87
  case "vectorSearch":
88
88
  {
89
- const isVectorSearchSupported = await this.session.isSearchSupported();
90
- if (!isVectorSearchSupported) {
91
- // TODO: remove hacky casts once we merge the local dev tools
92
- const isLocalAtlasAvailable = (this.server?.tools.filter((t) => t.category === "atlas-local")
93
- .length ?? 0) > 0;
94
- const CTA = isLocalAtlasAvailable ? "`atlas-local` tools" : "Atlas CLI";
95
- return {
96
- content: [
97
- {
98
- text: `The connected MongoDB deployment does not support vector search indexes. Either connect to a MongoDB Atlas cluster or use the ${CTA} to create and manage a local Atlas deployment.`,
99
- type: "text",
100
- },
101
- ],
102
- isError: true,
103
- };
104
- }
89
+ await this.ensureSearchIsSupported();
105
90
  indexes = await provider.createSearchIndexes(database, collection, [
106
91
  {
107
92
  name,
@@ -113,6 +98,8 @@ class CreateIndexTool extends mongodbTool_js_1.MongoDBToolBase {
113
98
  ]);
114
99
  responseClarification =
115
100
  " Since this is a vector search index, it may take a while for the index to build. Use the `list-indexes` tool to check the index status.";
101
+ // clean up the embeddings cache so it considers the new index
102
+ this.session.vectorSearchEmbeddingsManager.cleanupEmbeddingsForNamespace({ database, collection });
116
103
  }
117
104
  break;
118
105
  }
@@ -1 +1 @@
1
- {"version":3,"file":"createIndex.js","sourceRoot":"","sources":["../../../../../src/tools/mongodb/create/createIndex.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"createIndex.js","sourceRoot":"","sources":["../../../../../src/tools/mongodb/create/createIndex.ts"],"names":[],"mappings":"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"}
@@ -1,16 +1,36 @@
1
1
  import { z } from "zod";
2
2
  import type { CallToolResult } from "@modelcontextprotocol/sdk/types.js";
3
3
  import { MongoDBToolBase } from "../mongodbTool.js";
4
- import type { ToolArgs, OperationType } from "../../tool.js";
4
+ import { type ToolArgs, type OperationType } from "../../tool.js";
5
5
  export declare class InsertManyTool extends MongoDBToolBase {
6
6
  name: string;
7
7
  protected description: string;
8
8
  protected argsShape: {
9
+ embeddingParameters?: z.ZodOptional<z.ZodObject<{
10
+ outputDimension: z.ZodOptional<z.ZodEffects<z.ZodDefault<z.ZodUnion<[z.ZodLiteral<"256">, z.ZodLiteral<"512">, z.ZodLiteral<"1024">, z.ZodLiteral<"2048">, z.ZodLiteral<"4096">]>>, number, "256" | "512" | "1024" | "2048" | "4096" | undefined>>;
11
+ outputDtype: z.ZodDefault<z.ZodOptional<z.ZodEnum<["float", "int8", "uint8", "binary", "ubinary"]>>>;
12
+ } & {
13
+ model: z.ZodDefault<z.ZodEnum<["voyage-3-large", "voyage-3.5", "voyage-3.5-lite", "voyage-code-3"]>>;
14
+ } & {
15
+ input: z.ZodArray<z.ZodObject<{}, "passthrough", z.ZodTypeAny, z.objectOutputType<{}, z.ZodTypeAny, "passthrough">, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>, "many">;
16
+ }, "strip", z.ZodTypeAny, {
17
+ input: z.objectOutputType<{}, z.ZodTypeAny, "passthrough">[];
18
+ outputDtype: "binary" | "float" | "int8" | "uint8" | "ubinary";
19
+ model: "voyage-3-large" | "voyage-3.5" | "voyage-3.5-lite" | "voyage-code-3";
20
+ outputDimension?: number | undefined;
21
+ }, {
22
+ input: z.objectInputType<{}, z.ZodTypeAny, "passthrough">[];
23
+ outputDimension?: "256" | "512" | "1024" | "2048" | "4096" | undefined;
24
+ outputDtype?: "binary" | "float" | "int8" | "uint8" | "ubinary" | undefined;
25
+ model?: "voyage-3-large" | "voyage-3.5" | "voyage-3.5-lite" | "voyage-code-3" | undefined;
26
+ }>> | undefined;
9
27
  documents: z.ZodArray<z.AnyZodObject, "many">;
10
28
  database: z.ZodString;
11
29
  collection: z.ZodString;
12
30
  };
13
31
  operationType: OperationType;
14
- protected execute({ database, collection, documents, }: ToolArgs<typeof this.argsShape>): Promise<CallToolResult>;
32
+ protected execute({ database, collection, documents, embeddingParameters: providedEmbeddingParameters, }: ToolArgs<typeof this.argsShape>): Promise<CallToolResult>;
33
+ private replaceRawValuesWithEmbeddingsIfNecessary;
34
+ private deleteFieldPath;
15
35
  }
16
36
  //# sourceMappingURL=insertMany.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"insertMany.d.ts","sourceRoot":"","sources":["../../../../../src/tools/mongodb/create/insertMany.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAmB,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACrE,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAG7D,qBAAa,cAAe,SAAQ,eAAe;IACxC,IAAI,SAAiB;IAC5B,SAAS,CAAC,WAAW,SAA4D;IACjF,SAAS,CAAC,SAAS;;;;MAOjB;IACK,aAAa,EAAE,aAAa,CAAY;cAE/B,OAAO,CAAC,EACpB,QAAQ,EACR,UAAU,EACV,SAAS,GACZ,EAAE,QAAQ,CAAC,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,cAAc,CAAC;CAiB/D"}
1
+ {"version":3,"file":"insertMany.d.ts","sourceRoot":"","sources":["../../../../../src/tools/mongodb/create/insertMany.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAmB,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACrE,OAAO,EAAE,KAAK,QAAQ,EAAE,KAAK,aAAa,EAAuB,MAAM,eAAe,CAAC;AAcvF,qBAAa,cAAe,SAAQ,eAAe;IACxC,IAAI,SAAiB;IAC5B,SAAS,CAAC,WAAW,SAA4D;IACjF,SAAS,CAAC,SAAS;;;;;;;;;;;;;;;;;;;;;;MAgBjB;IACK,aAAa,EAAE,aAAa,CAAY;cAE/B,OAAO,CAAC,EACpB,QAAQ,EACR,UAAU,EACV,SAAS,EACT,mBAAmB,EAAE,2BAA2B,GACnD,EAAE,QAAQ,CAAC,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,cAAc,CAAC;YA+B9C,yCAAyC;IAgEvD,OAAO,CAAC,eAAe;CAe1B"}