mongodb-mcp-server 1.14.0-prerelease.3 → 1.15.0-alpha.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 (448) hide show
  1. package/README.md +46 -42
  2. package/dist/cjs/common/config/userConfig.d.ts +6 -0
  3. package/dist/cjs/common/config/userConfig.d.ts.map +1 -1
  4. package/dist/cjs/common/config/userConfig.js +19 -0
  5. package/dist/cjs/common/config/userConfig.js.map +1 -1
  6. package/dist/cjs/common/connectionErrorHandler.d.ts +8 -2
  7. package/dist/cjs/common/connectionErrorHandler.d.ts.map +1 -1
  8. package/dist/cjs/common/connectionErrorHandler.js +26 -4
  9. package/dist/cjs/common/connectionErrorHandler.js.map +1 -1
  10. package/dist/cjs/common/connectionRegistry.d.ts +196 -0
  11. package/dist/cjs/common/connectionRegistry.d.ts.map +1 -0
  12. package/dist/cjs/common/connectionRegistry.js +325 -0
  13. package/dist/cjs/common/connectionRegistry.js.map +1 -0
  14. package/dist/cjs/common/connectionSummary.d.ts +13 -0
  15. package/dist/cjs/common/connectionSummary.d.ts.map +1 -0
  16. package/dist/cjs/common/connectionSummary.js +29 -0
  17. package/dist/cjs/common/connectionSummary.js.map +1 -0
  18. package/dist/cjs/common/errors.d.ts +2 -1
  19. package/dist/cjs/common/errors.d.ts.map +1 -1
  20. package/dist/cjs/common/errors.js +1 -0
  21. package/dist/cjs/common/errors.js.map +1 -1
  22. package/dist/cjs/common/logging/loggingDefinitions.d.ts +4 -0
  23. package/dist/cjs/common/logging/loggingDefinitions.d.ts.map +1 -1
  24. package/dist/cjs/common/logging/loggingDefinitions.js +4 -0
  25. package/dist/cjs/common/logging/loggingDefinitions.js.map +1 -1
  26. package/dist/cjs/common/packageInfo.js +1 -1
  27. package/dist/cjs/common/packageInfo.js.map +1 -1
  28. package/dist/cjs/common/session.d.ts +21 -22
  29. package/dist/cjs/common/session.d.ts.map +1 -1
  30. package/dist/cjs/common/session.js +16 -76
  31. package/dist/cjs/common/session.js.map +1 -1
  32. package/dist/cjs/common/sessionStore.d.ts +12 -0
  33. package/dist/cjs/common/sessionStore.d.ts.map +1 -1
  34. package/dist/cjs/common/sessionStore.js +26 -1
  35. package/dist/cjs/common/sessionStore.js.map +1 -1
  36. package/dist/cjs/lib.d.ts +3 -2
  37. package/dist/cjs/lib.d.ts.map +1 -1
  38. package/dist/cjs/lib.js +9 -2
  39. package/dist/cjs/lib.js.map +1 -1
  40. package/dist/cjs/resources/common/config.js +2 -2
  41. package/dist/cjs/resources/common/config.js.map +1 -1
  42. package/dist/cjs/resources/common/debug.d.ts +2 -11
  43. package/dist/cjs/resources/common/debug.d.ts.map +1 -1
  44. package/dist/cjs/resources/common/debug.js +32 -43
  45. package/dist/cjs/resources/common/debug.js.map +1 -1
  46. package/dist/cjs/server.d.ts +0 -1
  47. package/dist/cjs/server.d.ts.map +1 -1
  48. package/dist/cjs/server.js +0 -22
  49. package/dist/cjs/server.js.map +1 -1
  50. package/dist/cjs/telemetry/types.d.ts +1 -0
  51. package/dist/cjs/telemetry/types.d.ts.map +1 -1
  52. package/dist/cjs/tools/atlas/atlasTool.d.ts +1 -1
  53. package/dist/cjs/tools/atlas/atlasTool.d.ts.map +1 -1
  54. package/dist/cjs/tools/atlas/connect/connectCluster.d.ts +4 -2
  55. package/dist/cjs/tools/atlas/connect/connectCluster.d.ts.map +1 -1
  56. package/dist/cjs/tools/atlas/connect/connectCluster.js +101 -133
  57. package/dist/cjs/tools/atlas/connect/connectCluster.js.map +1 -1
  58. package/dist/cjs/tools/atlas/create/createCluster.d.ts +1 -1
  59. package/dist/cjs/tools/atlas/create/createCluster.d.ts.map +1 -1
  60. package/dist/cjs/tools/atlas/create/createCluster.js +2 -2
  61. package/dist/cjs/tools/atlas/create/createCluster.js.map +1 -1
  62. package/dist/cjs/tools/atlas/read/getPerformanceAdvisor.d.ts +1 -1
  63. package/dist/cjs/tools/atlas/read/getPerformanceAdvisor.d.ts.map +1 -1
  64. package/dist/cjs/tools/atlas/read/getPerformanceAdvisor.js +2 -2
  65. package/dist/cjs/tools/atlas/read/getPerformanceAdvisor.js.map +1 -1
  66. package/dist/cjs/tools/atlas/streams/build.d.ts +2 -2
  67. package/dist/cjs/tools/atlas/streams/streamsToolBase.d.ts +1 -1
  68. package/dist/cjs/tools/atlas/streams/streamsToolBase.d.ts.map +1 -1
  69. package/dist/cjs/tools/atlas/streams/streamsToolBase.js +2 -2
  70. package/dist/cjs/tools/atlas/streams/streamsToolBase.js.map +1 -1
  71. package/dist/cjs/tools/atlas/streams/teardown.d.ts +3 -3
  72. package/dist/cjs/tools/atlas/update/pauseResumeCluster.d.ts +1 -1
  73. package/dist/cjs/tools/atlas/update/pauseResumeCluster.d.ts.map +1 -1
  74. package/dist/cjs/tools/atlas/update/pauseResumeCluster.js +12 -7
  75. package/dist/cjs/tools/atlas/update/pauseResumeCluster.js.map +1 -1
  76. package/dist/cjs/tools/atlas/update/upgradeCluster.d.ts +3 -3
  77. package/dist/cjs/tools/atlas/update/upgradeCluster.d.ts.map +1 -1
  78. package/dist/cjs/tools/atlas/update/upgradeCluster.js +6 -14
  79. package/dist/cjs/tools/atlas/update/upgradeCluster.js.map +1 -1
  80. package/dist/cjs/tools/atlasLocal/atlasLocalTool.d.ts +1 -1
  81. package/dist/cjs/tools/atlasLocal/atlasLocalTool.d.ts.map +1 -1
  82. package/dist/cjs/tools/atlasLocal/connect/connectDeployment.d.ts +3 -1
  83. package/dist/cjs/tools/atlasLocal/connect/connectDeployment.d.ts.map +1 -1
  84. package/dist/cjs/tools/atlasLocal/connect/connectDeployment.js +16 -5
  85. package/dist/cjs/tools/atlasLocal/connect/connectDeployment.js.map +1 -1
  86. package/dist/cjs/tools/mongodb/connect/connect.d.ts +9 -6
  87. package/dist/cjs/tools/mongodb/connect/connect.d.ts.map +1 -1
  88. package/dist/cjs/tools/mongodb/connect/connect.js +31 -26
  89. package/dist/cjs/tools/mongodb/connect/connect.js.map +1 -1
  90. package/dist/cjs/tools/mongodb/connect/disconnect.d.ts +19 -0
  91. package/dist/cjs/tools/mongodb/connect/disconnect.d.ts.map +1 -0
  92. package/dist/cjs/tools/mongodb/connect/disconnect.js +46 -0
  93. package/dist/cjs/tools/mongodb/connect/disconnect.js.map +1 -0
  94. package/dist/cjs/tools/mongodb/connect/listConnections.d.ts +32 -0
  95. package/dist/cjs/tools/mongodb/connect/listConnections.d.ts.map +1 -0
  96. package/dist/cjs/tools/mongodb/connect/listConnections.js +60 -0
  97. package/dist/cjs/tools/mongodb/connect/listConnections.js.map +1 -0
  98. package/dist/cjs/tools/mongodb/create/createCollection.d.ts +2 -1
  99. package/dist/cjs/tools/mongodb/create/createCollection.d.ts.map +1 -1
  100. package/dist/cjs/tools/mongodb/create/createCollection.js +4 -3
  101. package/dist/cjs/tools/mongodb/create/createCollection.js.map +1 -1
  102. package/dist/cjs/tools/mongodb/create/createIndex.d.ts +3 -2
  103. package/dist/cjs/tools/mongodb/create/createIndex.d.ts.map +1 -1
  104. package/dist/cjs/tools/mongodb/create/createIndex.js +8 -6
  105. package/dist/cjs/tools/mongodb/create/createIndex.js.map +1 -1
  106. package/dist/cjs/tools/mongodb/create/insertMany.d.ts +2 -1
  107. package/dist/cjs/tools/mongodb/create/insertMany.d.ts.map +1 -1
  108. package/dist/cjs/tools/mongodb/create/insertMany.js +4 -2
  109. package/dist/cjs/tools/mongodb/create/insertMany.js.map +1 -1
  110. package/dist/cjs/tools/mongodb/delete/deleteMany.d.ts +2 -1
  111. package/dist/cjs/tools/mongodb/delete/deleteMany.d.ts.map +1 -1
  112. package/dist/cjs/tools/mongodb/delete/deleteMany.js +4 -2
  113. package/dist/cjs/tools/mongodb/delete/deleteMany.js.map +1 -1
  114. package/dist/cjs/tools/mongodb/delete/dropCollection.d.ts +2 -1
  115. package/dist/cjs/tools/mongodb/delete/dropCollection.d.ts.map +1 -1
  116. package/dist/cjs/tools/mongodb/delete/dropCollection.js +4 -2
  117. package/dist/cjs/tools/mongodb/delete/dropCollection.js.map +1 -1
  118. package/dist/cjs/tools/mongodb/delete/dropDatabase.d.ts +2 -1
  119. package/dist/cjs/tools/mongodb/delete/dropDatabase.d.ts.map +1 -1
  120. package/dist/cjs/tools/mongodb/delete/dropDatabase.js +4 -3
  121. package/dist/cjs/tools/mongodb/delete/dropDatabase.js.map +1 -1
  122. package/dist/cjs/tools/mongodb/delete/dropIndex.d.ts +1 -0
  123. package/dist/cjs/tools/mongodb/delete/dropIndex.d.ts.map +1 -1
  124. package/dist/cjs/tools/mongodb/delete/dropIndex.js +5 -3
  125. package/dist/cjs/tools/mongodb/delete/dropIndex.js.map +1 -1
  126. package/dist/cjs/tools/mongodb/metadata/collectionIndexes.d.ts +3 -2
  127. package/dist/cjs/tools/mongodb/metadata/collectionIndexes.d.ts.map +1 -1
  128. package/dist/cjs/tools/mongodb/metadata/collectionIndexes.js +5 -4
  129. package/dist/cjs/tools/mongodb/metadata/collectionIndexes.js.map +1 -1
  130. package/dist/cjs/tools/mongodb/metadata/collectionSchema.d.ts +2 -1
  131. package/dist/cjs/tools/mongodb/metadata/collectionSchema.d.ts.map +1 -1
  132. package/dist/cjs/tools/mongodb/metadata/collectionSchema.js +4 -2
  133. package/dist/cjs/tools/mongodb/metadata/collectionSchema.js.map +1 -1
  134. package/dist/cjs/tools/mongodb/metadata/collectionStorageSize.d.ts +3 -2
  135. package/dist/cjs/tools/mongodb/metadata/collectionStorageSize.d.ts.map +1 -1
  136. package/dist/cjs/tools/mongodb/metadata/collectionStorageSize.js +4 -3
  137. package/dist/cjs/tools/mongodb/metadata/collectionStorageSize.js.map +1 -1
  138. package/dist/cjs/tools/mongodb/metadata/dbStats.d.ts +2 -1
  139. package/dist/cjs/tools/mongodb/metadata/dbStats.d.ts.map +1 -1
  140. package/dist/cjs/tools/mongodb/metadata/dbStats.js +4 -3
  141. package/dist/cjs/tools/mongodb/metadata/dbStats.js.map +1 -1
  142. package/dist/cjs/tools/mongodb/metadata/explain.d.ts +2 -1
  143. package/dist/cjs/tools/mongodb/metadata/explain.d.ts.map +1 -1
  144. package/dist/cjs/tools/mongodb/metadata/explain.js +5 -3
  145. package/dist/cjs/tools/mongodb/metadata/explain.js.map +1 -1
  146. package/dist/cjs/tools/mongodb/metadata/listCollections.d.ts +2 -1
  147. package/dist/cjs/tools/mongodb/metadata/listCollections.d.ts.map +1 -1
  148. package/dist/cjs/tools/mongodb/metadata/listCollections.js +4 -3
  149. package/dist/cjs/tools/mongodb/metadata/listCollections.js.map +1 -1
  150. package/dist/cjs/tools/mongodb/metadata/listDatabases.d.ts +5 -3
  151. package/dist/cjs/tools/mongodb/metadata/listDatabases.d.ts.map +1 -1
  152. package/dist/cjs/tools/mongodb/metadata/listDatabases.js +3 -3
  153. package/dist/cjs/tools/mongodb/metadata/listDatabases.js.map +1 -1
  154. package/dist/cjs/tools/mongodb/metadata/logs.d.ts +2 -1
  155. package/dist/cjs/tools/mongodb/metadata/logs.d.ts.map +1 -1
  156. package/dist/cjs/tools/mongodb/metadata/logs.js +4 -2
  157. package/dist/cjs/tools/mongodb/metadata/logs.js.map +1 -1
  158. package/dist/cjs/tools/mongodb/mongodbTool.d.ts +21 -4
  159. package/dist/cjs/tools/mongodb/mongodbTool.d.ts.map +1 -1
  160. package/dist/cjs/tools/mongodb/mongodbTool.js +45 -31
  161. package/dist/cjs/tools/mongodb/mongodbTool.js.map +1 -1
  162. package/dist/cjs/tools/mongodb/read/aggregate.d.ts +2 -1
  163. package/dist/cjs/tools/mongodb/read/aggregate.d.ts.map +1 -1
  164. package/dist/cjs/tools/mongodb/read/aggregate.js +12 -10
  165. package/dist/cjs/tools/mongodb/read/aggregate.js.map +1 -1
  166. package/dist/cjs/tools/mongodb/read/aggregateDB.d.ts +2 -1
  167. package/dist/cjs/tools/mongodb/read/aggregateDB.d.ts.map +1 -1
  168. package/dist/cjs/tools/mongodb/read/aggregateDB.js +4 -2
  169. package/dist/cjs/tools/mongodb/read/aggregateDB.js.map +1 -1
  170. package/dist/cjs/tools/mongodb/read/count.d.ts +2 -1
  171. package/dist/cjs/tools/mongodb/read/count.d.ts.map +1 -1
  172. package/dist/cjs/tools/mongodb/read/count.js +4 -2
  173. package/dist/cjs/tools/mongodb/read/count.js.map +1 -1
  174. package/dist/cjs/tools/mongodb/read/export.d.ts +2 -1
  175. package/dist/cjs/tools/mongodb/read/export.d.ts.map +1 -1
  176. package/dist/cjs/tools/mongodb/read/export.js +5 -3
  177. package/dist/cjs/tools/mongodb/read/export.js.map +1 -1
  178. package/dist/cjs/tools/mongodb/read/find.d.ts +2 -1
  179. package/dist/cjs/tools/mongodb/read/find.d.ts.map +1 -1
  180. package/dist/cjs/tools/mongodb/read/find.js +5 -3
  181. package/dist/cjs/tools/mongodb/read/find.js.map +1 -1
  182. package/dist/cjs/tools/mongodb/tools.d.ts +2 -1
  183. package/dist/cjs/tools/mongodb/tools.d.ts.map +1 -1
  184. package/dist/cjs/tools/mongodb/tools.js +5 -3
  185. package/dist/cjs/tools/mongodb/tools.js.map +1 -1
  186. package/dist/cjs/tools/mongodb/update/renameCollection.d.ts +2 -1
  187. package/dist/cjs/tools/mongodb/update/renameCollection.d.ts.map +1 -1
  188. package/dist/cjs/tools/mongodb/update/renameCollection.js +4 -2
  189. package/dist/cjs/tools/mongodb/update/renameCollection.js.map +1 -1
  190. package/dist/cjs/tools/mongodb/update/updateMany.d.ts +2 -1
  191. package/dist/cjs/tools/mongodb/update/updateMany.d.ts.map +1 -1
  192. package/dist/cjs/tools/mongodb/update/updateMany.js +4 -2
  193. package/dist/cjs/tools/mongodb/update/updateMany.js.map +1 -1
  194. package/dist/cjs/tools/tool.d.ts +6 -3
  195. package/dist/cjs/tools/tool.d.ts.map +1 -1
  196. package/dist/cjs/tools/tool.js +33 -24
  197. package/dist/cjs/tools/tool.js.map +1 -1
  198. package/dist/cjs/transports/base.d.ts +13 -16
  199. package/dist/cjs/transports/base.d.ts.map +1 -1
  200. package/dist/cjs/transports/base.js +39 -13
  201. package/dist/cjs/transports/base.js.map +1 -1
  202. package/dist/cjs/transports/constants.d.ts +9 -0
  203. package/dist/cjs/transports/constants.d.ts.map +1 -1
  204. package/dist/cjs/transports/constants.js +10 -1
  205. package/dist/cjs/transports/constants.js.map +1 -1
  206. package/dist/cjs/transports/jsonRpcErrorCodes.d.ts +5 -0
  207. package/dist/cjs/transports/jsonRpcErrorCodes.d.ts.map +1 -1
  208. package/dist/cjs/transports/jsonRpcErrorCodes.js +6 -1
  209. package/dist/cjs/transports/jsonRpcErrorCodes.js.map +1 -1
  210. package/dist/cjs/transports/mcpHttpServer.d.ts.map +1 -1
  211. package/dist/cjs/transports/mcpHttpServer.js +7 -0
  212. package/dist/cjs/transports/mcpHttpServer.js.map +1 -1
  213. package/dist/cjs/transports/streamableHttp.d.ts +1 -1
  214. package/dist/cjs/transports/streamableHttp.d.ts.map +1 -1
  215. package/dist/cjs/transports/streamableHttp.js +3 -7
  216. package/dist/cjs/transports/streamableHttp.js.map +1 -1
  217. package/dist/cjs/web.d.ts +1 -0
  218. package/dist/cjs/web.d.ts.map +1 -1
  219. package/dist/cjs/web.js +6 -1
  220. package/dist/cjs/web.js.map +1 -1
  221. package/dist/esm/common/config/userConfig.d.ts +6 -0
  222. package/dist/esm/common/config/userConfig.d.ts.map +1 -1
  223. package/dist/esm/common/config/userConfig.js +20 -1
  224. package/dist/esm/common/config/userConfig.js.map +1 -1
  225. package/dist/esm/common/connectionErrorHandler.d.ts +8 -2
  226. package/dist/esm/common/connectionErrorHandler.d.ts.map +1 -1
  227. package/dist/esm/common/connectionErrorHandler.js +25 -4
  228. package/dist/esm/common/connectionErrorHandler.js.map +1 -1
  229. package/dist/esm/common/connectionRegistry.d.ts +196 -0
  230. package/dist/esm/common/connectionRegistry.d.ts.map +1 -0
  231. package/dist/esm/common/connectionRegistry.js +319 -0
  232. package/dist/esm/common/connectionRegistry.js.map +1 -0
  233. package/dist/esm/common/connectionSummary.d.ts +13 -0
  234. package/dist/esm/common/connectionSummary.d.ts.map +1 -0
  235. package/dist/esm/common/connectionSummary.js +26 -0
  236. package/dist/esm/common/connectionSummary.js.map +1 -0
  237. package/dist/esm/common/errors.d.ts +2 -1
  238. package/dist/esm/common/errors.d.ts.map +1 -1
  239. package/dist/esm/common/errors.js +1 -0
  240. package/dist/esm/common/errors.js.map +1 -1
  241. package/dist/esm/common/logging/loggingDefinitions.d.ts +4 -0
  242. package/dist/esm/common/logging/loggingDefinitions.d.ts.map +1 -1
  243. package/dist/esm/common/logging/loggingDefinitions.js +4 -0
  244. package/dist/esm/common/logging/loggingDefinitions.js.map +1 -1
  245. package/dist/esm/common/packageInfo.js +1 -1
  246. package/dist/esm/common/packageInfo.js.map +1 -1
  247. package/dist/esm/common/session.d.ts +21 -22
  248. package/dist/esm/common/session.d.ts.map +1 -1
  249. package/dist/esm/common/session.js +16 -76
  250. package/dist/esm/common/session.js.map +1 -1
  251. package/dist/esm/common/sessionStore.d.ts +12 -0
  252. package/dist/esm/common/sessionStore.d.ts.map +1 -1
  253. package/dist/esm/common/sessionStore.js +24 -0
  254. package/dist/esm/common/sessionStore.js.map +1 -1
  255. package/dist/esm/lib.d.ts +3 -2
  256. package/dist/esm/lib.d.ts.map +1 -1
  257. package/dist/esm/lib.js +3 -2
  258. package/dist/esm/lib.js.map +1 -1
  259. package/dist/esm/resources/common/config.js +2 -2
  260. package/dist/esm/resources/common/config.js.map +1 -1
  261. package/dist/esm/resources/common/debug.d.ts +2 -11
  262. package/dist/esm/resources/common/debug.d.ts.map +1 -1
  263. package/dist/esm/resources/common/debug.js +32 -43
  264. package/dist/esm/resources/common/debug.js.map +1 -1
  265. package/dist/esm/server.d.ts +0 -1
  266. package/dist/esm/server.d.ts.map +1 -1
  267. package/dist/esm/server.js +0 -22
  268. package/dist/esm/server.js.map +1 -1
  269. package/dist/esm/telemetry/types.d.ts +1 -0
  270. package/dist/esm/telemetry/types.d.ts.map +1 -1
  271. package/dist/esm/tools/atlas/atlasTool.d.ts +1 -1
  272. package/dist/esm/tools/atlas/atlasTool.d.ts.map +1 -1
  273. package/dist/esm/tools/atlas/connect/connectCluster.d.ts +4 -2
  274. package/dist/esm/tools/atlas/connect/connectCluster.d.ts.map +1 -1
  275. package/dist/esm/tools/atlas/connect/connectCluster.js +101 -133
  276. package/dist/esm/tools/atlas/connect/connectCluster.js.map +1 -1
  277. package/dist/esm/tools/atlas/create/createCluster.d.ts +1 -1
  278. package/dist/esm/tools/atlas/create/createCluster.d.ts.map +1 -1
  279. package/dist/esm/tools/atlas/create/createCluster.js +2 -2
  280. package/dist/esm/tools/atlas/create/createCluster.js.map +1 -1
  281. package/dist/esm/tools/atlas/read/getPerformanceAdvisor.d.ts +1 -1
  282. package/dist/esm/tools/atlas/read/getPerformanceAdvisor.d.ts.map +1 -1
  283. package/dist/esm/tools/atlas/read/getPerformanceAdvisor.js +2 -2
  284. package/dist/esm/tools/atlas/read/getPerformanceAdvisor.js.map +1 -1
  285. package/dist/esm/tools/atlas/streams/build.d.ts +2 -2
  286. package/dist/esm/tools/atlas/streams/streamsToolBase.d.ts +1 -1
  287. package/dist/esm/tools/atlas/streams/streamsToolBase.d.ts.map +1 -1
  288. package/dist/esm/tools/atlas/streams/streamsToolBase.js +2 -2
  289. package/dist/esm/tools/atlas/streams/streamsToolBase.js.map +1 -1
  290. package/dist/esm/tools/atlas/streams/teardown.d.ts +3 -3
  291. package/dist/esm/tools/atlas/update/pauseResumeCluster.d.ts +1 -1
  292. package/dist/esm/tools/atlas/update/pauseResumeCluster.d.ts.map +1 -1
  293. package/dist/esm/tools/atlas/update/pauseResumeCluster.js +12 -7
  294. package/dist/esm/tools/atlas/update/pauseResumeCluster.js.map +1 -1
  295. package/dist/esm/tools/atlas/update/upgradeCluster.d.ts +3 -3
  296. package/dist/esm/tools/atlas/update/upgradeCluster.d.ts.map +1 -1
  297. package/dist/esm/tools/atlas/update/upgradeCluster.js +6 -14
  298. package/dist/esm/tools/atlas/update/upgradeCluster.js.map +1 -1
  299. package/dist/esm/tools/atlasLocal/atlasLocalTool.d.ts +1 -1
  300. package/dist/esm/tools/atlasLocal/atlasLocalTool.d.ts.map +1 -1
  301. package/dist/esm/tools/atlasLocal/connect/connectDeployment.d.ts +3 -1
  302. package/dist/esm/tools/atlasLocal/connect/connectDeployment.d.ts.map +1 -1
  303. package/dist/esm/tools/atlasLocal/connect/connectDeployment.js +16 -5
  304. package/dist/esm/tools/atlasLocal/connect/connectDeployment.js.map +1 -1
  305. package/dist/esm/tools/mongodb/connect/connect.d.ts +9 -6
  306. package/dist/esm/tools/mongodb/connect/connect.d.ts.map +1 -1
  307. package/dist/esm/tools/mongodb/connect/connect.js +31 -26
  308. package/dist/esm/tools/mongodb/connect/connect.js.map +1 -1
  309. package/dist/esm/tools/mongodb/connect/disconnect.d.ts +19 -0
  310. package/dist/esm/tools/mongodb/connect/disconnect.d.ts.map +1 -0
  311. package/dist/esm/tools/mongodb/connect/disconnect.js +42 -0
  312. package/dist/esm/tools/mongodb/connect/disconnect.js.map +1 -0
  313. package/dist/esm/tools/mongodb/connect/listConnections.d.ts +32 -0
  314. package/dist/esm/tools/mongodb/connect/listConnections.d.ts.map +1 -0
  315. package/dist/esm/tools/mongodb/connect/listConnections.js +56 -0
  316. package/dist/esm/tools/mongodb/connect/listConnections.js.map +1 -0
  317. package/dist/esm/tools/mongodb/create/createCollection.d.ts +2 -1
  318. package/dist/esm/tools/mongodb/create/createCollection.d.ts.map +1 -1
  319. package/dist/esm/tools/mongodb/create/createCollection.js +5 -4
  320. package/dist/esm/tools/mongodb/create/createCollection.js.map +1 -1
  321. package/dist/esm/tools/mongodb/create/createIndex.d.ts +3 -2
  322. package/dist/esm/tools/mongodb/create/createIndex.d.ts.map +1 -1
  323. package/dist/esm/tools/mongodb/create/createIndex.js +9 -7
  324. package/dist/esm/tools/mongodb/create/createIndex.js.map +1 -1
  325. package/dist/esm/tools/mongodb/create/insertMany.d.ts +2 -1
  326. package/dist/esm/tools/mongodb/create/insertMany.d.ts.map +1 -1
  327. package/dist/esm/tools/mongodb/create/insertMany.js +5 -3
  328. package/dist/esm/tools/mongodb/create/insertMany.js.map +1 -1
  329. package/dist/esm/tools/mongodb/delete/deleteMany.d.ts +2 -1
  330. package/dist/esm/tools/mongodb/delete/deleteMany.d.ts.map +1 -1
  331. package/dist/esm/tools/mongodb/delete/deleteMany.js +5 -3
  332. package/dist/esm/tools/mongodb/delete/deleteMany.js.map +1 -1
  333. package/dist/esm/tools/mongodb/delete/dropCollection.d.ts +2 -1
  334. package/dist/esm/tools/mongodb/delete/dropCollection.d.ts.map +1 -1
  335. package/dist/esm/tools/mongodb/delete/dropCollection.js +5 -3
  336. package/dist/esm/tools/mongodb/delete/dropCollection.js.map +1 -1
  337. package/dist/esm/tools/mongodb/delete/dropDatabase.d.ts +2 -1
  338. package/dist/esm/tools/mongodb/delete/dropDatabase.d.ts.map +1 -1
  339. package/dist/esm/tools/mongodb/delete/dropDatabase.js +5 -4
  340. package/dist/esm/tools/mongodb/delete/dropDatabase.js.map +1 -1
  341. package/dist/esm/tools/mongodb/delete/dropIndex.d.ts +1 -0
  342. package/dist/esm/tools/mongodb/delete/dropIndex.d.ts.map +1 -1
  343. package/dist/esm/tools/mongodb/delete/dropIndex.js +6 -4
  344. package/dist/esm/tools/mongodb/delete/dropIndex.js.map +1 -1
  345. package/dist/esm/tools/mongodb/metadata/collectionIndexes.d.ts +3 -2
  346. package/dist/esm/tools/mongodb/metadata/collectionIndexes.d.ts.map +1 -1
  347. package/dist/esm/tools/mongodb/metadata/collectionIndexes.js +6 -5
  348. package/dist/esm/tools/mongodb/metadata/collectionIndexes.js.map +1 -1
  349. package/dist/esm/tools/mongodb/metadata/collectionSchema.d.ts +2 -1
  350. package/dist/esm/tools/mongodb/metadata/collectionSchema.d.ts.map +1 -1
  351. package/dist/esm/tools/mongodb/metadata/collectionSchema.js +5 -3
  352. package/dist/esm/tools/mongodb/metadata/collectionSchema.js.map +1 -1
  353. package/dist/esm/tools/mongodb/metadata/collectionStorageSize.d.ts +3 -2
  354. package/dist/esm/tools/mongodb/metadata/collectionStorageSize.d.ts.map +1 -1
  355. package/dist/esm/tools/mongodb/metadata/collectionStorageSize.js +5 -4
  356. package/dist/esm/tools/mongodb/metadata/collectionStorageSize.js.map +1 -1
  357. package/dist/esm/tools/mongodb/metadata/dbStats.d.ts +2 -1
  358. package/dist/esm/tools/mongodb/metadata/dbStats.d.ts.map +1 -1
  359. package/dist/esm/tools/mongodb/metadata/dbStats.js +5 -4
  360. package/dist/esm/tools/mongodb/metadata/dbStats.js.map +1 -1
  361. package/dist/esm/tools/mongodb/metadata/explain.d.ts +2 -1
  362. package/dist/esm/tools/mongodb/metadata/explain.d.ts.map +1 -1
  363. package/dist/esm/tools/mongodb/metadata/explain.js +6 -4
  364. package/dist/esm/tools/mongodb/metadata/explain.js.map +1 -1
  365. package/dist/esm/tools/mongodb/metadata/listCollections.d.ts +2 -1
  366. package/dist/esm/tools/mongodb/metadata/listCollections.d.ts.map +1 -1
  367. package/dist/esm/tools/mongodb/metadata/listCollections.js +5 -4
  368. package/dist/esm/tools/mongodb/metadata/listCollections.js.map +1 -1
  369. package/dist/esm/tools/mongodb/metadata/listDatabases.d.ts +5 -3
  370. package/dist/esm/tools/mongodb/metadata/listDatabases.d.ts.map +1 -1
  371. package/dist/esm/tools/mongodb/metadata/listDatabases.js +4 -4
  372. package/dist/esm/tools/mongodb/metadata/listDatabases.js.map +1 -1
  373. package/dist/esm/tools/mongodb/metadata/logs.d.ts +2 -1
  374. package/dist/esm/tools/mongodb/metadata/logs.d.ts.map +1 -1
  375. package/dist/esm/tools/mongodb/metadata/logs.js +5 -3
  376. package/dist/esm/tools/mongodb/metadata/logs.js.map +1 -1
  377. package/dist/esm/tools/mongodb/mongodbTool.d.ts +21 -4
  378. package/dist/esm/tools/mongodb/mongodbTool.d.ts.map +1 -1
  379. package/dist/esm/tools/mongodb/mongodbTool.js +44 -30
  380. package/dist/esm/tools/mongodb/mongodbTool.js.map +1 -1
  381. package/dist/esm/tools/mongodb/read/aggregate.d.ts +2 -1
  382. package/dist/esm/tools/mongodb/read/aggregate.d.ts.map +1 -1
  383. package/dist/esm/tools/mongodb/read/aggregate.js +13 -11
  384. package/dist/esm/tools/mongodb/read/aggregate.js.map +1 -1
  385. package/dist/esm/tools/mongodb/read/aggregateDB.d.ts +2 -1
  386. package/dist/esm/tools/mongodb/read/aggregateDB.d.ts.map +1 -1
  387. package/dist/esm/tools/mongodb/read/aggregateDB.js +5 -3
  388. package/dist/esm/tools/mongodb/read/aggregateDB.js.map +1 -1
  389. package/dist/esm/tools/mongodb/read/count.d.ts +2 -1
  390. package/dist/esm/tools/mongodb/read/count.d.ts.map +1 -1
  391. package/dist/esm/tools/mongodb/read/count.js +5 -3
  392. package/dist/esm/tools/mongodb/read/count.js.map +1 -1
  393. package/dist/esm/tools/mongodb/read/export.d.ts +2 -1
  394. package/dist/esm/tools/mongodb/read/export.d.ts.map +1 -1
  395. package/dist/esm/tools/mongodb/read/export.js +6 -4
  396. package/dist/esm/tools/mongodb/read/export.js.map +1 -1
  397. package/dist/esm/tools/mongodb/read/find.d.ts +2 -1
  398. package/dist/esm/tools/mongodb/read/find.d.ts.map +1 -1
  399. package/dist/esm/tools/mongodb/read/find.js +6 -4
  400. package/dist/esm/tools/mongodb/read/find.js.map +1 -1
  401. package/dist/esm/tools/mongodb/tools.d.ts +2 -1
  402. package/dist/esm/tools/mongodb/tools.d.ts.map +1 -1
  403. package/dist/esm/tools/mongodb/tools.js +2 -1
  404. package/dist/esm/tools/mongodb/tools.js.map +1 -1
  405. package/dist/esm/tools/mongodb/update/renameCollection.d.ts +2 -1
  406. package/dist/esm/tools/mongodb/update/renameCollection.d.ts.map +1 -1
  407. package/dist/esm/tools/mongodb/update/renameCollection.js +5 -3
  408. package/dist/esm/tools/mongodb/update/renameCollection.js.map +1 -1
  409. package/dist/esm/tools/mongodb/update/updateMany.d.ts +2 -1
  410. package/dist/esm/tools/mongodb/update/updateMany.d.ts.map +1 -1
  411. package/dist/esm/tools/mongodb/update/updateMany.js +5 -3
  412. package/dist/esm/tools/mongodb/update/updateMany.js.map +1 -1
  413. package/dist/esm/tools/tool.d.ts +6 -3
  414. package/dist/esm/tools/tool.d.ts.map +1 -1
  415. package/dist/esm/tools/tool.js +33 -24
  416. package/dist/esm/tools/tool.js.map +1 -1
  417. package/dist/esm/transports/base.d.ts +13 -16
  418. package/dist/esm/transports/base.d.ts.map +1 -1
  419. package/dist/esm/transports/base.js +39 -13
  420. package/dist/esm/transports/base.js.map +1 -1
  421. package/dist/esm/transports/constants.d.ts +9 -0
  422. package/dist/esm/transports/constants.d.ts.map +1 -1
  423. package/dist/esm/transports/constants.js +9 -0
  424. package/dist/esm/transports/constants.js.map +1 -1
  425. package/dist/esm/transports/jsonRpcErrorCodes.d.ts +5 -0
  426. package/dist/esm/transports/jsonRpcErrorCodes.d.ts.map +1 -1
  427. package/dist/esm/transports/jsonRpcErrorCodes.js +5 -0
  428. package/dist/esm/transports/jsonRpcErrorCodes.js.map +1 -1
  429. package/dist/esm/transports/mcpHttpServer.d.ts.map +1 -1
  430. package/dist/esm/transports/mcpHttpServer.js +9 -2
  431. package/dist/esm/transports/mcpHttpServer.js.map +1 -1
  432. package/dist/esm/transports/streamableHttp.d.ts +1 -1
  433. package/dist/esm/transports/streamableHttp.d.ts.map +1 -1
  434. package/dist/esm/transports/streamableHttp.js +2 -7
  435. package/dist/esm/transports/streamableHttp.js.map +1 -1
  436. package/dist/esm/web.d.ts +1 -0
  437. package/dist/esm/web.d.ts.map +1 -1
  438. package/dist/esm/web.js +1 -0
  439. package/dist/esm/web.js.map +1 -1
  440. package/package.json +3 -3
  441. package/dist/cjs/tools/mongodb/connect/switchConnection.d.ts +0 -21
  442. package/dist/cjs/tools/mongodb/connect/switchConnection.d.ts.map +0 -1
  443. package/dist/cjs/tools/mongodb/connect/switchConnection.js +0 -64
  444. package/dist/cjs/tools/mongodb/connect/switchConnection.js.map +0 -1
  445. package/dist/esm/tools/mongodb/connect/switchConnection.d.ts +0 -21
  446. package/dist/esm/tools/mongodb/connect/switchConnection.d.ts.map +0 -1
  447. package/dist/esm/tools/mongodb/connect/switchConnection.js +0 -57
  448. package/dist/esm/tools/mongodb/connect/switchConnection.js.map +0 -1
