mongodb-mcp-server 1.1.0-prerelease.1 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (312) hide show
  1. package/README.md +8 -0
  2. package/dist/cjs/common/atlas/cluster.d.ts +7 -2
  3. package/dist/cjs/common/atlas/cluster.d.ts.map +1 -1
  4. package/dist/cjs/common/atlas/cluster.js +18 -4
  5. package/dist/cjs/common/atlas/cluster.js.map +1 -1
  6. package/dist/cjs/common/atlas/performanceAdvisorUtils.d.ts +2 -0
  7. package/dist/cjs/common/atlas/performanceAdvisorUtils.d.ts.map +1 -1
  8. package/dist/cjs/common/atlas/performanceAdvisorUtils.js +3 -1
  9. package/dist/cjs/common/atlas/performanceAdvisorUtils.js.map +1 -1
  10. package/dist/cjs/common/atlasLocal.d.ts +4 -0
  11. package/dist/cjs/common/atlasLocal.d.ts.map +1 -0
  12. package/dist/cjs/common/atlasLocal.js +57 -0
  13. package/dist/cjs/common/atlasLocal.js.map +1 -0
  14. package/dist/cjs/common/config.d.ts +86 -15
  15. package/dist/cjs/common/config.d.ts.map +1 -1
  16. package/dist/cjs/common/config.js +156 -10
  17. package/dist/cjs/common/config.js.map +1 -1
  18. package/dist/cjs/common/connectionErrorHandler.d.ts.map +1 -1
  19. package/dist/cjs/common/connectionErrorHandler.js +14 -5
  20. package/dist/cjs/common/connectionErrorHandler.js.map +1 -1
  21. package/dist/cjs/common/connectionManager.d.ts +7 -2
  22. package/dist/cjs/common/connectionManager.d.ts.map +1 -1
  23. package/dist/cjs/common/connectionManager.js +29 -12
  24. package/dist/cjs/common/connectionManager.js.map +1 -1
  25. package/dist/cjs/common/errors.d.ts +5 -1
  26. package/dist/cjs/common/errors.d.ts.map +1 -1
  27. package/dist/cjs/common/errors.js +4 -0
  28. package/dist/cjs/common/errors.js.map +1 -1
  29. package/dist/cjs/common/packageInfo.js +1 -1
  30. package/dist/cjs/common/packageInfo.js.map +1 -1
  31. package/dist/cjs/common/search/embeddingsProvider.d.ts +41 -0
  32. package/dist/cjs/common/search/embeddingsProvider.d.ts.map +1 -0
  33. package/dist/cjs/common/search/embeddingsProvider.js +53 -0
  34. package/dist/cjs/common/search/embeddingsProvider.js.map +1 -0
  35. package/dist/cjs/common/search/vectorSearchEmbeddingsManager.d.ts +58 -0
  36. package/dist/cjs/common/search/vectorSearchEmbeddingsManager.d.ts.map +1 -0
  37. package/dist/cjs/common/search/vectorSearchEmbeddingsManager.js +200 -0
  38. package/dist/cjs/common/search/vectorSearchEmbeddingsManager.js.map +1 -0
  39. package/dist/cjs/common/session.d.ts +9 -1
  40. package/dist/cjs/common/session.d.ts.map +1 -1
  41. package/dist/cjs/common/session.js +16 -1
  42. package/dist/cjs/common/session.js.map +1 -1
  43. package/dist/cjs/resources/common/debug.d.ts +1 -1
  44. package/dist/cjs/resources/common/debug.d.ts.map +1 -1
  45. package/dist/cjs/resources/common/debug.js +5 -3
  46. package/dist/cjs/resources/common/debug.js.map +1 -1
  47. package/dist/cjs/resources/resource.d.ts +1 -1
  48. package/dist/cjs/resources/resource.d.ts.map +1 -1
  49. package/dist/cjs/resources/resource.js +2 -2
  50. package/dist/cjs/resources/resource.js.map +1 -1
  51. package/dist/cjs/server.d.ts +2 -1
  52. package/dist/cjs/server.d.ts.map +1 -1
  53. package/dist/cjs/server.js +6 -2
  54. package/dist/cjs/server.js.map +1 -1
  55. package/dist/cjs/telemetry/types.d.ts +1 -0
  56. package/dist/cjs/telemetry/types.d.ts.map +1 -1
  57. package/dist/cjs/tools/args.d.ts +1 -0
  58. package/dist/cjs/tools/args.d.ts.map +1 -1
  59. package/dist/cjs/tools/args.js +1 -0
  60. package/dist/cjs/tools/args.js.map +1 -1
  61. package/dist/cjs/tools/atlas/atlasTool.d.ts +1 -1
  62. package/dist/cjs/tools/atlas/atlasTool.d.ts.map +1 -1
  63. package/dist/cjs/tools/atlas/atlasTool.js +1 -1
  64. package/dist/cjs/tools/atlas/atlasTool.js.map +1 -1
  65. package/dist/cjs/tools/atlas/connect/connectCluster.d.ts +3 -1
  66. package/dist/cjs/tools/atlas/connect/connectCluster.d.ts.map +1 -1
  67. package/dist/cjs/tools/atlas/connect/connectCluster.js +11 -6
  68. package/dist/cjs/tools/atlas/connect/connectCluster.js.map +1 -1
  69. package/dist/cjs/tools/atlas/create/createProject.d.ts +0 -4
  70. package/dist/cjs/tools/atlas/create/createProject.d.ts.map +1 -1
  71. package/dist/cjs/tools/atlas/create/createProject.js +3 -6
  72. package/dist/cjs/tools/atlas/create/createProject.js.map +1 -1
  73. package/dist/cjs/tools/atlas/read/getPerformanceAdvisor.d.ts.map +1 -1
  74. package/dist/cjs/tools/atlas/read/getPerformanceAdvisor.js +2 -2
  75. package/dist/cjs/tools/atlas/read/getPerformanceAdvisor.js.map +1 -1
  76. package/dist/cjs/tools/atlas/read/inspectCluster.js +1 -1
  77. package/dist/cjs/tools/atlas/read/inspectCluster.js.map +1 -1
  78. package/dist/cjs/tools/atlas/read/listClusters.js +1 -1
  79. package/dist/cjs/tools/atlas/read/listClusters.js.map +1 -1
  80. package/dist/cjs/tools/atlas/read/listProjects.d.ts +0 -3
  81. package/dist/cjs/tools/atlas/read/listProjects.d.ts.map +1 -1
  82. package/dist/cjs/tools/atlas/read/listProjects.js +15 -20
  83. package/dist/cjs/tools/atlas/read/listProjects.js.map +1 -1
  84. package/dist/cjs/tools/atlasLocal/atlasLocalTool.d.ts +19 -0
  85. package/dist/cjs/tools/atlasLocal/atlasLocalTool.d.ts.map +1 -0
  86. package/dist/cjs/tools/atlasLocal/atlasLocalTool.js +109 -0
  87. package/dist/cjs/tools/atlasLocal/atlasLocalTool.js.map +1 -0
  88. package/dist/cjs/tools/atlasLocal/connect/connectDeployment.d.ts +14 -0
  89. package/dist/cjs/tools/atlasLocal/connect/connectDeployment.d.ts.map +1 -0
  90. package/dist/cjs/tools/atlasLocal/connect/connectDeployment.js +35 -0
  91. package/dist/cjs/tools/atlasLocal/connect/connectDeployment.js.map +1 -0
  92. package/dist/cjs/tools/atlasLocal/create/createDeployment.d.ts +14 -0
  93. package/dist/cjs/tools/atlasLocal/create/createDeployment.d.ts.map +1 -0
  94. package/dist/cjs/tools/atlasLocal/create/createDeployment.js +41 -0
  95. package/dist/cjs/tools/atlasLocal/create/createDeployment.js.map +1 -0
  96. package/dist/cjs/tools/atlasLocal/delete/deleteDeployment.d.ts +14 -0
  97. package/dist/cjs/tools/atlasLocal/delete/deleteDeployment.d.ts.map +1 -0
  98. package/dist/cjs/tools/atlasLocal/delete/deleteDeployment.js +32 -0
  99. package/dist/cjs/tools/atlasLocal/delete/deleteDeployment.js.map +1 -0
  100. package/dist/cjs/tools/atlasLocal/read/listDeployments.d.ts +13 -0
  101. package/dist/cjs/tools/atlasLocal/read/listDeployments.d.ts.map +1 -0
  102. package/dist/cjs/tools/atlasLocal/read/listDeployments.js +42 -0
  103. package/dist/cjs/tools/atlasLocal/read/listDeployments.js.map +1 -0
  104. package/dist/cjs/tools/atlasLocal/tools.d.ts +6 -0
  105. package/dist/cjs/tools/atlasLocal/tools.d.ts.map +1 -0
  106. package/dist/cjs/tools/atlasLocal/tools.js +9 -0
  107. package/dist/cjs/tools/atlasLocal/tools.js.map +1 -0
  108. package/dist/cjs/tools/mongodb/create/createIndex.d.ts +121 -3
  109. package/dist/cjs/tools/mongodb/create/createIndex.d.ts.map +1 -1
  110. package/dist/cjs/tools/mongodb/create/createIndex.js +87 -9
  111. package/dist/cjs/tools/mongodb/create/createIndex.js.map +1 -1
  112. package/dist/cjs/tools/mongodb/create/insertMany.d.ts +1 -1
  113. package/dist/cjs/tools/mongodb/create/insertMany.d.ts.map +1 -1
  114. package/dist/cjs/tools/mongodb/create/insertMany.js +14 -10
  115. package/dist/cjs/tools/mongodb/create/insertMany.js.map +1 -1
  116. package/dist/cjs/tools/mongodb/delete/dropIndex.d.ts +20 -0
  117. package/dist/cjs/tools/mongodb/delete/dropIndex.d.ts.map +1 -0
  118. package/dist/cjs/tools/mongodb/delete/dropIndex.js +75 -0
  119. package/dist/cjs/tools/mongodb/delete/dropIndex.js.map +1 -0
  120. package/dist/cjs/tools/mongodb/metadata/collectionIndexes.d.ts +15 -0
  121. package/dist/cjs/tools/mongodb/metadata/collectionIndexes.d.ts.map +1 -1
  122. package/dist/cjs/tools/mongodb/metadata/collectionIndexes.js +30 -5
  123. package/dist/cjs/tools/mongodb/metadata/collectionIndexes.js.map +1 -1
  124. package/dist/cjs/tools/mongodb/metadata/explain.d.ts +191 -9
  125. package/dist/cjs/tools/mongodb/metadata/explain.d.ts.map +1 -1
  126. package/dist/cjs/tools/mongodb/metadata/listDatabases.d.ts.map +1 -1
  127. package/dist/cjs/tools/mongodb/metadata/listDatabases.js +1 -3
  128. package/dist/cjs/tools/mongodb/metadata/listDatabases.js.map +1 -1
  129. package/dist/cjs/tools/mongodb/mongodbTool.d.ts +3 -2
  130. package/dist/cjs/tools/mongodb/mongodbTool.d.ts.map +1 -1
  131. package/dist/cjs/tools/mongodb/mongodbTool.js +19 -0
  132. package/dist/cjs/tools/mongodb/mongodbTool.js.map +1 -1
  133. package/dist/cjs/tools/mongodb/read/aggregate.d.ts +215 -2
  134. package/dist/cjs/tools/mongodb/read/aggregate.d.ts.map +1 -1
  135. package/dist/cjs/tools/mongodb/read/aggregate.js +82 -8
  136. package/dist/cjs/tools/mongodb/read/aggregate.js.map +1 -1
  137. package/dist/cjs/tools/mongodb/read/export.d.ts +191 -9
  138. package/dist/cjs/tools/mongodb/read/export.d.ts.map +1 -1
  139. package/dist/cjs/tools/mongodb/read/find.js +1 -1
  140. package/dist/cjs/tools/mongodb/read/find.js.map +1 -1
  141. package/dist/cjs/tools/mongodb/tools.d.ts +2 -2
  142. package/dist/cjs/tools/mongodb/tools.d.ts.map +1 -1
  143. package/dist/cjs/tools/mongodb/tools.js +2 -2
  144. package/dist/cjs/tools/mongodb/tools.js.map +1 -1
  145. package/dist/cjs/tools/tool.d.ts +9 -4
  146. package/dist/cjs/tools/tool.d.ts.map +1 -1
  147. package/dist/cjs/tools/tool.js +17 -5
  148. package/dist/cjs/tools/tool.js.map +1 -1
  149. package/dist/cjs/transports/base.d.ts +4 -1
  150. package/dist/cjs/transports/base.d.ts.map +1 -1
  151. package/dist/cjs/transports/base.js +6 -1
  152. package/dist/cjs/transports/base.js.map +1 -1
  153. package/dist/esm/common/atlas/cluster.d.ts +7 -2
  154. package/dist/esm/common/atlas/cluster.d.ts.map +1 -1
  155. package/dist/esm/common/atlas/cluster.js +17 -4
  156. package/dist/esm/common/atlas/cluster.js.map +1 -1
  157. package/dist/esm/common/atlas/performanceAdvisorUtils.d.ts +2 -0
  158. package/dist/esm/common/atlas/performanceAdvisorUtils.d.ts.map +1 -1
  159. package/dist/esm/common/atlas/performanceAdvisorUtils.js +2 -0
  160. package/dist/esm/common/atlas/performanceAdvisorUtils.js.map +1 -1
  161. package/dist/esm/common/atlasLocal.d.ts +4 -0
  162. package/dist/esm/common/atlasLocal.d.ts.map +1 -0
  163. package/dist/esm/common/atlasLocal.js +20 -0
  164. package/dist/esm/common/atlasLocal.js.map +1 -0
  165. package/dist/esm/common/config.d.ts +86 -15
  166. package/dist/esm/common/config.d.ts.map +1 -1
  167. package/dist/esm/common/config.js +115 -2
  168. package/dist/esm/common/config.js.map +1 -1
  169. package/dist/esm/common/connectionErrorHandler.d.ts.map +1 -1
  170. package/dist/esm/common/connectionErrorHandler.js +14 -5
  171. package/dist/esm/common/connectionErrorHandler.js.map +1 -1
  172. package/dist/esm/common/connectionManager.d.ts +7 -2
  173. package/dist/esm/common/connectionManager.d.ts.map +1 -1
  174. package/dist/esm/common/connectionManager.js +27 -11
  175. package/dist/esm/common/connectionManager.js.map +1 -1
  176. package/dist/esm/common/errors.d.ts +5 -1
  177. package/dist/esm/common/errors.d.ts.map +1 -1
  178. package/dist/esm/common/errors.js +4 -0
  179. package/dist/esm/common/errors.js.map +1 -1
  180. package/dist/esm/common/packageInfo.js +1 -1
  181. package/dist/esm/common/packageInfo.js.map +1 -1
  182. package/dist/esm/common/search/embeddingsProvider.d.ts +41 -0
  183. package/dist/esm/common/search/embeddingsProvider.d.ts.map +1 -0
  184. package/dist/esm/common/search/embeddingsProvider.js +46 -0
  185. package/dist/esm/common/search/embeddingsProvider.js.map +1 -0
  186. package/dist/esm/common/search/vectorSearchEmbeddingsManager.d.ts +58 -0
  187. package/dist/esm/common/search/vectorSearchEmbeddingsManager.d.ts.map +1 -0
  188. package/dist/esm/common/search/vectorSearchEmbeddingsManager.js +193 -0
  189. package/dist/esm/common/search/vectorSearchEmbeddingsManager.js.map +1 -0
  190. package/dist/esm/common/session.d.ts +9 -1
  191. package/dist/esm/common/session.d.ts.map +1 -1
  192. package/dist/esm/common/session.js +16 -1
  193. package/dist/esm/common/session.js.map +1 -1
  194. package/dist/esm/resources/common/debug.d.ts +1 -1
  195. package/dist/esm/resources/common/debug.d.ts.map +1 -1
  196. package/dist/esm/resources/common/debug.js +5 -3
  197. package/dist/esm/resources/common/debug.js.map +1 -1
  198. package/dist/esm/resources/resource.d.ts +1 -1
  199. package/dist/esm/resources/resource.d.ts.map +1 -1
  200. package/dist/esm/resources/resource.js +2 -2
  201. package/dist/esm/resources/resource.js.map +1 -1
  202. package/dist/esm/server.d.ts +2 -1
  203. package/dist/esm/server.d.ts.map +1 -1
  204. package/dist/esm/server.js +5 -1
  205. package/dist/esm/server.js.map +1 -1
  206. package/dist/esm/telemetry/types.d.ts +1 -0
  207. package/dist/esm/telemetry/types.d.ts.map +1 -1
  208. package/dist/esm/tools/args.d.ts +1 -0
  209. package/dist/esm/tools/args.d.ts.map +1 -1
  210. package/dist/esm/tools/args.js +1 -0
  211. package/dist/esm/tools/args.js.map +1 -1
  212. package/dist/esm/tools/atlas/atlasTool.d.ts +1 -1
  213. package/dist/esm/tools/atlas/atlasTool.d.ts.map +1 -1
  214. package/dist/esm/tools/atlas/atlasTool.js +1 -1
  215. package/dist/esm/tools/atlas/atlasTool.js.map +1 -1
  216. package/dist/esm/tools/atlas/connect/connectCluster.d.ts +3 -1
  217. package/dist/esm/tools/atlas/connect/connectCluster.d.ts.map +1 -1
  218. package/dist/esm/tools/atlas/connect/connectCluster.js +12 -7
  219. package/dist/esm/tools/atlas/connect/connectCluster.js.map +1 -1
  220. package/dist/esm/tools/atlas/create/createProject.d.ts +0 -4
  221. package/dist/esm/tools/atlas/create/createProject.d.ts.map +1 -1
  222. package/dist/esm/tools/atlas/create/createProject.js +2 -5
  223. package/dist/esm/tools/atlas/create/createProject.js.map +1 -1
  224. package/dist/esm/tools/atlas/read/getPerformanceAdvisor.d.ts.map +1 -1
  225. package/dist/esm/tools/atlas/read/getPerformanceAdvisor.js +3 -3
  226. package/dist/esm/tools/atlas/read/getPerformanceAdvisor.js.map +1 -1
  227. package/dist/esm/tools/atlas/read/inspectCluster.js +1 -1
  228. package/dist/esm/tools/atlas/read/inspectCluster.js.map +1 -1
  229. package/dist/esm/tools/atlas/read/listClusters.js +1 -1
  230. package/dist/esm/tools/atlas/read/listClusters.js.map +1 -1
  231. package/dist/esm/tools/atlas/read/listProjects.d.ts +0 -3
  232. package/dist/esm/tools/atlas/read/listProjects.d.ts.map +1 -1
  233. package/dist/esm/tools/atlas/read/listProjects.js +14 -19
  234. package/dist/esm/tools/atlas/read/listProjects.js.map +1 -1
  235. package/dist/esm/tools/atlasLocal/atlasLocalTool.d.ts +19 -0
  236. package/dist/esm/tools/atlasLocal/atlasLocalTool.d.ts.map +1 -0
  237. package/dist/esm/tools/atlasLocal/atlasLocalTool.js +105 -0
  238. package/dist/esm/tools/atlasLocal/atlasLocalTool.js.map +1 -0
  239. package/dist/esm/tools/atlasLocal/connect/connectDeployment.d.ts +14 -0
  240. package/dist/esm/tools/atlasLocal/connect/connectDeployment.d.ts.map +1 -0
  241. package/dist/esm/tools/atlasLocal/connect/connectDeployment.js +31 -0
  242. package/dist/esm/tools/atlasLocal/connect/connectDeployment.js.map +1 -0
  243. package/dist/esm/tools/atlasLocal/create/createDeployment.d.ts +14 -0
  244. package/dist/esm/tools/atlasLocal/create/createDeployment.d.ts.map +1 -0
  245. package/dist/esm/tools/atlasLocal/create/createDeployment.js +37 -0
  246. package/dist/esm/tools/atlasLocal/create/createDeployment.js.map +1 -0
  247. package/dist/esm/tools/atlasLocal/delete/deleteDeployment.d.ts +14 -0
  248. package/dist/esm/tools/atlasLocal/delete/deleteDeployment.d.ts.map +1 -0
  249. package/dist/esm/tools/atlasLocal/delete/deleteDeployment.js +28 -0
  250. package/dist/esm/tools/atlasLocal/delete/deleteDeployment.js.map +1 -0
  251. package/dist/esm/tools/atlasLocal/read/listDeployments.d.ts +13 -0
  252. package/dist/esm/tools/atlasLocal/read/listDeployments.d.ts.map +1 -0
  253. package/dist/esm/tools/atlasLocal/read/listDeployments.js +38 -0
  254. package/dist/esm/tools/atlasLocal/read/listDeployments.js.map +1 -0
  255. package/dist/esm/tools/atlasLocal/tools.d.ts +6 -0
  256. package/dist/esm/tools/atlasLocal/tools.d.ts.map +1 -0
  257. package/dist/esm/tools/atlasLocal/tools.js +6 -0
  258. package/dist/esm/tools/atlasLocal/tools.js.map +1 -0
  259. package/dist/esm/tools/mongodb/create/createIndex.d.ts +121 -3
  260. package/dist/esm/tools/mongodb/create/createIndex.d.ts.map +1 -1
  261. package/dist/esm/tools/mongodb/create/createIndex.js +87 -9
  262. package/dist/esm/tools/mongodb/create/createIndex.js.map +1 -1
  263. package/dist/esm/tools/mongodb/create/insertMany.d.ts +1 -1
  264. package/dist/esm/tools/mongodb/create/insertMany.d.ts.map +1 -1
  265. package/dist/esm/tools/mongodb/create/insertMany.js +14 -10
  266. package/dist/esm/tools/mongodb/create/insertMany.js.map +1 -1
  267. package/dist/esm/tools/mongodb/delete/dropIndex.d.ts +20 -0
  268. package/dist/esm/tools/mongodb/delete/dropIndex.d.ts.map +1 -0
  269. package/dist/esm/tools/mongodb/delete/dropIndex.js +68 -0
  270. package/dist/esm/tools/mongodb/delete/dropIndex.js.map +1 -0
  271. package/dist/esm/tools/mongodb/metadata/collectionIndexes.d.ts +15 -0
  272. package/dist/esm/tools/mongodb/metadata/collectionIndexes.d.ts.map +1 -1
  273. package/dist/esm/tools/mongodb/metadata/collectionIndexes.js +30 -5
  274. package/dist/esm/tools/mongodb/metadata/collectionIndexes.js.map +1 -1
  275. package/dist/esm/tools/mongodb/metadata/explain.d.ts +191 -9
  276. package/dist/esm/tools/mongodb/metadata/explain.d.ts.map +1 -1
  277. package/dist/esm/tools/mongodb/metadata/listDatabases.d.ts.map +1 -1
  278. package/dist/esm/tools/mongodb/metadata/listDatabases.js +1 -3
  279. package/dist/esm/tools/mongodb/metadata/listDatabases.js.map +1 -1
  280. package/dist/esm/tools/mongodb/mongodbTool.d.ts +3 -2
  281. package/dist/esm/tools/mongodb/mongodbTool.d.ts.map +1 -1
  282. package/dist/esm/tools/mongodb/mongodbTool.js +19 -0
  283. package/dist/esm/tools/mongodb/mongodbTool.js.map +1 -1
  284. package/dist/esm/tools/mongodb/read/aggregate.d.ts +215 -2
  285. package/dist/esm/tools/mongodb/read/aggregate.d.ts.map +1 -1
  286. package/dist/esm/tools/mongodb/read/aggregate.js +82 -8
  287. package/dist/esm/tools/mongodb/read/aggregate.js.map +1 -1
  288. package/dist/esm/tools/mongodb/read/export.d.ts +191 -9
  289. package/dist/esm/tools/mongodb/read/export.d.ts.map +1 -1
  290. package/dist/esm/tools/mongodb/read/find.js +1 -1
  291. package/dist/esm/tools/mongodb/read/find.js.map +1 -1
  292. package/dist/esm/tools/mongodb/tools.d.ts +2 -2
  293. package/dist/esm/tools/mongodb/tools.d.ts.map +1 -1
  294. package/dist/esm/tools/mongodb/tools.js +2 -2
  295. package/dist/esm/tools/mongodb/tools.js.map +1 -1
  296. package/dist/esm/tools/tool.d.ts +9 -4
  297. package/dist/esm/tools/tool.d.ts.map +1 -1
  298. package/dist/esm/tools/tool.js +17 -5
  299. package/dist/esm/tools/tool.js.map +1 -1
  300. package/dist/esm/transports/base.d.ts +4 -1
  301. package/dist/esm/transports/base.d.ts.map +1 -1
  302. package/dist/esm/transports/base.js +6 -1
  303. package/dist/esm/transports/base.js.map +1 -1
  304. package/package.json +15 -11
  305. package/dist/cjs/tools/mongodb/search/listSearchIndexes.d.ts +0 -30
  306. package/dist/cjs/tools/mongodb/search/listSearchIndexes.d.ts.map +0 -1
  307. package/dist/cjs/tools/mongodb/search/listSearchIndexes.js +0 -65
  308. package/dist/cjs/tools/mongodb/search/listSearchIndexes.js.map +0 -1
  309. package/dist/esm/tools/mongodb/search/listSearchIndexes.d.ts +0 -30
  310. package/dist/esm/tools/mongodb/search/listSearchIndexes.d.ts.map +0 -1
  311. package/dist/esm/tools/mongodb/search/listSearchIndexes.js +0 -61
  312. package/dist/esm/tools/mongodb/search/listSearchIndexes.js.map +0 -1