package/README.md CHANGED
@@ -336,7 +336,7 @@ For more information about configuring OpenCode as an MCP client, including the
336
336
  - `collection-indexes` - Describe the indexes for a collection
337
337
  - `collection-schema` - Describe the schema for a collection
338
338
  - `collection-storage-size` - Gets the size of the collection
339
- - `connect` - Connect to a MongoDB instance
339
+ - `connect` - Connect to a MongoDB instance and get back a `connectionId` to pass to the other MongoDB tools. When the server is started with a configured connection string, a connection with the id `preconfigured` is available without calling this tool.
340
340
  - `count` - Gets the number of documents in a MongoDB collection using db.collection.count() and query as an optional filter parameter
341
341
  - `create-collection` - Creates a new collection in a database. If the database doesn't exist, it will be created automatically.
342
342
  - `create-index` - Create an index for a collection
@@ -351,9 +351,10 @@ For more information about configuring OpenCode as an MCP client, including the
351
351
  - `insert-many` - Insert an array of documents into a MongoDB collection. If the list of documents is above com.mongodb/maxRequestPayloadBytes, consider inserting them in batches.
352
352
  - `list-collections` - List all collections for a given database
353
353
  - `list-databases` - List all databases for a MongoDB connection
354
+ - `disconnect` - Close a MongoDB connection and revoke its `connectionId`
355
+ - `list-connections` - List the active MongoDB connections and their `connectionId`s
354
356
  - `mongodb-logs` - Returns the most recent logged mongod events