package/README.md CHANGED
@@ -293,9 +293,17 @@ npx -y mongodb-mcp-server@latest --transport http --httpHost=0.0.0.0 --httpPort=
293
293
  - `atlas-list-db-users` - List MongoDB Atlas database users
294
294
  - `atlas-create-db-user` - Creates a MongoDB Atlas database user
295
295
  - `atlas-list-alerts` - List MongoDB Atlas Alerts for a Project
296
+ - `atlas-get-performance-advisor` - Gets Atlas Performance Advisor recommendations (index suggestions, drop index suggestions, schema suggestions, slow query logs)
296
297
 
297
298
  NOTE: atlas tools are only available when you set credentials on [configuration](#configuration) section.
298
299
 
300
+ #### MongoDB Atlas Local Tools
301
+
302
+ - `atlas-local-list-deployments` - Lists MongoDB Atlas Local deployments
303
+ - `atlas-local-create-deployment` - Creates a MongoDB Atlas Local deployment
304
+ - `atlas-local-connect-deployment` - Connects to a MongoDB Atlas Local deployment
305
+ - `atlas-local-delete-deployment` - Deletes a MongoDB Atlas Local deployment
306
+
299
307
  #### MongoDB Database Tools
300
308
 
301
309
  - `connect` - Connect to a MongoDB instance
@@ -1,4 +1,4 @@
1
- import type { ClusterDescription20240805, FlexClusterDescription20241113 } from "./openapi.js";
1
+ import type { ClusterConnectionStrings, ClusterDescription20240805, FlexClusterDescription20241113 } from "./openapi.js";
2
2
  import type { ApiClient } from "./apiClient.js";
3
3
  export interface Cluster {
4
4
  name?: string;
@@ -6,11 +6,16 @@ export interface Cluster {
6
6
  instanceSize?: string;
7
7
  state?: "IDLE" | "CREATING" | "UPDATING" | "DELETING" | "REPAIRING";
8
8
  mongoDBVersion?: string;
9
- connectionString?: string;
9
+ connectionStrings?: ClusterConnectionStrings;
10
10
  processIds?: Array<string>;
11
11
  }
12
12
  export declare function formatFlexCluster(cluster: FlexClusterDescription20241113): Cluster;
13
13
  export declare function formatCluster(cluster: ClusterDescription20240805): Cluster;
14
14
  export declare function inspectCluster(apiClient: ApiClient, projectId: string, clusterName: string): Promise<Cluster>;
15
+ /**
16
+ * Returns a connection string for the specified connectionType.
17
+ * For "privateEndpoint", it returns the first private endpoint connection string available.
18
+ */
19
+ export declare function getConnectionString(connectionStrings: ClusterConnectionStrings, connectionType: "standard" | "private" | "privateEndpoint"): string | undefined;
15
20
  export declare function getProcessIdsFromCluster(apiClient: ApiClient, projectId: string, clusterName: string): Promise<Array<string>>;
16
21
  //# sourceMappingURL=cluster.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"cluster.d.ts","sourceRoot":"","sources":["../../../../src/common/atlas/cluster.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,0BAA0B,EAAE,8BAA8B,EAAE,MAAM,cAAc,CAAC;AAC/F,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAahD,MAAM,WAAW,OAAO;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,GAAG,WAAW,GAAG,MAAM,CAAC;IAC5C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,GAAG,UAAU,GAAG,UAAU,GAAG,UAAU,GAAG,WAAW,CAAC;IACpE,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,UAAU,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;CAC9B;AAED,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,8BAA8B,GAAG,OAAO,CAWlF;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,0BAA0B,GAAG,OAAO,CAyC1E;AAED,wBAAsB,cAAc,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAgCnH;AAED,wBAAsB,wBAAwB,CAC1C,SAAS,EAAE,SAAS,EACpB,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,GACpB,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CASxB"}
1
+ {"version":3,"file":"cluster.d.ts","sourceRoot":"","sources":["../../../../src/common/atlas/cluster.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,wBAAwB,EACxB,0BAA0B,EAC1B,8BAA8B,EACjC,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAahD,MAAM,WAAW,OAAO;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,GAAG,WAAW,GAAG,MAAM,CAAC;IAC5C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,GAAG,UAAU,GAAG,UAAU,GAAG,UAAU,GAAG,WAAW,CAAC;IACpE,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,iBAAiB,CAAC,EAAE,wBAAwB,CAAC;IAC7C,UAAU,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;CAC9B;AAED,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,8BAA8B,GAAG,OAAO,CAUlF;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,0BAA0B,GAAG,OAAO,CAwC1E;AAED,wBAAsB,cAAc,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAgCnH;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAC/B,iBAAiB,EAAE,wBAAwB,EAC3C,cAAc,EAAE,UAAU,GAAG,SAAS,GAAG,iBAAiB,GAC3D,MAAM,GAAG,SAAS,CAYpB;AAED,wBAAsB,wBAAwB,CAC1C,SAAS,EAAE,SAAS,EACpB,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,GACpB,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CASxB"}
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.formatFlexCluster = formatFlexCluster;
4
4
  exports.formatCluster = formatCluster;
5
5
  exports.inspectCluster = inspectCluster;
6
+ exports.getConnectionString = getConnectionString;
6
7
  exports.getProcessIdsFromCluster = getProcessIdsFromCluster;
7
8
  const logger_js_1 = require("../logger.js");
8
9
  const mongodb_connection_string_url_1 = require("mongodb-connection-string-url");
@@ -14,14 +15,13 @@ function extractProcessIds(connectionString) {
14
15
  return connectionStringUrl.hosts;
15
16
  }
16
17
  function formatFlexCluster(cluster) {
17
- const connectionString = cluster.connectionStrings?.standardSrv || cluster.connectionStrings?.standard;
18
18
  return {
19
19
  name: cluster.name,
20
20
  instanceType: "FLEX",
21
21
  instanceSize: undefined,
22
22
  state: cluster.stateName,
23
23
  mongoDBVersion: cluster.mongoDBVersion,
24
- connectionString,
24
+ connectionStrings: cluster.connectionStrings,
25
25
  processIds: extractProcessIds(cluster.connectionStrings?.standard ?? ""),
26
26
  };
27
27
  }
@@ -39,14 +39,13 @@ function formatCluster(cluster) {
39
39
  });
40
40
  const instanceSize = regionConfigs[0]?.instanceSize ?? "UNKNOWN";
41
41
  const clusterInstanceType = instanceSize === "M0" ? "FREE" : "DEDICATED";
42
- const connectionString = cluster.connectionStrings?.standardSrv || cluster.connectionStrings?.standard;
43
42
  return {
44
43
  name: cluster.name,
45
44
  instanceType: clusterInstanceType,
46
45
  instanceSize: clusterInstanceType === "DEDICATED" ? instanceSize : undefined,
47
46
  state: cluster.stateName,
48
47
  mongoDBVersion: cluster.mongoDBVersion,
49
- connectionString,
48
+ connectionStrings: cluster.connectionStrings,
50
49
  processIds: extractProcessIds(cluster.connectionStrings?.standard ?? ""),
51
50
  };
52
51
  }
@@ -85,6 +84,21 @@ async function inspectCluster(apiClient, projectId, clusterName) {
85
84
  }
86
85
  }