355
357
  - `rename-collection` - Renames a collection in a MongoDB database
356
- - `switch-connection` - Switch to a different MongoDB connection
357
358
  - `update-many` - Updates all documents that match the specified filter for a collection. If the list of documents is above com.mongodb/maxRequestPayloadBytes, consider updating them in batches.
358
359
 
359
360
  #### MongoDB Atlas Tools
@@ -415,46 +416,49 @@ The MongoDB MCP Server can be configured using multiple methods, with the follow
415
416
 
416
417
  ### Configuration Options
417
418
 
418
- | Environment Variable / CLI Option | Default | Description |
419
- | ---------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
420
- | `MDB_MCP_ALLOW_REQUEST_OVERRIDES` / `--allowRequestOverrides` | `false` | When set to true, allows configuration values to be overridden via request headers and query parameters. |
421
- | `MDB_MCP_API_CLIENT_ID` / `--apiClientId` | `<not set>` | Atlas API client ID for authentication. Required for running Atlas tools. |
422
- | `MDB_MCP_API_CLIENT_SECRET` / `--apiClientSecret` | `<not set>` | Atlas API client secret for authentication. Required for running Atlas tools. |
423
- | `MDB_MCP_ASSISTANT_BASE_URL` / `--assistantBaseUrl` | `"https://knowledge.mongodb.com/api/v1/"` | Base URL for the MongoDB Assistant API. |
424
- | `MDB_MCP_ATLAS_TEMPORARY_DATABASE_USER_LIFETIME_MS` / `--atlasTemporaryDatabaseUserLifetimeMs` | `14400000` | Time in milliseconds that temporary database users created when connecting to MongoDB Atlas clusters will remain active before being automatically deleted. |
425
- | `MDB_MCP_CONFIRMATION_REQUIRED_TOOLS` / `--confirmationRequiredTools` | `"atlas-create-access-list,atlas-create-db-user,drop-database,drop-collection,delete-many,drop-index,atlas-streams-manage,atlas-streams-teardown"` | Comma separated values of tool names that require user confirmation before execution. Requires the client to support elicitation. |
426
- | `MDB_MCP_CONNECTION_STRING` / `--connectionString` | `<not set>` | MongoDB connection string for direct database connections. Optional, if not set, you'll need to call the connect tool before interacting with MongoDB data. |
427
- | `MDB_MCP_DISABLE_SERVER_SIDE_JS` / `--disableServerSideJs` | `true` | When set to true, disallows the use of server-side JavaScript operators (such as $where, $function, and $accumulator) in query filters and aggregation pipelines. |
428
- | `MDB_MCP_DISABLED_TOOLS` / `--disabledTools` | `""` | Comma separated values of tool names, operation types, and/or categories of tools that will be disabled. |
429
- | `MDB_MCP_DRY_RUN` / `--dryRun` | `false` | When true, runs the server in dry mode: dumps configuration and enabled tools, then exits without starting the server. |
430
- | `MDB_MCP_EXPORT_CLEANUP_INTERVAL_MS` / `--exportCleanupIntervalMs` | `120000` | Time in milliseconds between export cleanup cycles that remove expired export files. |
431
- | `MDB_MCP_EXPORT_TIMEOUT_MS` / `--exportTimeoutMs` | `300000` | Time in milliseconds after which an export is considered expired and eligible for cleanup. |
432
- | `MDB_MCP_EXPORTS_PATH` / `--exportsPath` | see below\* | Folder to store exported data files. |
433
- | `MDB_MCP_EXTERNALLY_MANAGED_SESSIONS` / `--externallyManagedSessions` | `false` | When true, the HTTP transport allows requests with a session ID supplied externally through the 'mcp-session-id' header. When an external ID is supplied, the initialization request is optional. |
434
- | `MDB_MCP_HEALTH_CHECK_HOST` / `--healthCheckHost` | `<not set>` | Deprecated. Use `monitoringServerHost` instead. Host address to bind the healthCheck HTTP server to (only used when transport is 'http'). If provided, `healthCheckPort` must also be set. |
435
- | `MDB_MCP_HEALTH_CHECK_PORT` / `--healthCheckPort` | `<not set>` | Deprecated. Use `monitoringServerPort` instead. Port number for the healthCheck HTTP server (only used when transport is 'http'). If provided, `healthCheckHost` must also be set. |
436
- | `MDB_MCP_HTTP_BODY_LIMIT` / `--httpBodyLimit` | `102400` | Maximum size of the HTTP request body in bytes (only used when transport is 'http'). This value is passed as the optional limit parameter to the Express.js json() middleware. |
437
- | `MDB_MCP_HTTP_HEADERS` / `--httpHeaders` | `"{}"` | Header that the HTTP server will validate when making requests (only used when transport is 'http'). |
438
- | `MDB_MCP_HTTP_HOST` / `--httpHost` | `"127.0.0.1"` | Host address to bind the HTTP server to (only used when transport is 'http'). |
439
- | `MDB_MCP_HTTP_PORT` / `--httpPort` | `3000` | Port number for the HTTP server (only used when transport is 'http'). Use 0 for a random port. |
440
- | `MDB_MCP_HTTP_RESPONSE_TYPE` / `--httpResponseType` | `"sse"` | The HTTP response type for tool responses: 'sse' for Server-Sent Events, 'json' for standard JSON responses. |
441
- | `MDB_MCP_IDLE_TIMEOUT_MS` / `--idleTimeoutMs` | `600000` | Idle timeout for a client to disconnect (only applies to http transport). |
442
- | `MDB_MCP_INDEX_CHECK` / `--indexCheck` | `false` | When set to true, enforces that query operations must use an index, rejecting queries that perform a collection scan. |
443
- | `MDB_MCP_LOG_PATH` / `--logPath` | see below\* | Folder to store logs. |
444
- | `MDB_MCP_LOGGERS` / `--loggers` | `"disk,mcp"` see below\* | Comma separated values of logger types. |
445
- | `MDB_MCP_MAX_BYTES_PER_QUERY` / `--maxBytesPerQuery` | `16777216` | 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. |
446
- | `MDB_MCP_MAX_DOCUMENTS_PER_QUERY` / `--maxDocumentsPerQuery` | `100` | 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. |
447
- | `MDB_MCP_MAX_TIME_M_S` / `--maxTimeMS` | `<not set>` | The maximum time in milliseconds that operations are allowed to run on the MongoDB server. When set, this value is passed as the maxTimeMS option to read operations such as find, aggregate, and count. |
448
- | `MDB_MCP_MCP_CLIENT_LOG_LEVEL` / `--mcpClientLogLevel` | `"debug"` | Minimum severity level for log messages forwarded to the MCP client. |
449
- | `MDB_MCP_MONITORING_SERVER_FEATURES` / `--monitoringServerFeatures` | `"health-check"` | Features to expose on the monitoring server (only used when transport is 'http' and monitoringServerHost/monitoringServerPort are set). |
450
- | `MDB_MCP_MONITORING_SERVER_HOST` / `--monitoringServerHost` | `<not set>` | Host address to bind the monitoring HTTP server to (only used when transport is 'http'). If provided, `monitoringServerPort` must also be set. |
451
- | `MDB_MCP_MONITORING_SERVER_PORT` / `--monitoringServerPort` | `<not set>` | Port number for the monitoring HTTP server (only used when transport is 'http'). If provided, `monitoringServerHost` must also be set. |
452
- | `MDB_MCP_NOTIFICATION_TIMEOUT_MS` / `--notificationTimeoutMs` | `540000` | Notification timeout for a client to be aware of disconnect (only applies to http transport). |
453
- | `MDB_MCP_PREVIEW_FEATURES` / `--previewFeatures` | `""` | Comma separated values of preview features that are enabled. |
454
- | `MDB_MCP_READ_ONLY` / `--readOnly` | `false` | When set to true, only allows read, connect, and metadata operation types, disabling create/update/delete operations. |
455
- | `MDB_MCP_TELEMETRY` / `--telemetry` | `"enabled"` | When set to disabled, disables telemetry collection. |
456
- | `MDB_MCP_TRANSPORT` / `--transport` | `"stdio"` | Either 'stdio' or 'http'. |
457
- | `MDB_MCP_VOYAGE_API_KEY` / `--voyageApiKey` | `""` | API key for Voyage AI embeddings service (required for creating Atlas Local deployments with auto-embed vector search capabilities). |
419
+ | Environment Variable / CLI Option | Default | Description |
420
+ | ---------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
421
+ | `MDB_MCP_ALLOW_REQUEST_OVERRIDES` / `--allowRequestOverrides` | `false` | When set to true, allows configuration values to be overridden via request headers and query parameters. |
422
+ | `MDB_MCP_API_CLIENT_ID` / `--apiClientId` | `<not set>` | Atlas API client ID for authentication. Required for running Atlas tools. |
423
+ | `MDB_MCP_API_CLIENT_SECRET` / `--apiClientSecret` | `<not set>` | Atlas API client secret for authentication. Required for running Atlas tools. |
424
+ | `MDB_MCP_ASSISTANT_BASE_URL` / `--assistantBaseUrl` | `"https://knowledge.mongodb.com/api/v1/"` | Base URL for the MongoDB Assistant API. |
425
+ | `MDB_MCP_ATLAS_TEMPORARY_DATABASE_USER_LIFETIME_MS` / `--atlasTemporaryDatabaseUserLifetimeMs` | `14400000` | Time in milliseconds that temporary database users created when connecting to MongoDB Atlas clusters will remain active before being automatically deleted. |
426
+ | `MDB_MCP_CONFIRMATION_REQUIRED_TOOLS` / `--confirmationRequiredTools` | `"atlas-create-access-list,atlas-create-db-user,drop-database,drop-collection,delete-many,drop-index,atlas-streams-manage,atlas-streams-teardown"` | Comma separated values of tool names that require user confirmation before execution. Requires the client to support elicitation. |
427
+ | `MDB_MCP_CONNECTION_SCOPE` / `--connectionScope` | `"session"` | Visibility scope for MongoDB connections created at runtime. With 'session' (the default), each MCP session only sees the connections it created (plus the shared 'preconfigured' one) and they are closed when the session ends recommended when the HTTP transport is exposed to multiple clients without authentication. With 'global', connections are shared across all sessions and survive session rotation. |
428
+ | `MDB_MCP_CONNECTION_STRING` / `--connectionString` | `<not set>` | MongoDB connection string for direct database connections. Optional, if not set, you'll need to call the connect tool before interacting with MongoDB data. |
429
+ | `MDB_MCP_DISABLE_SERVER_SIDE_JS` / `--disableServerSideJs` | `true` | When set to true, disallows the use of server-side JavaScript operators (such as $where, $function, and $accumulator) in query filters and aggregation pipelines. |
430
+ | `MDB_MCP_DISABLED_TOOLS` / `--disabledTools` | `""` | Comma separated values of tool names, operation types, and/or categories of tools that will be disabled. |
431
+ | `MDB_MCP_DRY_RUN` / `--dryRun` | `false` | When true, runs the server in dry mode: dumps configuration and enabled tools, then exits without starting the server. |
432
+ | `MDB_MCP_EXPORT_CLEANUP_INTERVAL_MS` / `--exportCleanupIntervalMs` | `120000` | Time in milliseconds between export cleanup cycles that remove expired export files. |
433
+ | `MDB_MCP_EXPORT_TIMEOUT_MS` / `--exportTimeoutMs` | `300000` | Time in milliseconds after which an export is considered expired and eligible for cleanup. |
434
+ | `MDB_MCP_EXPORTS_PATH` / `--exportsPath` | see below\* | Folder to store exported data files. |
435
+ | `MDB_MCP_EXTERNALLY_MANAGED_SESSIONS` / `--externallyManagedSessions` | `false` | When true, the HTTP transport allows requests with a session ID supplied externally through the 'mcp-session-id' header. When an external ID is supplied, the initialization request is optional. |
436
+ | `MDB_MCP_HEALTH_CHECK_HOST` / `--healthCheckHost` | `<not set>` | Deprecated. Use `monitoringServerHost` instead. Host address to bind the healthCheck HTTP server to (only used when transport is 'http'). If provided, `healthCheckPort` must also be set. |
437
+ | `MDB_MCP_HEALTH_CHECK_PORT` / `--healthCheckPort` | `<not set>` | Deprecated. Use `monitoringServerPort` instead. Port number for the healthCheck HTTP server (only used when transport is 'http'). If provided, `healthCheckHost` must also be set. |
438
+ | `MDB_MCP_HTTP_BODY_LIMIT` / `--httpBodyLimit` | `102400` | Maximum size of the HTTP request body in bytes (only used when transport is 'http'). This value is passed as the optional limit parameter to the Express.js json() middleware. |
439
+ | `MDB_MCP_HTTP_HEADERS` / `--httpHeaders` | `"{}"` | Header that the HTTP server will validate when making requests (only used when transport is 'http'). |
440
+ | `MDB_MCP_HTTP_HOST` / `--httpHost` | `"127.0.0.1"` | Host address to bind the HTTP server to (only used when transport is 'http'). |
441
+ | `MDB_MCP_HTTP_PORT` / `--httpPort` | `3000` | Port number for the HTTP server (only used when transport is 'http'). Use 0 for a random port. |
442
+ | `MDB_MCP_HTTP_RESPONSE_TYPE` / `--httpResponseType` | `"sse"` | The HTTP response type for tool responses: 'sse' for Server-Sent Events, 'json' for standard JSON responses. |
443
+ | `MDB_MCP_IDLE_TIMEOUT_MS` / `--idleTimeoutMs` | `600000` | Idle timeout for a client to disconnect (only applies to http transport). |
444
+ | `MDB_MCP_INDEX_CHECK` / `--indexCheck` | `false` | When set to true, enforces that query operations must use an index, rejecting queries that perform a collection scan. |
445
+ | `MDB_MCP_LOG_PATH` / `--logPath` | see below\* | Folder to store logs. |
446
+ | `MDB_MCP_LOGGERS` / `--loggers` | `"disk,mcp"` see below\* | Comma separated values of logger types. |
447
+ | `MDB_MCP_MAX_ACTIVE_CONNECTIONS` / `--maxActiveConnections` | `10` | Maximum number of MongoDB connections a single scope (an MCP session by default, see `connectionScope`) can hold open. When the limit is exceeded, the scope's least-recently-used connection is closed and its connectionId revoked. The preconfigured connection does not count towards the limit. |
448
+ | `MDB_MCP_MAX_BYTES_PER_QUERY` / `--maxBytesPerQuery` | `16777216` | 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. |
449
+ | `MDB_MCP_MAX_DOCUMENTS_PER_QUERY` / `--maxDocumentsPerQuery` | `100` | 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. |
450
+ | `MDB_MCP_MAX_SESSIONS` / `--maxSessions` | `1000` | Maximum number of concurrent sessions the HTTP transport will hold in memory (only used when transport is 'http'). Each session holds a full server instance, transport, and timers, so choose a value based on your deployment's available memory; the default is a conservative safety net rather than a recommended production value. |
451
+ | `MDB_MCP_MAX_TIME_M_S` / `--maxTimeMS` | `<not set>` | The maximum time in milliseconds that operations are allowed to run on the MongoDB server. When set, this value is passed as the maxTimeMS option to read operations such as find, aggregate, and count. |
452
+ | `MDB_MCP_MCP_CLIENT_LOG_LEVEL` / `--mcpClientLogLevel` | `"debug"` | Minimum severity level for log messages forwarded to the MCP client. |
453
+ | `MDB_MCP_MONITORING_SERVER_FEATURES` / `--monitoringServerFeatures` | `"health-check"` | Features to expose on the monitoring server (only used when transport is 'http' and monitoringServerHost/monitoringServerPort are set). |
454
+ | `MDB_MCP_MONITORING_SERVER_HOST` / `--monitoringServerHost` | `<not set>` | Host address to bind the monitoring HTTP server to (only used when transport is 'http'). If provided, `monitoringServerPort` must also be set. |
455
+ | `MDB_MCP_MONITORING_SERVER_PORT` / `--monitoringServerPort` | `<not set>` | Port number for the monitoring HTTP server (only used when transport is 'http'). If provided, `monitoringServerHost` must also be set. |
456
+ | `MDB_MCP_NOTIFICATION_TIMEOUT_MS` / `--notificationTimeoutMs` | `540000` | Notification timeout for a client to be aware of disconnect (only applies to http transport). |
457
+ | `MDB_MCP_PREVIEW_FEATURES` / `--previewFeatures` | `""` | Comma separated values of preview features that are enabled. |
458
+ | `MDB_MCP_READ_ONLY` / `--readOnly` | `false` | When set to true, only allows read, connect, and metadata operation types, disabling create/update/delete operations. |
459
+ | `MDB_MCP_TELEMETRY` / `--telemetry` | `"enabled"` | When set to disabled, disables telemetry collection. |
460
+ | `MDB_MCP_TRANSPORT` / `--transport` | `"stdio"` | Either 'stdio' or 'http'. |
461
+ | `MDB_MCP_VOYAGE_API_KEY` / `--voyageApiKey` | `""` | API key for Voyage AI embeddings service (required for creating Atlas Local deployments with auto-embed vector search capabilities). |
458
462
 
459
463
  #### Logger Options
460
464
 
@@ -42,6 +42,12 @@ export declare const UserConfigSchema: z.ZodObject<{
42
42
  httpBodyLimit: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
43
43
  idleTimeoutMs: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
44
44
  notificationTimeoutMs: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
45
+ maxSessions: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
46
+ maxActiveConnections: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
47
+ connectionScope: z.ZodDefault<z.ZodEnum<{
48
+ session: "session";
49
+ global: "global";
50
+ }>>;
45
51
  maxBytesPerQuery: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
46
52
  maxDocumentsPerQuery: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
47
53
  maxTimeMS: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
@@ -1 +1 @@
1
- {"version":3,"file":"userConfig.d.ts","sourceRoot":"","sources":["../../../../src/common/config/userConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACH,KAAK,eAAe,EASvB,MAAM,kBAAkB,CAAC;AAM1B,eAAO,MAAM,cAAc,qHAAgC,CAAC;AAuS5D,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAG3B,CAAC;AAEH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D,eAAO,MAAM,eAAe,EAA0C,CAAC,MAAM,UAAU,CAAC,EAAE,CAAC"}
1
+ {"version":3,"file":"userConfig.d.ts","sourceRoot":"","sources":["../../../../src/common/config/userConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACH,KAAK,eAAe,EASvB,MAAM,kBAAkB,CAAC;AAM1B,eAAO,MAAM,cAAc,qHAAgC,CAAC;AAgU5D,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAG3B,CAAC;AAEH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D,eAAO,MAAM,eAAe,EAA0C,CAAC,MAAM,UAAU,CAAC,EAAE,CAAC"}
@@ -140,6 +140,25 @@ const ServerConfigSchema = zod_1.z.object({
140
140
  .default(540000)
141
141
  .describe("Notification timeout for a client to be aware of disconnect (only applies to http transport).")
142
142
  .register(exports.configRegistry, { overrideBehavior: (0, configUtils_js_1.onlyLowerThanBaseValueOverride)() }),
143
+ maxSessions: zod_1.z.coerce
144
+ .number()
145
+ .int()
146
+ .min(1, "Invalid maxSessions: must be at least 1")
147
+ .default(constants_js_1.DEFAULT_MAX_SESSIONS)
148
+ .describe("Maximum number of concurrent sessions the HTTP transport will hold in memory (only used when transport is 'http'). Each session holds a full server instance, transport, and timers, so choose a value based on your deployment's available memory; the default is a conservative safety net rather than a recommended production value.")
149
+ .register(exports.configRegistry, { overrideBehavior: "not-allowed" }),
150
+ maxActiveConnections: zod_1.z.coerce
151
+ .number()
152
+ .int()
153
+ .min(1, "Invalid maxActiveConnections: must be at least 1")
154
+ .default(10)
155
+ .describe("Maximum number of MongoDB connections a single scope (an MCP session by default, see connectionScope) can hold open. When exceeded, the scope's least-recently-used connection is closed and its connectionId revoked. The preconfigured connection does not count towards the limit.")
156
+ .register(exports.configRegistry, { overrideBehavior: "not-allowed" }),
157
+ connectionScope: zod_1.z
158
+ .enum(["session", "global"])
159
+ .default("session")
160
+ .describe("Visibility scope for MongoDB connections created at runtime. With 'session' (the default), each MCP session only sees the connections it created (plus the shared 'preconfigured' one) and they are closed when the session ends — recommended when the HTTP transport is exposed to multiple clients without authentication. With 'global', connections are shared across all sessions and survive session rotation.")
161
+ .register(exports.configRegistry, { overrideBehavior: "not-allowed" }),
143
162
  maxBytesPerQuery: zod_1.z.coerce
144
163
  .number()
145
164
  .default(16777216)
@@ -1 +1 @@
1
- {"version":3,"file":"userConfig.js","sourceRoot":"","sources":["../../../../src/common/config/userConfig.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"userConfig.js","sourceRoot":"","sources":["../../../../src/common/config/userConfig.ts"],"names":[],"mappings":"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"}
@@ -2,10 +2,10 @@ import type { CallToolResult } from "@modelcontextprotocol/sdk/types.js";
2
2
  import { ErrorCodes, type MongoDBError } from "./errors.js";
3
3
  import type { AnyConnectionState } from "./connectionManager.js";
4
4
  import type { AnyToolBase } from "../tools/tool.js";
5
- export type ConnectionErrorHandler = (error: MongoDBError<ErrorCodes.NotConnectedToMongoDB | ErrorCodes.MisconfiguredConnectionString>, additionalContext: ConnectionErrorHandlerContext) => ConnectionErrorUnhandled | ConnectionErrorHandled | Promise<ConnectionErrorUnhandled | ConnectionErrorHandled>;
5
+ export type ConnectionErrorHandler = (error: MongoDBError<ErrorCodes.NotConnectedToMongoDB | ErrorCodes.MisconfiguredConnectionString | ErrorCodes.UnknownConnectionId>, additionalContext: ConnectionErrorHandlerContext) => ConnectionErrorUnhandled | ConnectionErrorHandled | Promise<ConnectionErrorUnhandled | ConnectionErrorHandled>;
6
6
  export type ConnectionErrorHandlerContext = {
7
7
  availableTools: AnyToolBase[];
8
- connectionState: AnyConnectionState;
8
+ connectionState?: AnyConnectionState;
9
9
  };
10
10
  export type ConnectionErrorUnhandled = {
11
11
  errorHandled: false;
@@ -14,5 +14,11 @@ export type ConnectionErrorHandled = {
14
14
  errorHandled: true;
15
15
  result: CallToolResult;
16
16
  };
17
+ /**
18
+ * The enabled tools that can establish a connection. The disconnect tool
19
+ * shares the "connect" operation type but cannot establish one, so it is
20
+ * excluded.
21
+ */
22
+ export declare function connectCapableTools(tools: AnyToolBase[]): AnyToolBase[];
17
23
  export declare const connectionErrorHandler: ConnectionErrorHandler;
18
24
  //# sourceMappingURL=connectionErrorHandler.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"connectionErrorHandler.d.ts","sourceRoot":"","sources":["../../../src/common/connectionErrorHandler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAE,UAAU,EAAE,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAC5D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD,MAAM,MAAM,sBAAsB,GAAG,CACjC,KAAK,EAAE,YAAY,CAAC,UAAU,CAAC,qBAAqB,GAAG,UAAU,CAAC,6BAA6B,CAAC,EAChG,iBAAiB,EAAE,6BAA6B,KAC/C,wBAAwB,GAAG,sBAAsB,GAAG,OAAO,CAAC,wBAAwB,GAAG,sBAAsB,CAAC,CAAC;AAEpH,MAAM,MAAM,6BAA6B,GAAG;IAAE,cAAc,EAAE,WAAW,EAAE,CAAC;IAAC,eAAe,EAAE,kBAAkB,CAAA;CAAE,CAAC;AACnH,MAAM,MAAM,wBAAwB,GAAG;IAAE,YAAY,EAAE,KAAK,CAAA;CAAE,CAAC;AAC/D,MAAM,MAAM,sBAAsB,GAAG;IAAE,YAAY,EAAE,IAAI,CAAC;IAAC,MAAM,EAAE,cAAc,CAAA;CAAE,CAAC;AAEpF,eAAO,MAAM,sBAAsB,EAAE,sBAoFpC,CAAC"}
1
+ {"version":3,"file":"connectionErrorHandler.d.ts","sourceRoot":"","sources":["../../../src/common/connectionErrorHandler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAE,UAAU,EAAE,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAC5D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAGpD,MAAM,MAAM,sBAAsB,GAAG,CACjC,KAAK,EAAE,YAAY,CACf,UAAU,CAAC,qBAAqB,GAAG,UAAU,CAAC,6BAA6B,GAAG,UAAU,CAAC,mBAAmB,CAC/G,EACD,iBAAiB,EAAE,6BAA6B,KAC/C,wBAAwB,GAAG,sBAAsB,GAAG,OAAO,CAAC,wBAAwB,GAAG,sBAAsB,CAAC,CAAC;AAEpH,MAAM,MAAM,6BAA6B,GAAG;IAAE,cAAc,EAAE,WAAW,EAAE,CAAC;IAAC,eAAe,CAAC,EAAE,kBAAkB,CAAA;CAAE,CAAC;AACpH,MAAM,MAAM,wBAAwB,GAAG;IAAE,YAAY,EAAE,KAAK,CAAA;CAAE,CAAC;AAC/D,MAAM,MAAM,sBAAsB,GAAG;IAAE,YAAY,EAAE,IAAI,CAAC;IAAC,MAAM,EAAE,cAAc,CAAA;CAAE,CAAC;AAEpF;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,WAAW,EAAE,CAEvE;AAED,eAAO,MAAM,sBAAsB,EAAE,sBAgGpC,CAAC"}
@@ -1,11 +1,19 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.connectionErrorHandler = void 0;
4
+ exports.connectCapableTools = connectCapableTools;
4
5
  const errors_js_1 = require("./errors.js");
6
+ const disconnect_js_1 = require("../tools/mongodb/connect/disconnect.js");
7
+ /**
8
+ * The enabled tools that can establish a connection. The disconnect tool
9
+ * shares the "connect" operation type but cannot establish one, so it is
10
+ * excluded.
11
+ */
12
+ function connectCapableTools(tools) {
13
+ return tools.filter((t) => t.operationType === "connect" && t.name !== disconnect_js_1.DisconnectTool.toolName && t.isEnabled());
14
+ }
5
15
  const connectionErrorHandler = (error, { availableTools, connectionState }) => {
6
- const connectTools = availableTools
7
- .filter((t) => t.operationType === "connect" && t.isEnabled())
8
- .sort((a, b) => a.category.localeCompare(b.category)); // Sort Atlas tools before MongoDB tools
16
+ const connectTools = connectCapableTools(availableTools).sort((a, b) => a.category.localeCompare(b.category)); // Sort Atlas tools before MongoDB tools
9
17
  // Find what Atlas connect tools are available and suggest when the LLM should to use each. If no Atlas tools are found, return a suggestion for the MongoDB connect tool.
10
18
  const atlasConnectTool = connectTools?.find((t) => t.category === "atlas");
11
19
  const atlasLocalConnectTool = connectTools?.find((t) => t.category === "atlas-local");
@@ -23,7 +31,7 @@ const connectionErrorHandler = (error, { availableTools, connectionState }) => {
23
31
  })();
24
32
  const connectToolsNames = connectTools?.map((t) => `"${t.name}"`).join(", ");
25
33
  const additionalPromptForConnectivity = [];
26
- if (connectionState.tag === "connecting" && connectionState.oidcConnectionType) {
34
+ if (connectionState?.tag === "connecting" && connectionState.oidcConnectionType) {
27
35
  additionalPromptForConnectivity.push({
28
36
  type: "text",
29
37
  text: `The user needs to finish their OIDC connection by opening '${connectionState.oidcLoginUrl}' in the browser and use the following user code: '${connectionState.oidcUserCode}'`,
@@ -38,6 +46,20 @@ const connectionErrorHandler = (error, { availableTools, connectionState }) => {
38
46
  });
39
47
  }
40
48
  switch (error.code) {
49
+ case errors_js_1.ErrorCodes.UnknownConnectionId:
50
+ return {
51
+ errorHandled: true,
52
+ result: {
53
+ content: [
54
+ {
55
+ type: "text",
56
+ text: `${error.message} Call the "list-connections" tool to see the active connections, or establish a new one and retry with the connectionId it returns.`,
57
+ },
58
+ ...additionalPromptForConnectivity,
59
+ ],
60
+ isError: true,
61
+ },
62
+ };
41
63
  case errors_js_1.ErrorCodes.NotConnectedToMongoDB:
42
64
  return {
43
65
  errorHandled: true,
@@ -1 +1 @@
1
- {"version":3,"file":"connectionErrorHandler.js","sourceRoot":"","sources":["../../../src/common/connectionErrorHandler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"connectionErrorHandler.js","sourceRoot":"","sources":["../../../src/common/connectionErrorHandler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,196 @@
1
+ import type { NodeDriverServiceProvider } from "@mongosh/service-provider-node-driver";
2
+ import type { DeviceId } from "../helpers/deviceId.js";
3
+ import type { LoggerBase } from "./logging/index.js";
4
+ import type { UserConfig } from "./config/userConfig.js";
5
+ import type { AnyConnectionState, ConnectionManager, ConnectionSettings } from "./connectionManager.js";
6
+ /**
7
+ * The reserved, well-known id of the connection seeded from the `connectionString`
8
+ * config option. Deliberately has no random suffix: it is meant to be citable in
9
+ * docs and tool descriptions, there is exactly one per server, and guessing it on
10
+ * a server without a configured connection string fails with an instructive error.
11
+ */
12
+ export declare const PRECONFIGURED_CONNECTION_ID = "preconfigured";
13
+ export type ConnectionSource = "explicit" | "preconfigured";
14
+ export type CreateConnectionEntryOptions = {
15
+ /**
16
+ * Label for the connection — e.g. a host or cluster name. Stored on the
17
+ * entry slugified and disambiguated with a short random suffix, and
18
+ * surfaced in connection listings. Labels are not identifiers: connections
19
+ * are only ever addressed by their opaque connectionId.
20
+ */
21
+ name: string;
22
+ /**
23
+ * Name of the MCP client the connection is established for; embedded in
24
+ * the driver `appName` so connections are attributable in server logs.
25
+ */
26
+ clientName?: string;
27
+ /**
28
+ * Cleanup invoked when the connection is revoked (explicit disconnect,
29
+ * connection-limit overflow, or store shutdown) — e.g. deleting
30
+ * credentials provisioned for the connection. Runs at most once; failures
31
+ * are logged, never thrown.
32
+ */
33
+ onRevoke?: () => Promise<void>;
34
+ };
35
+ export type CreateConnectionOptions = {
36
+ /** The connection string and driver options to dial with. */
37
+ settings: ConnectionSettings;
38
+ /**
39
+ * Optional label for the connection. Stored on the entry slugified and
40
+ * disambiguated with a short random suffix, and surfaced in connection
41
+ * listings. Generated from the Atlas cluster name or the connection
42
+ * string's host when omitted. Labels are not identifiers: connections are
43
+ * only ever addressed by their opaque connectionId.
44
+ */
45
+ name?: string;
46
+ /**
47
+ * Name of the MCP client the connection is established for; embedded in
48
+ * the driver `appName` so connections are attributable in server logs.
49
+ */
50
+ clientName?: string;
51
+ };
52
+ /**
53
+ * A named collection of MongoDB connections addressed by opaque connection
54
+ * ids ("handles"). Consumers establish connections via
55
+ * {@link ConnectionRegistry.connect} (or {@link ConnectionRegistry.createEntry}
56
+ * when they drive the dialing themselves) and refer to them everywhere else by
57
+ * the returned entry's id.
58
+ *
59
+ * A registry is always fully bound to the connections it can see: instances
60
+ * are obtained from {@link MCPConnectionStore.view} (which fixes the
61
+ * visibility scope at creation time) or supplied by an embedder. Consequently
62
+ * no method takes any notion of caller identity, scope, or context.
63
+ *
64
+ * Every method is asynchronous: implementations may hold entries in memory
65
+ * (like the default store) or back them with external storage, doing I/O on
66
+ * each lookup.
67
+ */
68
+ export interface ConnectionRegistry {
69
+ /** Creates an entry without dialing it, for callers that drive the dial themselves (e.g. retrying connect flows). */
70
+ createEntry(opts: CreateConnectionEntryOptions): Promise<ConnectionEntry>;
71
+ /** Creates an entry and dials it. A failed dial leaves no entry behind. */
72
+ connect(opts: CreateConnectionOptions): Promise<ConnectionEntry>;
73
+ /** Looks up an entry and marks it as used. */
74
+ get(connectionId: string): Promise<ConnectionEntry | undefined>;
75
+ /** Looks up an entry without affecting LRU ordering (telemetry, error handling). */
76
+ peek(connectionId: string): Promise<ConnectionEntry | undefined>;
77
+ /** Entries matching a predicate, without affecting LRU ordering. */
78
+ find(predicate: (entry: ConnectionEntry) => boolean): Promise<ConnectionEntry[]>;
79
+ /** Resolves a handle to a live service provider; throws `UnknownConnectionId` for absent handles. */
80
+ resolve(connectionId: string): Promise<NodeDriverServiceProvider>;
81
+ /**
82
+ * Closes the identified connection. Explicit entries are revoked — the
83
+ * connectionId stops resolving; the preconfigured entry is closed but
84
+ * remains available and re-dials on next use. Throws `UnknownConnectionId`
85
+ * for absent handles, like {@link ConnectionRegistry.resolve}.
86
+ */
87
+ disconnect(connectionId: string): Promise<void>;
88
+ /** Disconnects every entry reachable through this registry object. */
89
+ closeAll(): Promise<void>;
90
+ }
91
+ type ConnectionEntryOptions = {
92
+ connectionId: string;
93
+ name: string;
94
+ source: ConnectionSource;
95
+ manager: ConnectionManager;
96
+ onRevoke?: () => Promise<void>;
97
+ };
98
+ /**
99
+ * A named connection held by a {@link ConnectionRegistry}. Each entry owns its
100
+ * own {@link ConnectionManager} (dialing, state machine, OIDC handling), so the
101
+ * registry is a collection of independent connection lifecycles keyed by handle.
102
+ */
103
+ export declare class ConnectionEntry {
104
+ /**
105
+ * The opaque handle the connection is addressed by — a UUID with no
106
+ * derivable structure. The one exception is the preconfigured entry, whose
107
+ * id is the well-known literal "preconfigured".
108
+ */
109
+ readonly connectionId: string;
110
+ /**
111
+ * Human/model-readable label: the supplied or generated name, slugified
112
+ * and suffixed for disambiguation (e.g. `my-project-cluster0-4f2a`).
113
+ */
114
+ readonly name: string;
115
+ readonly source: ConnectionSource;
116
+ readonly createdAt: Date;
117
+ lastUsedAt: Date;
118
+ lastError?: string;
119
+ /** Revocation cleanup armed at creation; see {@link CreateConnectionEntryOptions.onRevoke}. */
120
+ private onRevoke?;
121
+ private readonly manager;
122
+ constructor({ connectionId, name, source, manager, onRevoke }: ConnectionEntryOptions);
123
+ get state(): AnyConnectionState;
124
+ /**
125
+ * Invokes the revocation cleanup supplied at creation and disarms it, so
126
+ * the cleanup runs at most once even when triggered both directly and by
127
+ * a later revocation.
128
+ */
129
+ runRevokeCleanup(): Promise<void>;
130
+ connect(settings: ConnectionSettings): Promise<AnyConnectionState>;
131
+ /**
132
+ * Returns the live service provider or throws a `NotConnectedToMongoDB` error
133
+ * describing why the entry is not usable (Atlas dial still in progress, OIDC
134
+ * flow pending, or plain not connected).
135
+ */
136
+ getServiceProvider(): NodeDriverServiceProvider;
137
+ isSearchSupported(logger: LoggerBase): Promise<boolean>;
138
+ assertSearchSupported(logger: LoggerBase): Promise<void>;
139
+ close(): Promise<void>;
140
+ }
141
+ export type CreateConnectionManagerFn = () => ConnectionManager;
142
+ export type ConnectionStoreOptions = {
143
+ userConfig: UserConfig;
144
+ logger: LoggerBase;
145
+ deviceId: DeviceId;
146
+ /** Override the per-entry connection manager (tests, embedders). */
147
+ createConnectionManager?: CreateConnectionManagerFn;
148
+ };
149
+ /**
150
+ * Owns the app-level storage and lifecycle of MongoDB connection handles: the
151
+ * entry map, the preconfigured entry seeded from a configured connection
152
+ * string, per-scope connection limits, and shutdown. Consumers never hold the
153
+ * store directly — they access entries through {@link ConnectionRegistry}
154
+ * views minted with {@link MCPConnectionStore.view}.
155
+ */
156
+ export declare class MCPConnectionStore {
157
+ private readonly entries;
158
+ private readonly userConfig;
159
+ private readonly logger;
160
+ private readonly createConnectionManager;
161
+ private preconfiguredDial?;
162
+ constructor(options: ConnectionStoreOptions);
163
+ /**
164
+ * Returns a {@link ConnectionRegistry} over this store. When `scope` is
165
+ * provided, entries created through the returned registry are tagged with
166
+ * it and the registry only surfaces entries of that scope plus shared ones
167
+ * (`entry.scope === undefined`, e.g. the preconfigured entry) — invisible
168
+ * handles behave exactly like absent ones. When `scope` is omitted, the
169
+ * registry sees every entry and creates shared ones.
170
+ *
171
+ * `closeAll()` on the returned registry disconnects only the entries it
172
+ * can reach; the preconfigured entry is closed-but-kept per its usual
173
+ * disconnect semantics.
174
+ */
175
+ view(scope?: string): ConnectionRegistry;
176
+ /** Closes and removes every entry, including the preconfigured one. For process/runner shutdown. */
177
+ closeAll(): Promise<void>;
178
+ private addEntry;
179
+ private dialPreconfigured;
180
+ /**
181
+ * Enforces `maxActiveConnections` per scope, counting explicit entries only
182
+ * (the preconfigured entry is pinned). Per-scope counting means one scope
183
+ * (e.g. session) cannot evict another's handles.
184
+ */
185
+ private enforceLimit;
186
+ private revoke;
187
+ }
188
+ /**
189
+ * Slug source for Atlas cluster handles: `<projectName>-<clusterName>`.
190
+ * Cluster names are only unique within a project, so the project name
191
+ * disambiguates; when the combination exceeds the slug budget, the project
192
+ * half is truncated first so the cluster name always survives.
193
+ */
194
+ export declare function atlasClusterSlug(projectName: string | undefined, clusterName: string): string;
195
+ export {};
196
+ //# sourceMappingURL=connectionRegistry.d.ts.map