87
86
  }
87
+ /**
88
+ * Returns a connection string for the specified connectionType.
89
+ * For "privateEndpoint", it returns the first private endpoint connection string available.
90
+ */
91
+ function getConnectionString(connectionStrings, connectionType) {
92
+ switch (connectionType) {
93
+ case "standard":
94
+ return connectionStrings.standardSrv || connectionStrings.standard;
95
+ case "private":
96
+ return connectionStrings.privateSrv || connectionStrings.private;
97
+ case "privateEndpoint":
98
+ return (connectionStrings.privateEndpoint?.[0]?.srvConnectionString ||
99
+ connectionStrings.privateEndpoint?.[0]?.connectionString);
100
+ }
101
+ }
88
102
  async function getProcessIdsFromCluster(apiClient, projectId, clusterName) {
89
103
  try {
90
104
  const cluster = await inspectCluster(apiClient, projectId, clusterName);
@@ -1 +1 @@
1
- {"version":3,"file":"cluster.js","sourceRoot":"","sources":["../../../../src/common/atlas/cluster.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cluster.js","sourceRoot":"","sources":["../../../../src/common/atlas/cluster.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,8 @@ export type SuggestedIndex = components["schemas"]["PerformanceAdvisorIndex"];
4
4
  export type DropIndexSuggestion = components["schemas"]["DropIndexSuggestionsIndex"];
5
5
  export type SlowQueryLog = components["schemas"]["PerformanceAdvisorSlowQuery"];
6
6
  export declare const DEFAULT_SLOW_QUERY_LOGS_LIMIT = 50;
7
+ export declare const SUGGESTED_INDEXES_COPY = "Note: The \"Weight\" field is measured in bytes, and represents the estimated number of bytes saved in disk reads per executed read query that would be saved by implementing an index suggestion. Please convert this to MB or GB for easier readability.";
8
+ export declare const SLOW_QUERY_LOGS_COPY = "Please notify the user that the MCP server tool limits slow query logs to the most recent 50 slow query logs. This is a limitation of the MCP server tool only. More slow query logs and performance suggestions can be seen in the Atlas UI. Please give to the user the following docs about the performance advisor: https://www.mongodb.com/docs/atlas/performance-advisor/.";
7
9
  export type SchemaRecommendation = components["schemas"]["SchemaAdvisorItemRecommendation"];
8
10
  export declare function getSuggestedIndexes(apiClient: ApiClient, projectId: string, clusterName: string): Promise<{
9
11
  suggestedIndexes: Array<SuggestedIndex>;
@@ -1 +1 @@
1
- {"version":3,"file":"performanceAdvisorUtils.d.ts","sourceRoot":"","sources":["../../../../src/common/atlas/performanceAdvisorUtils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEhD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE/C,MAAM,MAAM,cAAc,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,yBAAyB,CAAC,CAAC;AAC9E,MAAM,MAAM,mBAAmB,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,2BAA2B,CAAC,CAAC;AACrF,MAAM,MAAM,YAAY,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,6BAA6B,CAAC,CAAC;AAEhF,eAAO,MAAM,6BAA6B,KAAK,CAAC;AAWhD,MAAM,MAAM,oBAAoB,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,iCAAiC,CAAC,CAAC;AAE5F,wBAAsB,mBAAmB,CACrC,SAAS,EAAE,SAAS,EACpB,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,GACpB,OAAO,CAAC;IAAE,gBAAgB,EAAE,KAAK,CAAC,cAAc,CAAC,CAAA;CAAE,CAAC,CAqBtD;AAED,wBAAsB,uBAAuB,CACzC,SAAS,EAAE,SAAS,EACpB,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,GACpB,OAAO,CAAC;IACP,aAAa,EAAE,KAAK,CAAC,mBAAmB,CAAC,CAAC;IAC1C,gBAAgB,EAAE,KAAK,CAAC,mBAAmB,CAAC,CAAC;IAC7C,aAAa,EAAE,KAAK,CAAC,mBAAmB,CAAC,CAAC;CAC7C,CAAC,CAuBD;AAED,wBAAsB,eAAe,CACjC,SAAS,EAAE,SAAS,EACpB,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,GACpB,OAAO,CAAC;IAAE,eAAe,EAAE,KAAK,CAAC,oBAAoB,CAAC,CAAA;CAAE,CAAC,CAmB3D;AAED,wBAAsB,cAAc,CAChC,SAAS,EAAE,SAAS,EACpB,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,EACnB,KAAK,CAAC,EAAE,IAAI,EACZ,UAAU,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,GAC3B,OAAO,CAAC;IAAE,aAAa,EAAE,KAAK,CAAC,YAAY,CAAC,CAAA;CAAE,CAAC,CAuCjD"}
1
+ {"version":3,"file":"performanceAdvisorUtils.d.ts","sourceRoot":"","sources":["../../../../src/common/atlas/performanceAdvisorUtils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEhD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE/C,MAAM,MAAM,cAAc,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,yBAAyB,CAAC,CAAC;AAC9E,MAAM,MAAM,mBAAmB,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,2BAA2B,CAAC,CAAC;AACrF,MAAM,MAAM,YAAY,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,6BAA6B,CAAC,CAAC;AAEhF,eAAO,MAAM,6BAA6B,KAAK,CAAC;AAEhD,eAAO,MAAM,sBAAsB,+PAA6P,CAAC;AACjS,eAAO,MAAM,oBAAoB,qXAAmZ,CAAC;AAWrb,MAAM,MAAM,oBAAoB,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,iCAAiC,CAAC,CAAC;AAE5F,wBAAsB,mBAAmB,CACrC,SAAS,EAAE,SAAS,EACpB,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,GACpB,OAAO,CAAC;IAAE,gBAAgB,EAAE,KAAK,CAAC,cAAc,CAAC,CAAA;CAAE,CAAC,CAqBtD;AAED,wBAAsB,uBAAuB,CACzC,SAAS,EAAE,SAAS,EACpB,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,GACpB,OAAO,CAAC;IACP,aAAa,EAAE,KAAK,CAAC,mBAAmB,CAAC,CAAC;IAC1C,gBAAgB,EAAE,KAAK,CAAC,mBAAmB,CAAC,CAAC;IAC7C,aAAa,EAAE,KAAK,CAAC,mBAAmB,CAAC,CAAC;CAC7C,CAAC,CAuBD;AAED,wBAAsB,eAAe,CACjC,SAAS,EAAE,SAAS,EACpB,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,GACpB,OAAO,CAAC;IAAE,eAAe,EAAE,KAAK,CAAC,oBAAoB,CAAC,CAAA;CAAE,CAAC,CAmB3D;AAED,wBAAsB,cAAc,CAChC,SAAS,EAAE,SAAS,EACpB,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,EACnB,KAAK,CAAC,EAAE,IAAI,EACZ,UAAU,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,GAC3B,OAAO,CAAC;IAAE,aAAa,EAAE,KAAK,CAAC,YAAY,CAAC,CAAA;CAAE,CAAC,CAuCjD"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DEFAULT_SLOW_QUERY_LOGS_LIMIT = void 0;
3
+ exports.SLOW_QUERY_LOGS_COPY = exports.SUGGESTED_INDEXES_COPY = exports.DEFAULT_SLOW_QUERY_LOGS_LIMIT = void 0;
4
4
  exports.getSuggestedIndexes = getSuggestedIndexes;
5
5
  exports.getDropIndexSuggestions = getDropIndexSuggestions;
6
6
  exports.getSchemaAdvice = getSchemaAdvice;
@@ -8,6 +8,8 @@ exports.getSlowQueries = getSlowQueries;
8
8
  const logger_js_1 = require("../logger.js");
9
9
  const cluster_js_1 = require("./cluster.js");
10
10
  exports.DEFAULT_SLOW_QUERY_LOGS_LIMIT = 50;
11
+ exports.SUGGESTED_INDEXES_COPY = `Note: The "Weight" field is measured in bytes, and represents the estimated number of bytes saved in disk reads per executed read query that would be saved by implementing an index suggestion. Please convert this to MB or GB for easier readability.`;
12
+ exports.SLOW_QUERY_LOGS_COPY = `Please notify the user that the MCP server tool limits slow query logs to the most recent ${exports.DEFAULT_SLOW_QUERY_LOGS_LIMIT} slow query logs. This is a limitation of the MCP server tool only. More slow query logs and performance suggestions can be seen in the Atlas UI. Please give to the user the following docs about the performance advisor: https://www.mongodb.com/docs/atlas/performance-advisor/.`;
11
13
  async function getSuggestedIndexes(apiClient, projectId, clusterName) {
12
14
  try {
13
15
  const response = await apiClient.listClusterSuggestedIndexes({
@@ -1 +1 @@
1
- {"version":3,"file":"performanceAdvisorUtils.js","sourceRoot":"","sources":["../../../../src/common/atlas/performanceAdvisorUtils.ts"],"names":[],"mappings":";;;AAsBA,kDAyBC;AAED,0DA+BC;AAED,0CAuBC;AAED,wCA6CC;AAxJD,4CAAqC;AAErC,6CAAwD;AAO3C,QAAA,6BAA6B,GAAG,EAAE,CAAC;AAazC,KAAK,UAAU,mBAAmB,CACrC,SAAoB,EACpB,SAAiB,EACjB,WAAmB;IAEnB,IAAI,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,2BAA2B,CAAC;YACzD,MAAM,EAAE;gBACJ,IAAI,EAAE;oBACF,OAAO,EAAE,SAAS;oBAClB,WAAW;iBACd;aACJ;SACJ,CAAC,CAAC;QACH,OAAO;YACH,gBAAgB,EAAG,QAAqC,CAAC,OAAO,CAAC,gBAAgB,IAAI,EAAE;SAC1F,CAAC;IACN,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACX,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC;YACnB,EAAE,EAAE,iBAAK,CAAC,8BAA8B;YACxC,OAAO,EAAE,yBAAyB;YAClC,OAAO,EAAE,qCAAqC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;SACnG,CAAC,CAAC;QACH,MAAM,IAAI,KAAK,CAAC,qCAAqC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC7G,CAAC;AACL,CAAC;AAEM,KAAK,UAAU,uBAAuB,CACzC,SAAoB,EACpB,SAAiB,EACjB,WAAmB;IAMnB,IAAI,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,eAAe,CAAC;YAC7C,MAAM,EAAE;gBACJ,IAAI,EAAE;oBACF,OAAO,EAAE,SAAS;oBAClB,WAAW;iBACd;aACJ;SACJ,CAAC,CAAC;QACH,OAAO;YACH,aAAa,EAAG,QAAgC,CAAC,OAAO,CAAC,aAAa,IAAI,EAAE;YAC5E,gBAAgB,EAAG,QAAgC,CAAC,OAAO,CAAC,gBAAgB,IAAI,EAAE;YAClF,aAAa,EAAG,QAAgC,CAAC,OAAO,CAAC,aAAa,IAAI,EAAE;SAC/E,CAAC;IACN,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACX,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC;YACnB,EAAE,EAAE,iBAAK,CAAC,kCAAkC;YAC5C,OAAO,EAAE,yBAAyB;YAClC,OAAO,EAAE,0CAA0C,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;SACxG,CAAC,CAAC;QACH,MAAM,IAAI,KAAK,CAAC,0CAA0C,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAClH,CAAC;AACL,CAAC;AAEM,KAAK,UAAU,eAAe,CACjC,SAAoB,EACpB,SAAiB,EACjB,WAAmB;IAEnB,IAAI,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,gBAAgB,CAAC;YAC9C,MAAM,EAAE;gBACJ,IAAI,EAAE;oBACF,OAAO,EAAE,SAAS;oBAClB,WAAW;iBACd;aACJ;SACJ,CAAC,CAAC;QACH,OAAO,EAAE,eAAe,EAAG,QAAiC,CAAC,OAAO,CAAC,eAAe,IAAI,EAAE,EAAE,CAAC;IACjG,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACX,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC;YACnB,EAAE,EAAE,iBAAK,CAAC,0BAA0B;YACpC,OAAO,EAAE,yBAAyB;YAClC,OAAO,EAAE,iCAAiC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;SAC/F,CAAC,CAAC;QACH,MAAM,IAAI,KAAK,CAAC,iCAAiC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACzG,CAAC;AACL,CAAC;AAEM,KAAK,UAAU,cAAc,CAChC,SAAoB,EACpB,SAAiB,EACjB,WAAmB,EACnB,KAAY,EACZ,UAA0B;IAE1B,IAAI,CAAC;QACD,MAAM,UAAU,GAAG,MAAM,IAAA,qCAAwB,EAAC,SAAS,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;QAErF,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1B,OAAO,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC;QACjC,CAAC;QAED,MAAM,iBAAiB,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CACnD,SAAS,CAAC,eAAe,CAAC;YACtB,MAAM,EAAE;gBACJ,IAAI,EAAE;oBACF,OAAO,EAAE,SAAS;oBAClB,SAAS;iBACZ;gBACD,KAAK,EAAE;oBACH,GAAG,CAAC,KAAK,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC;oBACxC,GAAG,CAAC,UAAU,IAAI,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC;oBAC7C,KAAK,EAAE,qCAA6B;iBACvC;aACJ;SACJ,CAAC,CACL,CAAC;QAEF,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC;QAE9D,MAAM,gBAAgB,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE;YACxD,OAAO,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACjG,CAAC,EAAE,EAAyB,CAAC,CAAC;QAE9B,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,CAAC;IAC/C,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACX,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC;YACnB,EAAE,EAAE,iBAAK,CAAC,2BAA2B;YACrC,OAAO,EAAE,yBAAyB;YAClC,OAAO,EAAE,mCAAmC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;SACjG,CAAC,CAAC;QACH,MAAM,IAAI,KAAK,CAAC,mCAAmC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC3G,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"performanceAdvisorUtils.js","sourceRoot":"","sources":["../../../../src/common/atlas/performanceAdvisorUtils.ts"],"names":[],"mappings":";;;AAyBA,kDAyBC;AAED,0DA+BC;AAED,0CAuBC;AAED,wCA6CC;AA3JD,4CAAqC;AAErC,6CAAwD;AAO3C,QAAA,6BAA6B,GAAG,EAAE,CAAC;AAEnC,QAAA,sBAAsB,GAAG,0PAA0P,CAAC;AACpR,QAAA,oBAAoB,GAAG,6FAA6F,qCAA6B,sRAAsR,CAAC;AAa9a,KAAK,UAAU,mBAAmB,CACrC,SAAoB,EACpB,SAAiB,EACjB,WAAmB;IAEnB,IAAI,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,2BAA2B,CAAC;YACzD,MAAM,EAAE;gBACJ,IAAI,EAAE;oBACF,OAAO,EAAE,SAAS;oBAClB,WAAW;iBACd;aACJ;SACJ,CAAC,CAAC;QACH,OAAO;YACH,gBAAgB,EAAG,QAAqC,CAAC,OAAO,CAAC,gBAAgB,IAAI,EAAE;SAC1F,CAAC;IACN,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACX,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC;YACnB,EAAE,EAAE,iBAAK,CAAC,8BAA8B;YACxC,OAAO,EAAE,yBAAyB;YAClC,OAAO,EAAE,qCAAqC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;SACnG,CAAC,CAAC;QACH,MAAM,IAAI,KAAK,CAAC,qCAAqC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC7G,CAAC;AACL,CAAC;AAEM,KAAK,UAAU,uBAAuB,CACzC,SAAoB,EACpB,SAAiB,EACjB,WAAmB;IAMnB,IAAI,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,eAAe,CAAC;YAC7C,MAAM,EAAE;gBACJ,IAAI,EAAE;oBACF,OAAO,EAAE,SAAS;oBAClB,WAAW;iBACd;aACJ;SACJ,CAAC,CAAC;QACH,OAAO;YACH,aAAa,EAAG,QAAgC,CAAC,OAAO,CAAC,aAAa,IAAI,EAAE;YAC5E,gBAAgB,EAAG,QAAgC,CAAC,OAAO,CAAC,gBAAgB,IAAI,EAAE;YAClF,aAAa,EAAG,QAAgC,CAAC,OAAO,CAAC,aAAa,IAAI,EAAE;SAC/E,CAAC;IACN,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACX,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC;YACnB,EAAE,EAAE,iBAAK,CAAC,kCAAkC;YAC5C,OAAO,EAAE,yBAAyB;YAClC,OAAO,EAAE,0CAA0C,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;SACxG,CAAC,CAAC;QACH,MAAM,IAAI,KAAK,CAAC,0CAA0C,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAClH,CAAC;AACL,CAAC;AAEM,KAAK,UAAU,eAAe,CACjC,SAAoB,EACpB,SAAiB,EACjB,WAAmB;IAEnB,IAAI,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,gBAAgB,CAAC;YAC9C,MAAM,EAAE;gBACJ,IAAI,EAAE;oBACF,OAAO,EAAE,SAAS;oBAClB,WAAW;iBACd;aACJ;SACJ,CAAC,CAAC;QACH,OAAO,EAAE,eAAe,EAAG,QAAiC,CAAC,OAAO,CAAC,eAAe,IAAI,EAAE,EAAE,CAAC;IACjG,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACX,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC;YACnB,EAAE,EAAE,iBAAK,CAAC,0BAA0B;YACpC,OAAO,EAAE,yBAAyB;YAClC,OAAO,EAAE,iCAAiC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;SAC/F,CAAC,CAAC;QACH,MAAM,IAAI,KAAK,CAAC,iCAAiC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACzG,CAAC;AACL,CAAC;AAEM,KAAK,UAAU,cAAc,CAChC,SAAoB,EACpB,SAAiB,EACjB,WAAmB,EACnB,KAAY,EACZ,UAA0B;IAE1B,IAAI,CAAC;QACD,MAAM,UAAU,GAAG,MAAM,IAAA,qCAAwB,EAAC,SAAS,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;QAErF,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1B,OAAO,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC;QACjC,CAAC;QAED,MAAM,iBAAiB,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CACnD,SAAS,CAAC,eAAe,CAAC;YACtB,MAAM,EAAE;gBACJ,IAAI,EAAE;oBACF,OAAO,EAAE,SAAS;oBAClB,SAAS;iBACZ;gBACD,KAAK,EAAE;oBACH,GAAG,CAAC,KAAK,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC;oBACxC,GAAG,CAAC,UAAU,IAAI,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC;oBAC7C,KAAK,EAAE,qCAA6B;iBACvC;aACJ;SACJ,CAAC,CACL,CAAC;QAEF,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC;QAE9D,MAAM,gBAAgB,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE;YACxD,OAAO,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACjG,CAAC,EAAE,EAAyB,CAAC,CAAC;QAE9B,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,CAAC;IAC/C,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACX,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC;YACnB,EAAE,EAAE,iBAAK,CAAC,2BAA2B;YACrC,OAAO,EAAE,yBAAyB;YAClC,OAAO,EAAE,mCAAmC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;SACjG,CAAC,CAAC;QACH,MAAM,IAAI,KAAK,CAAC,mCAAmC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC3G,CAAC;AACL,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { Client } from "@mongodb-js/atlas-local";
2
+ export type AtlasLocalClientFactoryFn = () => Promise<Client | undefined>;
3
+ export declare const defaultCreateAtlasLocalClient: AtlasLocalClientFactoryFn;
4
+ //# sourceMappingURL=atlasLocal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"atlasLocal.d.ts","sourceRoot":"","sources":["../../../src/common/atlasLocal.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAEtD,MAAM,MAAM,yBAAyB,GAAG,MAAM,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;AAE1E,eAAO,MAAM,6BAA6B,EAAE,yBA0B3C,CAAC"}
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.defaultCreateAtlasLocalClient = void 0;
37
+ const defaultCreateAtlasLocalClient = async () => {
38
+ try {
39
+ // Import Atlas Local client asyncronously
40
+ // This will fail on unsupported platforms
41
+ const { Client: AtlasLocalClient } = await Promise.resolve().then(() => __importStar(require("@mongodb-js/atlas-local")));
42
+ try {
43
+ // Connect to Atlas Local client
44
+ // This will fail if docker is not running
45
+ return AtlasLocalClient.connect();
46
+ }
47
+ catch (dockerError) {
48
+ console.warn("Failed to connect to Atlas Local client (Docker not available or not running), atlas-local tools will be disabled (error: ", dockerError, ")");
49
+ }
50
+ }
51
+ catch (importError) {
52
+ console.warn("Failed to import Atlas Local client (platform not supported), atlas-local tools will be disabled (error: ", importError, ")");
53
+ }
54
+ return undefined;
55
+ };
56
+ exports.defaultCreateAtlasLocalClient = defaultCreateAtlasLocalClient;
57
+ //# sourceMappingURL=atlasLocal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"atlasLocal.js","sourceRoot":"","sources":["../../../src/common/atlasLocal.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIO,MAAM,6BAA6B,GAA8B,KAAK,IAAI,EAAE;IAC/E,IAAI,CAAC;QACD,0CAA0C;QAC1C,0CAA0C;QAC1C,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAE,GAAG,wDAAa,yBAAyB,GAAC,CAAC;QAE7E,IAAI,CAAC;YACD,gCAAgC;YAChC,0CAA0C;YAC1C,OAAO,gBAAgB,CAAC,OAAO,EAAE,CAAC;QACtC,CAAC;QAAC,OAAO,WAAW,EAAE,CAAC;YACnB,OAAO,CAAC,IAAI,CACR,4HAA4H,EAC5H,WAAW,EACX,GAAG,CACN,CAAC;QACN,CAAC;IACL,CAAC;IAAC,OAAO,WAAW,EAAE,CAAC;QACnB,OAAO,CAAC,IAAI,CACR,2GAA2G,EAC3G,WAAW,EACX,GAAG,CACN,CAAC;IACN,CAAC;IAED,OAAO,SAAS,CAAC;AACrB,CAAC,CAAC;AA1BW,QAAA,6BAA6B,iCA0BxC"}
@@ -1,35 +1,105 @@
1
1
  import type { CliOptions, ConnectionInfo } from "@mongosh/arg-parser";
2
+ import { z } from "zod";
3
+ export declare const OPTIONS: Readonly<Options>;
4
+ interface Options {
5
+ string: string[];
6
+ number: string[];
7
+ boolean: string[];
8
+ array: string[];
9
+ alias: Record<string, string>;
10
+ configuration: Record<string, boolean>;
11
+ }
2
12
  export declare const ALL_CONFIG_KEYS: Set<string>;
3
13
  export declare function validateConfigKey(key: string): {
4
14
  valid: boolean;
5
15
  suggestion?: string;
6
16
  };
7
- export interface UserConfig extends CliOptions {
17
+ export declare const UserConfigSchema: z.ZodObject<{
18
+ apiBaseUrl: z.ZodDefault<z.ZodString>;
19
+ apiClientId: z.ZodOptional<z.ZodString>;
20
+ apiClientSecret: z.ZodOptional<z.ZodString>;
21
+ connectionString: z.ZodOptional<z.ZodString>;
22
+ loggers: z.ZodDefault<z.ZodArray<z.ZodEnum<["stderr", "disk", "mcp"]>, "many">>;
23
+ logPath: z.ZodString;
24
+ disabledTools: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
25
+ confirmationRequiredTools: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
26
+ readOnly: z.ZodDefault<z.ZodBoolean>;
27
+ indexCheck: z.ZodDefault<z.ZodBoolean>;
28
+ telemetry: z.ZodDefault<z.ZodEnum<["enabled", "disabled"]>>;
29
+ transport: z.ZodDefault<z.ZodEnum<["stdio", "http"]>>;
30
+ httpPort: z.ZodDefault<z.ZodNumber>;
31
+ httpHost: z.ZodDefault<z.ZodString>;
32
+ httpHeaders: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
33
+ idleTimeoutMs: z.ZodDefault<z.ZodNumber>;
34
+ notificationTimeoutMs: z.ZodDefault<z.ZodNumber>;
35
+ maxBytesPerQuery: z.ZodDefault<z.ZodNumber>;
36
+ maxDocumentsPerQuery: z.ZodDefault<z.ZodNumber>;
37
+ exportsPath: z.ZodString;
38
+ exportTimeoutMs: z.ZodDefault<z.ZodNumber>;
39
+ exportCleanupIntervalMs: z.ZodDefault<z.ZodNumber>;
40
+ atlasTemporaryDatabaseUserLifetimeMs: z.ZodDefault<z.ZodNumber>;
41
+ voyageApiKey: z.ZodDefault<z.ZodString>;
42
+ disableEmbeddingsValidation: z.ZodOptional<z.ZodBoolean>;
43
+ vectorSearchDimensions: z.ZodDefault<z.ZodNumber>;
44
+ vectorSearchSimilarityFunction: z.ZodDefault<z.ZodOptional<z.ZodType<"cosine" | "euclidean" | "dotProduct", z.ZodTypeDef, "cosine" | "euclidean" | "dotProduct">>>;
45
+ }, "strip", z.ZodTypeAny, {
8
46
  apiBaseUrl: string;
9
- apiClientId?: string;
10
- apiClientSecret?: string;
11
- telemetry: "enabled" | "disabled";
47
+ loggers: ("disk" | "mcp" | "stderr")[];
12
48
  logPath: string;
13
- exportsPath: string;
14
- exportTimeoutMs: number;
15
- exportCleanupIntervalMs: number;
16
- connectionString?: string;
17
- disabledTools: Array<string>;
18
- confirmationRequiredTools: Array<string>;
19
- readOnly?: boolean;
20
- indexCheck?: boolean;
49
+ disabledTools: string[];
50
+ confirmationRequiredTools: string[];
51
+ readOnly: boolean;
52
+ indexCheck: boolean;
53
+ telemetry: "enabled" | "disabled";
21
54
  transport: "stdio" | "http";
22
55
  httpPort: number;
23
56
  httpHost: string;
24
57
  httpHeaders: Record<string, string>;
25
- loggers: Array<"stderr" | "disk" | "mcp">;
26
58
  idleTimeoutMs: number;
27
59
  notificationTimeoutMs: number;
28
- maxDocumentsPerQuery: number;
29
60
  maxBytesPerQuery: number;
61
+ maxDocumentsPerQuery: number;
62
+ exportsPath: string;
63
+ exportTimeoutMs: number;
64
+ exportCleanupIntervalMs: number;
30
65
  atlasTemporaryDatabaseUserLifetimeMs: number;
31
66
  voyageApiKey: string;
32
- }
67
+ vectorSearchDimensions: number;
68
+ vectorSearchSimilarityFunction: "cosine" | "euclidean" | "dotProduct";
69
+ apiClientId?: string | undefined;
70
+ apiClientSecret?: string | undefined;
71
+ connectionString?: string | undefined;
72
+ disableEmbeddingsValidation?: boolean | undefined;
73
+ }, {
74
+ logPath: string;
75
+ exportsPath: string;
76
+ apiBaseUrl?: string | undefined;
77
+ apiClientId?: string | undefined;
78
+ apiClientSecret?: string | undefined;
79
+ connectionString?: string | undefined;
80
+ loggers?: ("disk" | "mcp" | "stderr")[] | undefined;
81
+ disabledTools?: string[] | undefined;
82
+ confirmationRequiredTools?: string[] | undefined;
83
+ readOnly?: boolean | undefined;
84
+ indexCheck?: boolean | undefined;
85
+ telemetry?: "enabled" | "disabled" | undefined;
86
+ transport?: "stdio" | "http" | undefined;
87
+ httpPort?: number | undefined;
88
+ httpHost?: string | undefined;
89
+ httpHeaders?: Record<string, string> | undefined;
90
+ idleTimeoutMs?: number | undefined;
91
+ notificationTimeoutMs?: number | undefined;
92
+ maxBytesPerQuery?: number | undefined;
93
+ maxDocumentsPerQuery?: number | undefined;
94
+ exportTimeoutMs?: number | undefined;
95
+ exportCleanupIntervalMs?: number | undefined;
96
+ atlasTemporaryDatabaseUserLifetimeMs?: number | undefined;
97
+ voyageApiKey?: string | undefined;
98
+ disableEmbeddingsValidation?: boolean | undefined;
99
+ vectorSearchDimensions?: number | undefined;
100
+ vectorSearchSimilarityFunction?: "cosine" | "euclidean" | "dotProduct" | undefined;
101
+ }>;
102
+ export type UserConfig = z.infer<typeof UserConfigSchema> & CliOptions;
33
103
  export declare const defaultUserConfig: UserConfig;
34
104
  export declare const config: UserConfig;
35
105
  export type DriverOptions = ConnectionInfo["driverOptions"];
@@ -48,4 +118,5 @@ export declare function setupDriverConfig({ config, defaults, }: {
48
118
  config: UserConfig;
49
119
  defaults: Partial<DriverOptions>;
50
120
  }): DriverOptions;
121
+ export {};
51
122
  //# sourceMappingURL=config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/common/config.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AA0GtE,eAAO,MAAM,eAAe,aAM3B,CAAC;AAEF,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,CA6BtF;AAaD,MAAM,WAAW,UAAW,SAAQ,UAAU;IAC1C,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE,SAAS,GAAG,UAAU,CAAC;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,uBAAuB,EAAE,MAAM,CAAC;IAChC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B,aAAa,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAC7B,yBAAyB,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACzC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,EAAE,OAAO,GAAG,MAAM,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpC,OAAO,EAAE,KAAK,CAAC,QAAQ,GAAG,MAAM,GAAG,KAAK,CAAC,CAAC;IAC1C,aAAa,EAAE,MAAM,CAAC;IACtB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,gBAAgB,EAAE,MAAM,CAAC;IACzB,oCAAoC,EAAE,MAAM,CAAC;IAC7C,YAAY,EAAE,MAAM,CAAC;CACxB;AAED,eAAO,MAAM,iBAAiB,EAAE,UA4B/B,CAAC;AAEF,eAAO,MAAM,MAAM,YAIjB,CAAC;AAQH,MAAM,MAAM,aAAa,GAAG,cAAc,CAAC,eAAe,CAAC,CAAC;AAC5D,eAAO,MAAM,oBAAoB,EAAE,aAWlC,CAAC;AAkHF,wBAAgB,mCAAmC,CAC/C,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;IAAE,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAAC,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,GAAG,KAAK,CAAA;CAAE,GACxF,IAAI,CAsCN;AAyBD,wBAAgB,kCAAkC,CAAC,UAAU,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,IAAI,CAqBxF;AAED,wBAAgB,eAAe,CAAC,EAC5B,GAAG,EACH,GAAG,EACH,QAAQ,GACX,EAAE;IACC,GAAG,EAAE,MAAM,EAAE,CAAC;IACd,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC7B,QAAQ,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;CACjC,GAAG,UAAU,CAgDb;AAED,wBAAgB,iBAAiB,CAAC,EAC9B,MAAM,EACN,QAAQ,GACX,EAAE;IACC,MAAM,EAAE,UAAU,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;CACpC,GAAG,aAAa,CAMhB"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/common/config.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAMtE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,OAAO,EAyFf,QAAQ,CAAC,OAAO,CAAC,CAAC;AAEvB,UAAU,OAAO;IACb,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC1C;AAED,eAAO,MAAM,eAAe,aAM3B,CAAC;AAEF,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,CA6BtF;AAWD,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA2H3B,CAAC;AAEH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,GAAG,UAAU,CAAC;AAEvE,eAAO,MAAM,iBAAiB,EAAE,UAgC/B,CAAC;AAEF,eAAO,MAAM,MAAM,YAIjB,CAAC;AAQH,MAAM,MAAM,aAAa,GAAG,cAAc,CAAC,eAAe,CAAC,CAAC;AAC5D,eAAO,MAAM,oBAAoB,EAAE,aAWlC,CAAC;AAkHF,wBAAgB,mCAAmC,CAC/C,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;IAAE,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAAC,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,GAAG,KAAK,CAAA;CAAE,GACxF,IAAI,CAsCN;AAyBD,wBAAgB,kCAAkC,CAAC,UAAU,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,IAAI,CAqBxF;AAED,wBAAgB,eAAe,CAAC,EAC5B,GAAG,EACH,GAAG,EACH,QAAQ,GACX,EAAE;IACC,GAAG,EAAE,MAAM,EAAE,CAAC;IACd,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC7B,QAAQ,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;CACjC,GAAG,UAAU,CAgDb;AAED,wBAAgB,iBAAiB,CAAC,EAC9B,MAAM,EACN,QAAQ,GACX,EAAE;IACC,MAAM,EAAE,UAAU,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;CACpC,GAAG,aAAa,CAMhB"}
@@ -1,9 +1,42 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
2
35
  var __importDefault = (this && this.__importDefault) || function (mod) {
3
36
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
37
  };
5
38
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.defaultDriverOptions = exports.config = exports.defaultUserConfig = exports.ALL_CONFIG_KEYS = void 0;
39
+ exports.defaultDriverOptions = exports.config = exports.defaultUserConfig = exports.UserConfigSchema = exports.ALL_CONFIG_KEYS = exports.OPTIONS = void 0;
7
40
  exports.validateConfigKey = validateConfigKey;
8
41
  exports.warnAboutDeprecatedOrUnknownCliArgs = warnAboutDeprecatedOrUnknownCliArgs;
9
42
  exports.registerKnownSecretsInRootKeychain = registerKnownSecretsInRootKeychain;
@@ -14,9 +47,11 @@ const os_1 = __importDefault(require("os"));
14
47
  const yargs_parser_1 = __importDefault(require("yargs-parser"));
15
48
  const arg_parser_1 = require("@mongosh/arg-parser");
16
49
  const keychain_js_1 = require("./keychain.js");
17
- const ts_levenshtein_1 = __importDefault(require("ts-levenshtein"));
50
+ const levenshteinModule = __importStar(require("ts-levenshtein"));
51
+ const zod_1 = require("zod");
52
+ const levenshtein = levenshteinModule.default;
18
53
  // From: https://github.com/mongodb-js/mongosh/blob/main/packages/cli-repl/src/arg-parser.ts
19
- const OPTIONS = {
54
+ exports.OPTIONS = {
20
55
  number: ["maxDocumentsPerQuery", "maxBytesPerQuery"],
21
56
  string: [
22
57
  "apiBaseUrl",
@@ -66,6 +101,7 @@ const OPTIONS = {
66
101
  boolean: [
67
102
  "apiDeprecationErrors",
68
103
  "apiStrict",
104
+ "disableEmbeddingsValidation",
69
105
  "help",
70
106
  "indexCheck",
71
107
  "ipv6",
@@ -105,11 +141,11 @@ const OPTIONS = {
105
141
  "short-option-groups": false,
106
142
  },
107
143
  };
108
- exports.ALL_CONFIG_KEYS = new Set(OPTIONS.string
109
- .concat(OPTIONS.number)
110
- .concat(OPTIONS.array)
111
- .concat(OPTIONS.boolean)
112
- .concat(Object.keys(OPTIONS.alias)));
144
+ exports.ALL_CONFIG_KEYS = new Set(exports.OPTIONS.string
145
+ .concat(exports.OPTIONS.number)
146
+ .concat(exports.OPTIONS.array)
147
+ .concat(exports.OPTIONS.boolean)
148
+ .concat(Object.keys(exports.OPTIONS.alias)));
113
149
  function validateConfigKey(key) {
114
150
  if (exports.ALL_CONFIG_KEYS.has(key)) {
115
151
  return { valid: true };
@@ -123,7 +159,7 @@ function validateConfigKey(key) {
123
159
  return { valid: false, suggestion: validKey };
124
160
  }
125
161
  // else, infer something using levenshtein so we suggest a valid key
126
- const lev = ts_levenshtein_1.default.get(key, validKey);
162
+ const lev = levenshtein.get(key, validKey);
127
163
  if (lev < minLev) {
128
164
  minLev = lev;
129
165
  suggestion = validKey;
@@ -141,6 +177,112 @@ function isConnectionSpecifier(arg) {
141
177
  arg.startsWith("mongodb+srv://") ||
142
178
  !(arg.endsWith(".js") || arg.endsWith(".mongodb"))));
143
179
  }
180
+ exports.UserConfigSchema = zod_1.z.object({
181
+ apiBaseUrl: zod_1.z.string().default("https://cloud.mongodb.com/"),
182
+ apiClientId: zod_1.z
183
+ .string()
184
+ .optional()
185
+ .describe("Atlas API client ID for authentication. Required for running Atlas tools."),
186
+ apiClientSecret: zod_1.z
187
+ .string()
188
+ .optional()
189
+ .describe("Atlas API client secret for authentication. Required for running Atlas tools."),
190
+ connectionString: zod_1.z
191
+ .string()
192
+ .optional()
193
+ .describe("MongoDB connection string for direct database connections. Optional, if not set, you'll need to call the connect tool before interacting with MongoDB data."),
194
+ loggers: zod_1.z
195
+ .array(zod_1.z.enum(["stderr", "disk", "mcp"]))
196
+ .default(["disk", "mcp"])
197
+ .describe("Comma separated values, possible values are 'mcp', 'disk' and 'stderr'."),
198
+ logPath: zod_1.z.string().describe("Folder to store logs."),
199
+ disabledTools: zod_1.z
200
+ .array(zod_1.z.string())
201
+ .default([])
202
+ .describe("An array of tool names, operation types, and/or categories of tools that will be disabled."),
203
+ confirmationRequiredTools: zod_1.z
204
+ .array(zod_1.z.string())
205
+ .default([
206
+ "atlas-create-access-list",
207
+ "atlas-create-db-user",
208
+ "drop-database",
209
+ "drop-collection",
210
+ "delete-many",
211
+ "drop-index",
212
+ ])
213
+ .describe("An array of tool names that require user confirmation before execution. Requires the client to support elicitation."),
214
+ readOnly: zod_1.z
215
+ .boolean()
216
+ .default(false)
217
+ .describe("When set to true, only allows read, connect, and metadata operation types, disabling create/update/delete operations."),
218
+ indexCheck: zod_1.z
219
+ .boolean()
220
+ .default(false)
221
+ .describe("When set to true, enforces that query operations must use an index, rejecting queries that perform a collection scan."),
222
+ telemetry: zod_1.z
223
+ .enum(["enabled", "disabled"])
224
+ .default("enabled")
225
+ .describe("When set to disabled, disables telemetry collection."),
226
+ transport: zod_1.z.enum(["stdio", "http"]).default("stdio").describe("Either 'stdio' or 'http'."),
227
+ httpPort: zod_1.z
228
+ .number()
229
+ .default(3000)
230
+ .describe("Port number for the HTTP server (only used when transport is 'http')."),
231
+ httpHost: zod_1.z
232
+ .string()
233
+ .default("127.0.0.1")
234
+ .describe("Host address to bind the HTTP server to (only used when transport is 'http')."),
235
+ httpHeaders: zod_1.z
236
+ .record(zod_1.z.string())
237
+ .default({})
238
+ .describe("Header that the HTTP server will validate when making requests (only used when transport is 'http')."),
239
+ idleTimeoutMs: zod_1.z
240
+ .number()
241
+ .default(600000)
242
+ .describe("Idle timeout for a client to disconnect (only applies to http transport)."),
243
+ notificationTimeoutMs: zod_1.z
244
+ .number()
245
+ .default(540000)
246
+ .describe("Notification timeout for a client to be aware of disconnect (only applies to http transport)."),
247
+ maxBytesPerQuery: zod_1.z
248
+ .number()
249
+ .default(16777216)
250
+ .describe("The maximum size in bytes for results from a find or aggregate tool call. This serves as an upper bound for the responseBytesLimit parameter in those tools."),
251
+ maxDocumentsPerQuery: zod_1.z
252
+ .number()
253
+ .default(100)
254
+ .describe("The maximum number of documents that can be returned by a find or aggregate tool call. For the find tool, the effective limit will be the smaller of this value and the tool's limit parameter."),
255
+ exportsPath: zod_1.z.string().describe("Folder to store exported data files."),
256
+ exportTimeoutMs: zod_1.z
257
+ .number()
258
+ .default(300000)
259
+ .describe("Time in milliseconds after which an export is considered expired and eligible for cleanup."),
260
+ exportCleanupIntervalMs: zod_1.z
261
+ .number()
262
+ .default(120000)
263
+ .describe("Time in milliseconds between export cleanup cycles that remove expired export files."),
264
+ atlasTemporaryDatabaseUserLifetimeMs: zod_1.z
265
+ .number()
266
+ .default(14400000)
267
+ .describe("Time in milliseconds that temporary database users created when connecting to MongoDB Atlas clusters will remain active before being automatically deleted."),
268
+ voyageApiKey: zod_1.z
269
+ .string()
270
+ .default("")
271
+ .describe("API key for Voyage AI embeddings service (required for vector search operations with text-to-embedding conversion)."),
272
+ disableEmbeddingsValidation: zod_1.z
273
+ .boolean()
274
+ .optional()
275
+ .describe("When set to true, disables validation of embeddings dimensions."),
276
+ vectorSearchDimensions: zod_1.z
277
+ .number()
278
+ .default(1024)
279
+ .describe("Default number of dimensions for vector search embeddings."),
280
+ vectorSearchSimilarityFunction: zod_1.z
281
+ .custom()
282
+ .optional()
283
+ .default("euclidean")
284
+ .describe("Default similarity function for vector search: 'euclidean', 'cosine', or 'dotProduct'."),
285
+ });
144
286
  exports.defaultUserConfig = {
145
287
  apiBaseUrl: "https://cloud.mongodb.com/",
146
288
  logPath: getLogPath(),
@@ -157,6 +299,7 @@ exports.defaultUserConfig = {
157
299
  "drop-database",
158
300
  "drop-collection",
159
301
  "delete-many",
302
+ "drop-index",
160
303
  ],
161
304
  transport: "stdio",
162
305
  httpPort: 3000,
@@ -169,6 +312,9 @@ exports.defaultUserConfig = {
169
312
  maxBytesPerQuery: 16 * 1024 * 1024, // By default, we only return ~16 mb of data per query / aggregation
170
313
  atlasTemporaryDatabaseUserLifetimeMs: 4 * 60 * 60 * 1000, // 4 hours
171
314
  voyageApiKey: "",
315
+ disableEmbeddingsValidation: false,
316
+ vectorSearchDimensions: 1024,
317
+ vectorSearchSimilarityFunction: "euclidean",
172
318
  };
173
319
  exports.config = setupUserConfig({
174
320
  defaults: exports.defaultUserConfig,
@@ -258,7 +404,7 @@ function SNAKE_CASE_toCamelCase(str) {
258
404
  // whatever is in mongosh.
259
405
  function parseCliConfig(args) {
260
406
  const programArgs = args.slice(2);
261
- const parsed = (0, yargs_parser_1.default)(programArgs, OPTIONS);
407
+ const parsed = (0, yargs_parser_1.default)(programArgs, exports.OPTIONS);
262
408
  const positionalArguments = parsed._ ?? [];
263
409
  // we use console.warn here because we still don't have our logging system configured
264
410
  // so we don't have a logger. For stdio, the warning will be received as a string in