mongodb-mcp-server 1.3.0-pre.1 → 1.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (468) hide show
  1. package/README.md +56 -2
  2. package/dist/cjs/common/atlas/apiClient.d.ts.map +1 -1
  3. package/dist/cjs/common/config/configOverrides.js.map +1 -1
  4. package/dist/cjs/common/config/configUtils.d.ts +0 -1
  5. package/dist/cjs/common/config/configUtils.d.ts.map +1 -1
  6. package/dist/cjs/common/config/configUtils.js +2 -12
  7. package/dist/cjs/common/config/configUtils.js.map +1 -1
  8. package/dist/cjs/common/config/createUserConfig.d.ts +6 -7
  9. package/dist/cjs/common/config/createUserConfig.d.ts.map +1 -1
  10. package/dist/cjs/common/config/createUserConfig.js +87 -96
  11. package/dist/cjs/common/config/createUserConfig.js.map +1 -1
  12. package/dist/cjs/common/config/userConfig.d.ts +82 -2
  13. package/dist/cjs/common/config/userConfig.d.ts.map +1 -1
  14. package/dist/cjs/common/config/userConfig.js +12 -6
  15. package/dist/cjs/common/config/userConfig.js.map +1 -1
  16. package/dist/cjs/common/packageInfo.js +1 -1
  17. package/dist/cjs/common/packageInfo.js.map +1 -1
  18. package/dist/cjs/elicitation.d.ts +13 -2
  19. package/dist/cjs/elicitation.d.ts.map +1 -1
  20. package/dist/cjs/elicitation.js +1 -0
  21. package/dist/cjs/elicitation.js.map +1 -1
  22. package/dist/cjs/index.d.ts.map +1 -1
  23. package/dist/cjs/index.js +12 -1
  24. package/dist/cjs/index.js.map +1 -1
  25. package/dist/cjs/lib.d.ts +5 -4
  26. package/dist/cjs/lib.d.ts.map +1 -1
  27. package/dist/cjs/lib.js +9 -1
  28. package/dist/cjs/lib.js.map +1 -1
  29. package/dist/cjs/server.d.ts +14 -5
  30. package/dist/cjs/server.d.ts.map +1 -1
  31. package/dist/cjs/server.js +2 -0
  32. package/dist/cjs/server.js.map +1 -1
  33. package/dist/cjs/tools/args.d.ts.map +1 -1
  34. package/dist/cjs/tools/args.js.map +1 -1
  35. package/dist/cjs/tools/atlas/atlasTool.d.ts +4 -3
  36. package/dist/cjs/tools/atlas/atlasTool.d.ts.map +1 -1
  37. package/dist/cjs/tools/atlas/atlasTool.js +5 -9
  38. package/dist/cjs/tools/atlas/atlasTool.js.map +1 -1
  39. package/dist/cjs/tools/atlas/connect/connectCluster.d.ts +4 -3
  40. package/dist/cjs/tools/atlas/connect/connectCluster.d.ts.map +1 -1
  41. package/dist/cjs/tools/atlas/connect/connectCluster.js +4 -6
  42. package/dist/cjs/tools/atlas/connect/connectCluster.js.map +1 -1
  43. package/dist/cjs/tools/atlas/create/createAccessList.d.ts +1 -1
  44. package/dist/cjs/tools/atlas/create/createAccessList.d.ts.map +1 -1
  45. package/dist/cjs/tools/atlas/create/createAccessList.js +1 -1
  46. package/dist/cjs/tools/atlas/create/createAccessList.js.map +1 -1
  47. package/dist/cjs/tools/atlas/create/createDBUser.d.ts +1 -1
  48. package/dist/cjs/tools/atlas/create/createDBUser.d.ts.map +1 -1
  49. package/dist/cjs/tools/atlas/create/createDBUser.js +1 -1
  50. package/dist/cjs/tools/atlas/create/createDBUser.js.map +1 -1
  51. package/dist/cjs/tools/atlas/create/createFreeCluster.d.ts +1 -1
  52. package/dist/cjs/tools/atlas/create/createFreeCluster.d.ts.map +1 -1
  53. package/dist/cjs/tools/atlas/create/createFreeCluster.js +1 -1
  54. package/dist/cjs/tools/atlas/create/createFreeCluster.js.map +1 -1
  55. package/dist/cjs/tools/atlas/create/createProject.d.ts +1 -1
  56. package/dist/cjs/tools/atlas/create/createProject.d.ts.map +1 -1
  57. package/dist/cjs/tools/atlas/create/createProject.js +1 -1
  58. package/dist/cjs/tools/atlas/create/createProject.js.map +1 -1
  59. package/dist/cjs/tools/atlas/read/getPerformanceAdvisor.d.ts +5 -4
  60. package/dist/cjs/tools/atlas/read/getPerformanceAdvisor.d.ts.map +1 -1
  61. package/dist/cjs/tools/atlas/read/getPerformanceAdvisor.js +3 -3
  62. package/dist/cjs/tools/atlas/read/getPerformanceAdvisor.js.map +1 -1
  63. package/dist/cjs/tools/atlas/read/inspectAccessList.d.ts +1 -1
  64. package/dist/cjs/tools/atlas/read/inspectAccessList.d.ts.map +1 -1
  65. package/dist/cjs/tools/atlas/read/inspectAccessList.js +1 -1
  66. package/dist/cjs/tools/atlas/read/inspectAccessList.js.map +1 -1
  67. package/dist/cjs/tools/atlas/read/inspectCluster.d.ts +1 -1
  68. package/dist/cjs/tools/atlas/read/inspectCluster.d.ts.map +1 -1
  69. package/dist/cjs/tools/atlas/read/inspectCluster.js +1 -1
  70. package/dist/cjs/tools/atlas/read/inspectCluster.js.map +1 -1
  71. package/dist/cjs/tools/atlas/read/listAlerts.d.ts +1 -1
  72. package/dist/cjs/tools/atlas/read/listAlerts.d.ts.map +1 -1
  73. package/dist/cjs/tools/atlas/read/listAlerts.js +1 -1
  74. package/dist/cjs/tools/atlas/read/listAlerts.js.map +1 -1
  75. package/dist/cjs/tools/atlas/read/listClusters.d.ts +1 -1
  76. package/dist/cjs/tools/atlas/read/listClusters.d.ts.map +1 -1
  77. package/dist/cjs/tools/atlas/read/listClusters.js +1 -1
  78. package/dist/cjs/tools/atlas/read/listClusters.js.map +1 -1
  79. package/dist/cjs/tools/atlas/read/listDBUsers.d.ts +1 -1
  80. package/dist/cjs/tools/atlas/read/listDBUsers.d.ts.map +1 -1
  81. package/dist/cjs/tools/atlas/read/listDBUsers.js +1 -1
  82. package/dist/cjs/tools/atlas/read/listDBUsers.js.map +1 -1
  83. package/dist/cjs/tools/atlas/read/listOrgs.d.ts +1 -1
  84. package/dist/cjs/tools/atlas/read/listOrgs.d.ts.map +1 -1
  85. package/dist/cjs/tools/atlas/read/listOrgs.js +1 -1
  86. package/dist/cjs/tools/atlas/read/listOrgs.js.map +1 -1
  87. package/dist/cjs/tools/atlas/read/listProjects.d.ts +1 -1
  88. package/dist/cjs/tools/atlas/read/listProjects.d.ts.map +1 -1
  89. package/dist/cjs/tools/atlas/read/listProjects.js +1 -1
  90. package/dist/cjs/tools/atlas/read/listProjects.js.map +1 -1
  91. package/dist/cjs/tools/atlas/tools.d.ts +13 -14
  92. package/dist/cjs/tools/atlas/tools.d.ts.map +1 -1
  93. package/dist/cjs/tools/atlas/tools.js +27 -29
  94. package/dist/cjs/tools/atlas/tools.js.map +1 -1
  95. package/dist/cjs/tools/atlasLocal/atlasLocalTool.d.ts +9 -6
  96. package/dist/cjs/tools/atlasLocal/atlasLocalTool.d.ts.map +1 -1
  97. package/dist/cjs/tools/atlasLocal/atlasLocalTool.js +6 -7
  98. package/dist/cjs/tools/atlasLocal/atlasLocalTool.js.map +1 -1
  99. package/dist/cjs/tools/atlasLocal/connect/connectDeployment.d.ts +7 -3
  100. package/dist/cjs/tools/atlasLocal/connect/connectDeployment.d.ts.map +1 -1
  101. package/dist/cjs/tools/atlasLocal/connect/connectDeployment.js +4 -4
  102. package/dist/cjs/tools/atlasLocal/connect/connectDeployment.js.map +1 -1
  103. package/dist/cjs/tools/atlasLocal/create/createDeployment.d.ts +7 -3
  104. package/dist/cjs/tools/atlasLocal/create/createDeployment.d.ts.map +1 -1
  105. package/dist/cjs/tools/atlasLocal/create/createDeployment.js +8 -2
  106. package/dist/cjs/tools/atlasLocal/create/createDeployment.js.map +1 -1
  107. package/dist/cjs/tools/atlasLocal/delete/deleteDeployment.d.ts +4 -2
  108. package/dist/cjs/tools/atlasLocal/delete/deleteDeployment.d.ts.map +1 -1
  109. package/dist/cjs/tools/atlasLocal/delete/deleteDeployment.js +2 -2
  110. package/dist/cjs/tools/atlasLocal/delete/deleteDeployment.js.map +1 -1
  111. package/dist/cjs/tools/atlasLocal/read/listDeployments.d.ts +5 -3
  112. package/dist/cjs/tools/atlasLocal/read/listDeployments.d.ts.map +1 -1
  113. package/dist/cjs/tools/atlasLocal/read/listDeployments.js +2 -2
  114. package/dist/cjs/tools/atlasLocal/read/listDeployments.js.map +1 -1
  115. package/dist/cjs/tools/atlasLocal/tools.d.ts +4 -5
  116. package/dist/cjs/tools/atlasLocal/tools.d.ts.map +1 -1
  117. package/dist/cjs/tools/atlasLocal/tools.js +9 -6
  118. package/dist/cjs/tools/atlasLocal/tools.js.map +1 -1
  119. package/dist/cjs/tools/index.d.ts +6 -6
  120. package/dist/cjs/tools/index.d.ts.map +1 -1
  121. package/dist/cjs/tools/index.js +51 -9
  122. package/dist/cjs/tools/index.js.map +1 -1
  123. package/dist/cjs/tools/mongodb/connect/connect.d.ts +2 -2
  124. package/dist/cjs/tools/mongodb/connect/connect.d.ts.map +1 -1
  125. package/dist/cjs/tools/mongodb/connect/connect.js +5 -5
  126. package/dist/cjs/tools/mongodb/connect/connect.js.map +1 -1
  127. package/dist/cjs/tools/mongodb/connect/switchConnection.d.ts +2 -2
  128. package/dist/cjs/tools/mongodb/connect/switchConnection.d.ts.map +1 -1
  129. package/dist/cjs/tools/mongodb/connect/switchConnection.js +5 -5
  130. package/dist/cjs/tools/mongodb/connect/switchConnection.js.map +1 -1
  131. package/dist/cjs/tools/mongodb/create/createCollection.d.ts +1 -1
  132. package/dist/cjs/tools/mongodb/create/createCollection.d.ts.map +1 -1
  133. package/dist/cjs/tools/mongodb/create/createCollection.js +1 -1
  134. package/dist/cjs/tools/mongodb/create/createCollection.js.map +1 -1
  135. package/dist/cjs/tools/mongodb/create/createIndex.d.ts +80 -25
  136. package/dist/cjs/tools/mongodb/create/createIndex.d.ts.map +1 -1
  137. package/dist/cjs/tools/mongodb/create/createIndex.js +81 -7
  138. package/dist/cjs/tools/mongodb/create/createIndex.js.map +1 -1
  139. package/dist/cjs/tools/mongodb/create/insertMany.d.ts +8 -4
  140. package/dist/cjs/tools/mongodb/create/insertMany.d.ts.map +1 -1
  141. package/dist/cjs/tools/mongodb/create/insertMany.js +20 -18
  142. package/dist/cjs/tools/mongodb/create/insertMany.js.map +1 -1
  143. package/dist/cjs/tools/mongodb/delete/deleteMany.d.ts +1 -1
  144. package/dist/cjs/tools/mongodb/delete/deleteMany.d.ts.map +1 -1
  145. package/dist/cjs/tools/mongodb/delete/deleteMany.js +1 -1
  146. package/dist/cjs/tools/mongodb/delete/deleteMany.js.map +1 -1
  147. package/dist/cjs/tools/mongodb/delete/dropCollection.d.ts +1 -1
  148. package/dist/cjs/tools/mongodb/delete/dropCollection.d.ts.map +1 -1
  149. package/dist/cjs/tools/mongodb/delete/dropCollection.js +1 -1
  150. package/dist/cjs/tools/mongodb/delete/dropCollection.js.map +1 -1
  151. package/dist/cjs/tools/mongodb/delete/dropDatabase.d.ts +1 -1
  152. package/dist/cjs/tools/mongodb/delete/dropDatabase.d.ts.map +1 -1
  153. package/dist/cjs/tools/mongodb/delete/dropDatabase.js +1 -1
  154. package/dist/cjs/tools/mongodb/delete/dropDatabase.js.map +1 -1
  155. package/dist/cjs/tools/mongodb/delete/dropIndex.d.ts +1 -1
  156. package/dist/cjs/tools/mongodb/delete/dropIndex.d.ts.map +1 -1
  157. package/dist/cjs/tools/mongodb/delete/dropIndex.js +1 -1
  158. package/dist/cjs/tools/mongodb/delete/dropIndex.js.map +1 -1
  159. package/dist/cjs/tools/mongodb/metadata/collectionIndexes.d.ts +1 -1
  160. package/dist/cjs/tools/mongodb/metadata/collectionIndexes.d.ts.map +1 -1
  161. package/dist/cjs/tools/mongodb/metadata/collectionIndexes.js +1 -1
  162. package/dist/cjs/tools/mongodb/metadata/collectionIndexes.js.map +1 -1
  163. package/dist/cjs/tools/mongodb/metadata/collectionSchema.d.ts +1 -1
  164. package/dist/cjs/tools/mongodb/metadata/collectionSchema.d.ts.map +1 -1
  165. package/dist/cjs/tools/mongodb/metadata/collectionSchema.js +1 -1
  166. package/dist/cjs/tools/mongodb/metadata/collectionSchema.js.map +1 -1
  167. package/dist/cjs/tools/mongodb/metadata/collectionStorageSize.d.ts +1 -1
  168. package/dist/cjs/tools/mongodb/metadata/collectionStorageSize.d.ts.map +1 -1
  169. package/dist/cjs/tools/mongodb/metadata/collectionStorageSize.js +1 -1
  170. package/dist/cjs/tools/mongodb/metadata/collectionStorageSize.js.map +1 -1
  171. package/dist/cjs/tools/mongodb/metadata/dbStats.d.ts +1 -1
  172. package/dist/cjs/tools/mongodb/metadata/dbStats.d.ts.map +1 -1
  173. package/dist/cjs/tools/mongodb/metadata/dbStats.js +1 -1
  174. package/dist/cjs/tools/mongodb/metadata/dbStats.js.map +1 -1
  175. package/dist/cjs/tools/mongodb/metadata/explain.d.ts +4 -4
  176. package/dist/cjs/tools/mongodb/metadata/explain.d.ts.map +1 -1
  177. package/dist/cjs/tools/mongodb/metadata/explain.js +1 -1
  178. package/dist/cjs/tools/mongodb/metadata/explain.js.map +1 -1
  179. package/dist/cjs/tools/mongodb/metadata/listCollections.d.ts +1 -1
  180. package/dist/cjs/tools/mongodb/metadata/listCollections.d.ts.map +1 -1
  181. package/dist/cjs/tools/mongodb/metadata/listCollections.js +1 -1
  182. package/dist/cjs/tools/mongodb/metadata/listCollections.js.map +1 -1
  183. package/dist/cjs/tools/mongodb/metadata/listDatabases.d.ts +1 -1
  184. package/dist/cjs/tools/mongodb/metadata/listDatabases.d.ts.map +1 -1
  185. package/dist/cjs/tools/mongodb/metadata/listDatabases.js +1 -1
  186. package/dist/cjs/tools/mongodb/metadata/listDatabases.js.map +1 -1
  187. package/dist/cjs/tools/mongodb/metadata/logs.d.ts +1 -1
  188. package/dist/cjs/tools/mongodb/metadata/logs.d.ts.map +1 -1
  189. package/dist/cjs/tools/mongodb/metadata/logs.js +1 -1
  190. package/dist/cjs/tools/mongodb/metadata/logs.js.map +1 -1
  191. package/dist/cjs/tools/mongodb/mongodbSchemas.d.ts +1 -1
  192. package/dist/cjs/tools/mongodb/mongodbTool.d.ts +4 -3
  193. package/dist/cjs/tools/mongodb/mongodbTool.d.ts.map +1 -1
  194. package/dist/cjs/tools/mongodb/mongodbTool.js +3 -6
  195. package/dist/cjs/tools/mongodb/mongodbTool.js.map +1 -1
  196. package/dist/cjs/tools/mongodb/read/aggregate.d.ts +3 -3
  197. package/dist/cjs/tools/mongodb/read/aggregate.d.ts.map +1 -1
  198. package/dist/cjs/tools/mongodb/read/aggregate.js +8 -4
  199. package/dist/cjs/tools/mongodb/read/aggregate.js.map +1 -1
  200. package/dist/cjs/tools/mongodb/read/count.d.ts +1 -1
  201. package/dist/cjs/tools/mongodb/read/count.d.ts.map +1 -1
  202. package/dist/cjs/tools/mongodb/read/count.js +1 -1
  203. package/dist/cjs/tools/mongodb/read/count.js.map +1 -1
  204. package/dist/cjs/tools/mongodb/read/export.d.ts +4 -4
  205. package/dist/cjs/tools/mongodb/read/export.d.ts.map +1 -1
  206. package/dist/cjs/tools/mongodb/read/export.js +1 -1
  207. package/dist/cjs/tools/mongodb/read/export.js.map +1 -1
  208. package/dist/cjs/tools/mongodb/read/find.d.ts +1 -1
  209. package/dist/cjs/tools/mongodb/read/find.d.ts.map +1 -1
  210. package/dist/cjs/tools/mongodb/read/find.js +1 -1
  211. package/dist/cjs/tools/mongodb/read/find.js.map +1 -1
  212. package/dist/cjs/tools/mongodb/tools.d.ts +23 -24
  213. package/dist/cjs/tools/mongodb/tools.d.ts.map +1 -1
  214. package/dist/cjs/tools/mongodb/tools.js +47 -49
  215. package/dist/cjs/tools/mongodb/tools.js.map +1 -1
  216. package/dist/cjs/tools/mongodb/update/renameCollection.d.ts +1 -1
  217. package/dist/cjs/tools/mongodb/update/renameCollection.d.ts.map +1 -1
  218. package/dist/cjs/tools/mongodb/update/renameCollection.js +1 -1
  219. package/dist/cjs/tools/mongodb/update/renameCollection.js.map +1 -1
  220. package/dist/cjs/tools/mongodb/update/updateMany.d.ts +1 -1
  221. package/dist/cjs/tools/mongodb/update/updateMany.d.ts.map +1 -1
  222. package/dist/cjs/tools/mongodb/update/updateMany.js +1 -1
  223. package/dist/cjs/tools/mongodb/update/updateMany.js.map +1 -1
  224. package/dist/cjs/tools/tool.d.ts +349 -17
  225. package/dist/cjs/tools/tool.d.ts.map +1 -1
  226. package/dist/cjs/tools/tool.js +154 -14
  227. package/dist/cjs/tools/tool.js.map +1 -1
  228. package/dist/cjs/transports/base.d.ts +138 -4
  229. package/dist/cjs/transports/base.d.ts.map +1 -1
  230. package/dist/cjs/transports/base.js.map +1 -1
  231. package/dist/esm/common/atlas/apiClient.d.ts.map +1 -1
  232. package/dist/esm/common/config/configOverrides.js.map +1 -1
  233. package/dist/esm/common/config/configUtils.d.ts +0 -1
  234. package/dist/esm/common/config/configUtils.d.ts.map +1 -1
  235. package/dist/esm/common/config/configUtils.js +1 -10
  236. package/dist/esm/common/config/configUtils.js.map +1 -1
  237. package/dist/esm/common/config/createUserConfig.d.ts +6 -7
  238. package/dist/esm/common/config/createUserConfig.d.ts.map +1 -1
  239. package/dist/esm/common/config/createUserConfig.js +88 -93
  240. package/dist/esm/common/config/createUserConfig.js.map +1 -1
  241. package/dist/esm/common/config/userConfig.d.ts +82 -2
  242. package/dist/esm/common/config/userConfig.d.ts.map +1 -1
  243. package/dist/esm/common/config/userConfig.js +11 -5
  244. package/dist/esm/common/config/userConfig.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/elicitation.d.ts +13 -2
  248. package/dist/esm/elicitation.d.ts.map +1 -1
  249. package/dist/esm/elicitation.js +1 -0
  250. package/dist/esm/elicitation.js.map +1 -1
  251. package/dist/esm/index.d.ts.map +1 -1
  252. package/dist/esm/index.js +12 -1
  253. package/dist/esm/index.js.map +1 -1
  254. package/dist/esm/lib.d.ts +5 -4
  255. package/dist/esm/lib.d.ts.map +1 -1
  256. package/dist/esm/lib.js +5 -2
  257. package/dist/esm/lib.js.map +1 -1
  258. package/dist/esm/server.d.ts +14 -5
  259. package/dist/esm/server.d.ts.map +1 -1
  260. package/dist/esm/server.js +2 -0
  261. package/dist/esm/server.js.map +1 -1
  262. package/dist/esm/tools/args.d.ts.map +1 -1
  263. package/dist/esm/tools/args.js.map +1 -1
  264. package/dist/esm/tools/atlas/atlasTool.d.ts +4 -3
  265. package/dist/esm/tools/atlas/atlasTool.d.ts.map +1 -1
  266. package/dist/esm/tools/atlas/atlasTool.js +5 -9
  267. package/dist/esm/tools/atlas/atlasTool.js.map +1 -1
  268. package/dist/esm/tools/atlas/connect/connectCluster.d.ts +4 -3
  269. package/dist/esm/tools/atlas/connect/connectCluster.d.ts.map +1 -1
  270. package/dist/esm/tools/atlas/connect/connectCluster.js +4 -6
  271. package/dist/esm/tools/atlas/connect/connectCluster.js.map +1 -1
  272. package/dist/esm/tools/atlas/create/createAccessList.d.ts +1 -1
  273. package/dist/esm/tools/atlas/create/createAccessList.d.ts.map +1 -1
  274. package/dist/esm/tools/atlas/create/createAccessList.js +1 -1
  275. package/dist/esm/tools/atlas/create/createAccessList.js.map +1 -1
  276. package/dist/esm/tools/atlas/create/createDBUser.d.ts +1 -1
  277. package/dist/esm/tools/atlas/create/createDBUser.d.ts.map +1 -1
  278. package/dist/esm/tools/atlas/create/createDBUser.js +1 -1
  279. package/dist/esm/tools/atlas/create/createDBUser.js.map +1 -1
  280. package/dist/esm/tools/atlas/create/createFreeCluster.d.ts +1 -1
  281. package/dist/esm/tools/atlas/create/createFreeCluster.d.ts.map +1 -1
  282. package/dist/esm/tools/atlas/create/createFreeCluster.js +1 -1
  283. package/dist/esm/tools/atlas/create/createFreeCluster.js.map +1 -1
  284. package/dist/esm/tools/atlas/create/createProject.d.ts +1 -1
  285. package/dist/esm/tools/atlas/create/createProject.d.ts.map +1 -1
  286. package/dist/esm/tools/atlas/create/createProject.js +1 -1
  287. package/dist/esm/tools/atlas/create/createProject.js.map +1 -1
  288. package/dist/esm/tools/atlas/read/getPerformanceAdvisor.d.ts +5 -4
  289. package/dist/esm/tools/atlas/read/getPerformanceAdvisor.d.ts.map +1 -1
  290. package/dist/esm/tools/atlas/read/getPerformanceAdvisor.js +3 -3
  291. package/dist/esm/tools/atlas/read/getPerformanceAdvisor.js.map +1 -1
  292. package/dist/esm/tools/atlas/read/inspectAccessList.d.ts +1 -1
  293. package/dist/esm/tools/atlas/read/inspectAccessList.d.ts.map +1 -1
  294. package/dist/esm/tools/atlas/read/inspectAccessList.js +1 -1
  295. package/dist/esm/tools/atlas/read/inspectAccessList.js.map +1 -1
  296. package/dist/esm/tools/atlas/read/inspectCluster.d.ts +1 -1
  297. package/dist/esm/tools/atlas/read/inspectCluster.d.ts.map +1 -1
  298. package/dist/esm/tools/atlas/read/inspectCluster.js +1 -1
  299. package/dist/esm/tools/atlas/read/inspectCluster.js.map +1 -1
  300. package/dist/esm/tools/atlas/read/listAlerts.d.ts +1 -1
  301. package/dist/esm/tools/atlas/read/listAlerts.d.ts.map +1 -1
  302. package/dist/esm/tools/atlas/read/listAlerts.js +1 -1
  303. package/dist/esm/tools/atlas/read/listAlerts.js.map +1 -1
  304. package/dist/esm/tools/atlas/read/listClusters.d.ts +1 -1
  305. package/dist/esm/tools/atlas/read/listClusters.d.ts.map +1 -1
  306. package/dist/esm/tools/atlas/read/listClusters.js +1 -1
  307. package/dist/esm/tools/atlas/read/listClusters.js.map +1 -1
  308. package/dist/esm/tools/atlas/read/listDBUsers.d.ts +1 -1
  309. package/dist/esm/tools/atlas/read/listDBUsers.d.ts.map +1 -1
  310. package/dist/esm/tools/atlas/read/listDBUsers.js +1 -1
  311. package/dist/esm/tools/atlas/read/listDBUsers.js.map +1 -1
  312. package/dist/esm/tools/atlas/read/listOrgs.d.ts +1 -1
  313. package/dist/esm/tools/atlas/read/listOrgs.d.ts.map +1 -1
  314. package/dist/esm/tools/atlas/read/listOrgs.js +1 -1
  315. package/dist/esm/tools/atlas/read/listOrgs.js.map +1 -1
  316. package/dist/esm/tools/atlas/read/listProjects.d.ts +1 -1
  317. package/dist/esm/tools/atlas/read/listProjects.d.ts.map +1 -1
  318. package/dist/esm/tools/atlas/read/listProjects.js +1 -1
  319. package/dist/esm/tools/atlas/read/listProjects.js.map +1 -1
  320. package/dist/esm/tools/atlas/tools.d.ts +13 -14
  321. package/dist/esm/tools/atlas/tools.d.ts.map +1 -1
  322. package/dist/esm/tools/atlas/tools.js +13 -28
  323. package/dist/esm/tools/atlas/tools.js.map +1 -1
  324. package/dist/esm/tools/atlasLocal/atlasLocalTool.d.ts +9 -6
  325. package/dist/esm/tools/atlasLocal/atlasLocalTool.d.ts.map +1 -1
  326. package/dist/esm/tools/atlasLocal/atlasLocalTool.js +6 -7
  327. package/dist/esm/tools/atlasLocal/atlasLocalTool.js.map +1 -1
  328. package/dist/esm/tools/atlasLocal/connect/connectDeployment.d.ts +7 -3
  329. package/dist/esm/tools/atlasLocal/connect/connectDeployment.d.ts.map +1 -1
  330. package/dist/esm/tools/atlasLocal/connect/connectDeployment.js +4 -4
  331. package/dist/esm/tools/atlasLocal/connect/connectDeployment.js.map +1 -1
  332. package/dist/esm/tools/atlasLocal/create/createDeployment.d.ts +7 -3
  333. package/dist/esm/tools/atlasLocal/create/createDeployment.d.ts.map +1 -1
  334. package/dist/esm/tools/atlasLocal/create/createDeployment.js +5 -2
  335. package/dist/esm/tools/atlasLocal/create/createDeployment.js.map +1 -1
  336. package/dist/esm/tools/atlasLocal/delete/deleteDeployment.d.ts +4 -2
  337. package/dist/esm/tools/atlasLocal/delete/deleteDeployment.d.ts.map +1 -1
  338. package/dist/esm/tools/atlasLocal/delete/deleteDeployment.js +2 -2
  339. package/dist/esm/tools/atlasLocal/delete/deleteDeployment.js.map +1 -1
  340. package/dist/esm/tools/atlasLocal/read/listDeployments.d.ts +5 -3
  341. package/dist/esm/tools/atlasLocal/read/listDeployments.d.ts.map +1 -1
  342. package/dist/esm/tools/atlasLocal/read/listDeployments.js +2 -2
  343. package/dist/esm/tools/atlasLocal/read/listDeployments.js.map +1 -1
  344. package/dist/esm/tools/atlasLocal/tools.d.ts +4 -5
  345. package/dist/esm/tools/atlasLocal/tools.d.ts.map +1 -1
  346. package/dist/esm/tools/atlasLocal/tools.js +4 -5
  347. package/dist/esm/tools/atlasLocal/tools.js.map +1 -1
  348. package/dist/esm/tools/index.d.ts +6 -6
  349. package/dist/esm/tools/index.d.ts.map +1 -1
  350. package/dist/esm/tools/index.js +14 -5
  351. package/dist/esm/tools/index.js.map +1 -1
  352. package/dist/esm/tools/mongodb/connect/connect.d.ts +2 -2
  353. package/dist/esm/tools/mongodb/connect/connect.d.ts.map +1 -1
  354. package/dist/esm/tools/mongodb/connect/connect.js +5 -5
  355. package/dist/esm/tools/mongodb/connect/connect.js.map +1 -1
  356. package/dist/esm/tools/mongodb/connect/switchConnection.d.ts +2 -2
  357. package/dist/esm/tools/mongodb/connect/switchConnection.d.ts.map +1 -1
  358. package/dist/esm/tools/mongodb/connect/switchConnection.js +5 -5
  359. package/dist/esm/tools/mongodb/connect/switchConnection.js.map +1 -1
  360. package/dist/esm/tools/mongodb/create/createCollection.d.ts +1 -1
  361. package/dist/esm/tools/mongodb/create/createCollection.d.ts.map +1 -1
  362. package/dist/esm/tools/mongodb/create/createCollection.js +1 -1
  363. package/dist/esm/tools/mongodb/create/createCollection.js.map +1 -1
  364. package/dist/esm/tools/mongodb/create/createIndex.d.ts +80 -25
  365. package/dist/esm/tools/mongodb/create/createIndex.d.ts.map +1 -1
  366. package/dist/esm/tools/mongodb/create/createIndex.js +81 -7
  367. package/dist/esm/tools/mongodb/create/createIndex.js.map +1 -1
  368. package/dist/esm/tools/mongodb/create/insertMany.d.ts +8 -4
  369. package/dist/esm/tools/mongodb/create/insertMany.d.ts.map +1 -1
  370. package/dist/esm/tools/mongodb/create/insertMany.js +20 -18
  371. package/dist/esm/tools/mongodb/create/insertMany.js.map +1 -1
  372. package/dist/esm/tools/mongodb/delete/deleteMany.d.ts +1 -1
  373. package/dist/esm/tools/mongodb/delete/deleteMany.d.ts.map +1 -1
  374. package/dist/esm/tools/mongodb/delete/deleteMany.js +1 -1
  375. package/dist/esm/tools/mongodb/delete/deleteMany.js.map +1 -1
  376. package/dist/esm/tools/mongodb/delete/dropCollection.d.ts +1 -1
  377. package/dist/esm/tools/mongodb/delete/dropCollection.d.ts.map +1 -1
  378. package/dist/esm/tools/mongodb/delete/dropCollection.js +1 -1
  379. package/dist/esm/tools/mongodb/delete/dropCollection.js.map +1 -1
  380. package/dist/esm/tools/mongodb/delete/dropDatabase.d.ts +1 -1
  381. package/dist/esm/tools/mongodb/delete/dropDatabase.d.ts.map +1 -1
  382. package/dist/esm/tools/mongodb/delete/dropDatabase.js +1 -1
  383. package/dist/esm/tools/mongodb/delete/dropDatabase.js.map +1 -1
  384. package/dist/esm/tools/mongodb/delete/dropIndex.d.ts +1 -1
  385. package/dist/esm/tools/mongodb/delete/dropIndex.d.ts.map +1 -1
  386. package/dist/esm/tools/mongodb/delete/dropIndex.js +1 -1
  387. package/dist/esm/tools/mongodb/delete/dropIndex.js.map +1 -1
  388. package/dist/esm/tools/mongodb/metadata/collectionIndexes.d.ts +1 -1
  389. package/dist/esm/tools/mongodb/metadata/collectionIndexes.d.ts.map +1 -1
  390. package/dist/esm/tools/mongodb/metadata/collectionIndexes.js +1 -1
  391. package/dist/esm/tools/mongodb/metadata/collectionIndexes.js.map +1 -1
  392. package/dist/esm/tools/mongodb/metadata/collectionSchema.d.ts +1 -1
  393. package/dist/esm/tools/mongodb/metadata/collectionSchema.d.ts.map +1 -1
  394. package/dist/esm/tools/mongodb/metadata/collectionSchema.js +1 -1
  395. package/dist/esm/tools/mongodb/metadata/collectionSchema.js.map +1 -1
  396. package/dist/esm/tools/mongodb/metadata/collectionStorageSize.d.ts +1 -1
  397. package/dist/esm/tools/mongodb/metadata/collectionStorageSize.d.ts.map +1 -1
  398. package/dist/esm/tools/mongodb/metadata/collectionStorageSize.js +1 -1
  399. package/dist/esm/tools/mongodb/metadata/collectionStorageSize.js.map +1 -1
  400. package/dist/esm/tools/mongodb/metadata/dbStats.d.ts +1 -1
  401. package/dist/esm/tools/mongodb/metadata/dbStats.d.ts.map +1 -1
  402. package/dist/esm/tools/mongodb/metadata/dbStats.js +1 -1
  403. package/dist/esm/tools/mongodb/metadata/dbStats.js.map +1 -1
  404. package/dist/esm/tools/mongodb/metadata/explain.d.ts +4 -4
  405. package/dist/esm/tools/mongodb/metadata/explain.d.ts.map +1 -1
  406. package/dist/esm/tools/mongodb/metadata/explain.js +1 -1
  407. package/dist/esm/tools/mongodb/metadata/explain.js.map +1 -1
  408. package/dist/esm/tools/mongodb/metadata/listCollections.d.ts +1 -1
  409. package/dist/esm/tools/mongodb/metadata/listCollections.d.ts.map +1 -1
  410. package/dist/esm/tools/mongodb/metadata/listCollections.js +1 -1
  411. package/dist/esm/tools/mongodb/metadata/listCollections.js.map +1 -1
  412. package/dist/esm/tools/mongodb/metadata/listDatabases.d.ts +1 -1
  413. package/dist/esm/tools/mongodb/metadata/listDatabases.d.ts.map +1 -1
  414. package/dist/esm/tools/mongodb/metadata/listDatabases.js +1 -1
  415. package/dist/esm/tools/mongodb/metadata/listDatabases.js.map +1 -1
  416. package/dist/esm/tools/mongodb/metadata/logs.d.ts +1 -1
  417. package/dist/esm/tools/mongodb/metadata/logs.d.ts.map +1 -1
  418. package/dist/esm/tools/mongodb/metadata/logs.js +1 -1
  419. package/dist/esm/tools/mongodb/metadata/logs.js.map +1 -1
  420. package/dist/esm/tools/mongodb/mongodbSchemas.d.ts +1 -1
  421. package/dist/esm/tools/mongodb/mongodbTool.d.ts +4 -3
  422. package/dist/esm/tools/mongodb/mongodbTool.d.ts.map +1 -1
  423. package/dist/esm/tools/mongodb/mongodbTool.js +3 -6
  424. package/dist/esm/tools/mongodb/mongodbTool.js.map +1 -1
  425. package/dist/esm/tools/mongodb/read/aggregate.d.ts +3 -3
  426. package/dist/esm/tools/mongodb/read/aggregate.d.ts.map +1 -1
  427. package/dist/esm/tools/mongodb/read/aggregate.js +8 -4
  428. package/dist/esm/tools/mongodb/read/aggregate.js.map +1 -1
  429. package/dist/esm/tools/mongodb/read/count.d.ts +1 -1
  430. package/dist/esm/tools/mongodb/read/count.d.ts.map +1 -1
  431. package/dist/esm/tools/mongodb/read/count.js +1 -1
  432. package/dist/esm/tools/mongodb/read/count.js.map +1 -1
  433. package/dist/esm/tools/mongodb/read/export.d.ts +4 -4
  434. package/dist/esm/tools/mongodb/read/export.d.ts.map +1 -1
  435. package/dist/esm/tools/mongodb/read/export.js +1 -1
  436. package/dist/esm/tools/mongodb/read/export.js.map +1 -1
  437. package/dist/esm/tools/mongodb/read/find.d.ts +1 -1
  438. package/dist/esm/tools/mongodb/read/find.d.ts.map +1 -1
  439. package/dist/esm/tools/mongodb/read/find.js +1 -1
  440. package/dist/esm/tools/mongodb/read/find.js.map +1 -1
  441. package/dist/esm/tools/mongodb/tools.d.ts +23 -24
  442. package/dist/esm/tools/mongodb/tools.d.ts.map +1 -1
  443. package/dist/esm/tools/mongodb/tools.js +23 -48
  444. package/dist/esm/tools/mongodb/tools.js.map +1 -1
  445. package/dist/esm/tools/mongodb/update/renameCollection.d.ts +1 -1
  446. package/dist/esm/tools/mongodb/update/renameCollection.d.ts.map +1 -1
  447. package/dist/esm/tools/mongodb/update/renameCollection.js +1 -1
  448. package/dist/esm/tools/mongodb/update/renameCollection.js.map +1 -1
  449. package/dist/esm/tools/mongodb/update/updateMany.d.ts +1 -1
  450. package/dist/esm/tools/mongodb/update/updateMany.d.ts.map +1 -1
  451. package/dist/esm/tools/mongodb/update/updateMany.js +1 -1
  452. package/dist/esm/tools/mongodb/update/updateMany.js.map +1 -1
  453. package/dist/esm/tools/tool.d.ts +349 -17
  454. package/dist/esm/tools/tool.d.ts.map +1 -1
  455. package/dist/esm/tools/tool.js +154 -14
  456. package/dist/esm/tools/tool.js.map +1 -1
  457. package/dist/esm/transports/base.d.ts +138 -4
  458. package/dist/esm/transports/base.d.ts.map +1 -1
  459. package/dist/esm/transports/base.js.map +1 -1
  460. package/package.json +8 -9
  461. package/dist/cjs/common/config/argsParserOptions.d.ts +0 -12
  462. package/dist/cjs/common/config/argsParserOptions.d.ts.map +0 -1
  463. package/dist/cjs/common/config/argsParserOptions.js +0 -103
  464. package/dist/cjs/common/config/argsParserOptions.js.map +0 -1
  465. package/dist/esm/common/config/argsParserOptions.d.ts +0 -12
  466. package/dist/esm/common/config/argsParserOptions.d.ts.map +0 -1
  467. package/dist/esm/common/config/argsParserOptions.js +0 -100
  468. package/dist/esm/common/config/argsParserOptions.js.map +0 -1
@@ -10,7 +10,6 @@ export class RenameCollectionTool extends MongoDBToolBase {
10
10
  newName: z.string().describe("The new name for the collection"),
11
11
  dropTarget: z.boolean().optional().default(false).describe("If true, drops the target collection if it exists"),
12
12
  };
13
- this.operationType = "update";
14
13
  }
15
14
  async execute({ database, collection, newName, dropTarget, }) {
16
15
  const provider = await this.ensureConnected();
@@ -54,4 +53,5 @@ export class RenameCollectionTool extends MongoDBToolBase {
54
53
  return super.handleError(error, args);
55
54
  }
56
55
  }
56
+ RenameCollectionTool.operationType = "update";
57
57
  //# sourceMappingURL=renameCollection.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"renameCollection.js","sourceRoot":"","sources":["../../../../../src/tools/mongodb/update/renameCollection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAGrE,MAAM,OAAO,oBAAqB,SAAQ,eAAe;IAAzD;;QACW,SAAI,GAAG,mBAAmB,CAAC;QACxB,gBAAW,GAAG,4CAA4C,CAAC;QAC3D,cAAS,GAAG;YAClB,GAAG,eAAe;YAClB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;YAC/D,UAAU,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,mDAAmD,CAAC;SAClH,CAAC;QACK,kBAAa,GAAkB,QAAQ,CAAC;IAsDnD,CAAC;IApDa,KAAK,CAAC,OAAO,CAAC,EACpB,QAAQ,EACR,UAAU,EACV,OAAO,EACP,UAAU,GACoB;QAC9B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QAC9C,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,gBAAgB,CAAC,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE;YAC1E,UAAU;SACb,CAAC,CAAC;QAEH,OAAO;YACH,OAAO,EAAE;gBACL;oBACI,IAAI,EAAE,eAAe,UAAU,iBAAiB,MAAM,CAAC,cAAc,kBAAkB,QAAQ,IAAI;oBACnG,IAAI,EAAE,MAAM;iBACf;aACJ;SACJ,CAAC;IACN,CAAC;IAES,WAAW,CACjB,KAAc,EACd,IAAqC;QAErC,IAAI,KAAK,YAAY,KAAK,IAAI,UAAU,IAAI,KAAK,EAAE,CAAC;YAChD,QAAQ,KAAK,CAAC,QAAQ,EAAE,CAAC;gBACrB,KAAK,mBAAmB;oBACpB,OAAO;wBACH,OAAO,EAAE;4BACL;gCACI,IAAI,EAAE,kBAAkB,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,UAAU,6BAA6B;gCACrF,IAAI,EAAE,MAAM;6BACf;yBACJ;wBACD,OAAO,EAAE,IAAI;qBAChB,CAAC;gBACN,KAAK,iBAAiB;oBAClB,OAAO;wBACH,OAAO,EAAE;4BACL;gCACI,IAAI,EAAE,kBAAkB,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,UAAU,SAAS,IAAI,CAAC,OAAO,qHAAqH;gCAClM,IAAI,EAAE,MAAM;6BACf;yBACJ;wBACD,OAAO,EAAE,IAAI;qBAChB,CAAC;YACV,CAAC;QACL,CAAC;QAED,OAAO,KAAK,CAAC,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAC1C,CAAC;CACJ"}
1
+ {"version":3,"file":"renameCollection.js","sourceRoot":"","sources":["../../../../../src/tools/mongodb/update/renameCollection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAGrE,MAAM,OAAO,oBAAqB,SAAQ,eAAe;IAAzD;;QACW,SAAI,GAAG,mBAAmB,CAAC;QACxB,gBAAW,GAAG,4CAA4C,CAAC;QAC3D,cAAS,GAAG;YAClB,GAAG,eAAe;YAClB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;YAC/D,UAAU,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,mDAAmD,CAAC;SAClH,CAAC;IAuDN,CAAC;IApDa,KAAK,CAAC,OAAO,CAAC,EACpB,QAAQ,EACR,UAAU,EACV,OAAO,EACP,UAAU,GACoB;QAC9B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QAC9C,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,gBAAgB,CAAC,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE;YAC1E,UAAU;SACb,CAAC,CAAC;QAEH,OAAO;YACH,OAAO,EAAE;gBACL;oBACI,IAAI,EAAE,eAAe,UAAU,iBAAiB,MAAM,CAAC,cAAc,kBAAkB,QAAQ,IAAI;oBACnG,IAAI,EAAE,MAAM;iBACf;aACJ;SACJ,CAAC;IACN,CAAC;IAES,WAAW,CACjB,KAAc,EACd,IAAqC;QAErC,IAAI,KAAK,YAAY,KAAK,IAAI,UAAU,IAAI,KAAK,EAAE,CAAC;YAChD,QAAQ,KAAK,CAAC,QAAQ,EAAE,CAAC;gBACrB,KAAK,mBAAmB;oBACpB,OAAO;wBACH,OAAO,EAAE;4BACL;gCACI,IAAI,EAAE,kBAAkB,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,UAAU,6BAA6B;gCACrF,IAAI,EAAE,MAAM;6BACf;yBACJ;wBACD,OAAO,EAAE,IAAI;qBAChB,CAAC;gBACN,KAAK,iBAAiB;oBAClB,OAAO;wBACH,OAAO,EAAE;4BACL;gCACI,IAAI,EAAE,kBAAkB,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,UAAU,SAAS,IAAI,CAAC,OAAO,qHAAqH;gCAClM,IAAI,EAAE,MAAM;6BACf;yBACJ;wBACD,OAAO,EAAE,IAAI;qBAChB,CAAC;YACV,CAAC;QACL,CAAC;QAED,OAAO,KAAK,CAAC,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAC1C,CAAC;;AArDM,kCAAa,GAAkB,QAAQ,AAA1B,CAA2B"}
@@ -12,7 +12,7 @@ export declare class UpdateManyTool extends MongoDBToolBase {
12
12
  database: z.ZodString;
13
13
  collection: z.ZodString;
14
14
  };
15
- operationType: OperationType;
15
+ static operationType: OperationType;
16
16
  protected execute({ database, collection, filter, update, upsert, }: ToolArgs<typeof this.argsShape>): Promise<CallToolResult>;
17
17
  }
18
18
  //# sourceMappingURL=updateMany.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"updateMany.d.ts","sourceRoot":"","sources":["../../../../../src/tools/mongodb/update/updateMany.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAmB,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACrE,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAI7D,qBAAa,cAAe,SAAQ,eAAe;IACxC,IAAI,SAAiB;IAC5B,SAAS,CAAC,WAAW,SAA4E;IACjG,SAAS,CAAC,SAAS;;;;;;MAcjB;IACK,aAAa,EAAE,aAAa,CAAY;cAE/B,OAAO,CAAC,EACpB,QAAQ,EACR,UAAU,EACV,MAAM,EACN,MAAM,EACN,MAAM,GACT,EAAE,QAAQ,CAAC,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,cAAc,CAAC;CAiD/D"}
1
+ {"version":3,"file":"updateMany.d.ts","sourceRoot":"","sources":["../../../../../src/tools/mongodb/update/updateMany.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAmB,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACrE,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAI7D,qBAAa,cAAe,SAAQ,eAAe;IACxC,IAAI,SAAiB;IAC5B,SAAS,CAAC,WAAW,SAA4E;IACjG,SAAS,CAAC,SAAS;;;;;;MAcjB;IACF,MAAM,CAAC,aAAa,EAAE,aAAa,CAAY;cAE/B,OAAO,CAAC,EACpB,QAAQ,EACR,UAAU,EACV,MAAM,EACN,MAAM,EACN,MAAM,GACT,EAAE,QAAQ,CAAC,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,cAAc,CAAC;CAiD/D"}
@@ -18,7 +18,6 @@ export class UpdateManyTool extends MongoDBToolBase {
18
18
  .optional()
19
19
  .describe("Controls whether to insert a new document if no documents match the filter"),
20
20
  };
21
- this.operationType = "update";
22
21
  }
23
22
  async execute({ database, collection, filter, update, upsert, }) {
24
23
  const provider = await this.ensureConnected();
@@ -67,4 +66,5 @@ export class UpdateManyTool extends MongoDBToolBase {
67
66
  };
68
67
  }
69
68
  }
69
+ UpdateManyTool.operationType = "update";
70
70
  //# sourceMappingURL=updateMany.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"updateMany.js","sourceRoot":"","sources":["../../../../../src/tools/mongodb/update/updateMany.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAErE,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAEvC,MAAM,OAAO,cAAe,SAAQ,eAAe;IAAnD;;QACW,SAAI,GAAG,aAAa,CAAC;QAClB,gBAAW,GAAG,wEAAwE,CAAC;QACvF,cAAS,GAAG;YAClB,GAAG,eAAe;YAClB,MAAM,EAAE,MAAM,EAAE;iBACX,QAAQ,EAAE;iBACV,QAAQ,CACL,gHAAgH,CACnH;YACL,MAAM,EAAE,MAAM,EAAE,CAAC,QAAQ,CACrB,4FAA4F,CAC/F;YACD,MAAM,EAAE,CAAC;iBACJ,OAAO,EAAE;iBACT,QAAQ,EAAE;iBACV,QAAQ,CAAC,4EAA4E,CAAC;SAC9F,CAAC;QACK,kBAAa,GAAkB,QAAQ,CAAC;IAyDnD,CAAC;IAvDa,KAAK,CAAC,OAAO,CAAC,EACpB,QAAQ,EACR,UAAU,EACV,MAAM,EACN,MAAM,EACN,MAAM,GACwB;QAC9B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QAE9C,qDAAqD;QACrD,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;YACzB,MAAM,eAAe,CAAC,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,YAAY,EAAE,KAAK,IAAI,EAAE;gBAC3E,OAAO,QAAQ,CAAC,mBAAmB,CAAC,QAAQ,EAAE;oBAC1C,OAAO,EAAE;wBACL,MAAM,EAAE,UAAU;wBAClB,OAAO,EAAE;4BACL;gCACI,CAAC,EAAE,MAAM,IAAI,EAAE;gCACf,CAAC,EAAE,MAAM;gCACT,MAAM,EAAE,MAAM,IAAI,KAAK;gCACvB,KAAK,EAAE,IAAI;6BACd;yBACJ;qBACJ;oBACD,SAAS,EAAE,cAAc;iBAC5B,CAAC,CAAC;YACP,CAAC,CAAC,CAAC;QACP,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,UAAU,CAAC,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE;YAC3E,MAAM;SACT,CAAC,CAAC;QAEH,IAAI,OAAO,GAAG,EAAE,CAAC;QACjB,IAAI,MAAM,CAAC,YAAY,KAAK,CAAC,IAAI,MAAM,CAAC,aAAa,KAAK,CAAC,IAAI,MAAM,CAAC,aAAa,KAAK,CAAC,EAAE,CAAC;YACxF,OAAO,GAAG,kCAAkC,CAAC;QACjD,CAAC;aAAM,CAAC;YACJ,OAAO,GAAG,WAAW,MAAM,CAAC,YAAY,eAAe,CAAC;YACxD,IAAI,MAAM,CAAC,aAAa,GAAG,CAAC,EAAE,CAAC;gBAC3B,OAAO,IAAI,aAAa,MAAM,CAAC,aAAa,eAAe,CAAC;YAChE,CAAC;YACD,IAAI,MAAM,CAAC,aAAa,GAAG,CAAC,EAAE,CAAC;gBAC3B,OAAO,IAAI,aAAa,MAAM,CAAC,aAAa,sBAAsB,MAAM,CAAC,UAAU,EAAE,QAAQ,EAAE,GAAG,CAAC;YACvG,CAAC;QACL,CAAC;QAED,OAAO;YACH,OAAO,EAAE;gBACL;oBACI,IAAI,EAAE,OAAO;oBACb,IAAI,EAAE,MAAM;iBACf;aACJ;SACJ,CAAC;IACN,CAAC;CACJ"}
1
+ {"version":3,"file":"updateMany.js","sourceRoot":"","sources":["../../../../../src/tools/mongodb/update/updateMany.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAErE,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAEvC,MAAM,OAAO,cAAe,SAAQ,eAAe;IAAnD;;QACW,SAAI,GAAG,aAAa,CAAC;QAClB,gBAAW,GAAG,wEAAwE,CAAC;QACvF,cAAS,GAAG;YAClB,GAAG,eAAe;YAClB,MAAM,EAAE,MAAM,EAAE;iBACX,QAAQ,EAAE;iBACV,QAAQ,CACL,gHAAgH,CACnH;YACL,MAAM,EAAE,MAAM,EAAE,CAAC,QAAQ,CACrB,4FAA4F,CAC/F;YACD,MAAM,EAAE,CAAC;iBACJ,OAAO,EAAE;iBACT,QAAQ,EAAE;iBACV,QAAQ,CAAC,4EAA4E,CAAC;SAC9F,CAAC;IA0DN,CAAC;IAvDa,KAAK,CAAC,OAAO,CAAC,EACpB,QAAQ,EACR,UAAU,EACV,MAAM,EACN,MAAM,EACN,MAAM,GACwB;QAC9B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QAE9C,qDAAqD;QACrD,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;YACzB,MAAM,eAAe,CAAC,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,YAAY,EAAE,KAAK,IAAI,EAAE;gBAC3E,OAAO,QAAQ,CAAC,mBAAmB,CAAC,QAAQ,EAAE;oBAC1C,OAAO,EAAE;wBACL,MAAM,EAAE,UAAU;wBAClB,OAAO,EAAE;4BACL;gCACI,CAAC,EAAE,MAAM,IAAI,EAAE;gCACf,CAAC,EAAE,MAAM;gCACT,MAAM,EAAE,MAAM,IAAI,KAAK;gCACvB,KAAK,EAAE,IAAI;6BACd;yBACJ;qBACJ;oBACD,SAAS,EAAE,cAAc;iBAC5B,CAAC,CAAC;YACP,CAAC,CAAC,CAAC;QACP,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,UAAU,CAAC,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE;YAC3E,MAAM;SACT,CAAC,CAAC;QAEH,IAAI,OAAO,GAAG,EAAE,CAAC;QACjB,IAAI,MAAM,CAAC,YAAY,KAAK,CAAC,IAAI,MAAM,CAAC,aAAa,KAAK,CAAC,IAAI,MAAM,CAAC,aAAa,KAAK,CAAC,EAAE,CAAC;YACxF,OAAO,GAAG,kCAAkC,CAAC;QACjD,CAAC;aAAM,CAAC;YACJ,OAAO,GAAG,WAAW,MAAM,CAAC,YAAY,eAAe,CAAC;YACxD,IAAI,MAAM,CAAC,aAAa,GAAG,CAAC,EAAE,CAAC;gBAC3B,OAAO,IAAI,aAAa,MAAM,CAAC,aAAa,eAAe,CAAC;YAChE,CAAC;YACD,IAAI,MAAM,CAAC,aAAa,GAAG,CAAC,EAAE,CAAC;gBAC3B,OAAO,IAAI,aAAa,MAAM,CAAC,aAAa,sBAAsB,MAAM,CAAC,UAAU,EAAE,QAAQ,EAAE,GAAG,CAAC;YACvG,CAAC;QACL,CAAC;QAED,OAAO;YACH,OAAO,EAAE;gBACL;oBACI,IAAI,EAAE,OAAO;oBACb,IAAI,EAAE,MAAM;iBACf;aACJ;SACJ,CAAC;IACN,CAAC;;AAxDM,4BAAa,GAAkB,QAAQ,AAA1B,CAA2B"}
@@ -1,6 +1,4 @@
1
- import type { z } from "zod";
2
- import { type ZodRawShape, type ZodNever } from "zod";
3
- import type { ToolCallback } from "@modelcontextprotocol/sdk/server/mcp.js";
1
+ import type { z, ZodRawShape } from "zod";
4
2
  import type { CallToolResult, ToolAnnotations } from "@modelcontextprotocol/sdk/types.js";
5
3
  import type { Session } from "../common/session.js";
6
4
  import type { Telemetry } from "../telemetry/telemetry.js";
@@ -9,9 +7,12 @@ import type { UserConfig } from "../common/config/userConfig.js";
9
7
  import type { Server } from "../server.js";
10
8
  import type { Elicitation } from "../elicitation.js";
11
9
  import type { PreviewFeature } from "../common/schemas.js";
12
- export type ToolArgs<Args extends ZodRawShape> = z.objectOutputType<Args, ZodNever>;
13
- export type ToolCallbackArgs<Args extends ZodRawShape> = Parameters<ToolCallback<Args>>;
14
- export type ToolExecutionContext<Args extends ZodRawShape = ZodRawShape> = Parameters<ToolCallback<Args>>[1];
10
+ export type ToolArgs<T extends ZodRawShape> = {
11
+ [K in keyof T]: z.infer<T[K]>;
12
+ };
13
+ export type ToolExecutionContext = {
14
+ signal: AbortSignal;
15
+ };
15
16
  /**
16
17
  * The type of operation the tool performs. This is used when evaluating if a tool is allowed to run based on
17
18
  * the config's `disabledTools` and `readOnly` settings.
@@ -31,41 +32,372 @@ export type OperationType = "metadata" | "read" | "create" | "delete" | "update"
31
32
  * - `mongodb` is used for tools that interact with a MongoDB instance, such as finding documents,
32
33
  * aggregating data, listing databases/collections/indexes, creating indexes, etc.
33
34
  * - `atlas` is used for tools that interact with MongoDB Atlas, such as listing clusters, creating clusters, etc.
35
+ * - `atlas-local` is used for tools that interact with local Atlas deployments.
34
36
  */
35
37
  export type ToolCategory = "mongodb" | "atlas" | "atlas-local";
38
+ /**
39
+ * Parameters passed to the constructor of all tools that extends `ToolBase`.
40
+ *
41
+ * The MongoDB MCP Server automatically injects these parameters when
42
+ * constructing tools and registering to the MCP Server.
43
+ *
44
+ * See `Server.registerTools` method in `src/server.ts` for further reference.
45
+ */
36
46
  export type ToolConstructorParams = {
47
+ /**
48
+ * The category that the tool belongs to (injected from the static
49
+ * `category` property on the Tool class).
50
+ */
51
+ category: ToolCategory;
52
+ /**
53
+ * The type of operation the tool performs (injected from the static
54
+ * `operationType` property on the Tool class).
55
+ */
56
+ operationType: OperationType;
57
+ /**
58
+ * An instance of Session class providing access to MongoDB connections,
59
+ * loggers, etc.
60
+ *
61
+ * See `src/common/session.ts` for further reference.
62
+ */
37
63
  session: Session;
64
+ /**
65
+ * The configuration object that MCP session was started with.
66
+ *
67
+ * See `src/common/config/userConfig.ts` for further reference.
68
+ */
38
69
  config: UserConfig;
70
+ /**
71
+ * The telemetry service for tracking tool usage.
72
+ *
73
+ * See `src/telemetry/telemetry.ts` for further reference.
74
+ */
39
75
  telemetry: Telemetry;
76
+ /**
77
+ * The elicitation service for requesting user confirmation.
78
+ *
79
+ * See `src/elicitation.ts` for further reference.
80
+ */
40
81
  elicitation: Elicitation;
41
82
  };
83
+ /**
84
+ * The type that all tool classes must conform to when implementing custom tools
85
+ * for the MongoDB MCP Server.
86
+ *
87
+ * This type enforces that tool classes have static properties `category` and
88
+ * `operationType` which are injected during instantiation of tool classes.
89
+ *
90
+ * @example
91
+ * ```typescript
92
+ * import { StreamableHttpRunner, UserConfigSchema } from "mongodb-mcp-server"
93
+ * import { ToolBase, type ToolClass, type ToolCategory, type OperationType } from "mongodb-mcp-server/tools";
94
+ * import { z } from "zod";
95
+ *
96
+ * class MyCustomTool extends ToolBase {
97
+ * // Required static properties for ToolClass conformance
98
+ * static category: ToolCategory = "mongodb";
99
+ * static operationType: OperationType = "read";
100
+ *
101
+ * // Required abstract properties
102
+ * override name = "my-custom-tool";
103
+ * protected description = "My custom tool description";
104
+ * protected argsShape = {
105
+ * query: z.string().describe("The query parameter"),
106
+ * };
107
+ *
108
+ * // Required abstract method: implement the tool's logic
109
+ * protected async execute(args) {
110
+ * // Tool implementation
111
+ * return {
112
+ * content: [{ type: "text", text: "Result" }],
113
+ * };
114
+ * }
115
+ *
116
+ * // Required abstract method: provide telemetry metadata
117
+ * protected resolveTelemetryMetadata() {
118
+ * return {}; // Return empty object if no custom telemetry needed
119
+ * }
120
+ * }
121
+ *
122
+ * const runner = new StreamableHttpRunner({
123
+ * userConfig: UserConfigSchema.parse({}),
124
+ * // This will work only if the class correctly conforms to ToolClass type, which in our case it does.
125
+ * tools: [MyCustomTool],
126
+ * });
127
+ * ```
128
+ */
129
+ export type ToolClass = {
130
+ /** Constructor signature for the tool class */
131
+ new (params: ToolConstructorParams): ToolBase;
132
+ /** The category that the tool belongs to */
133
+ category: ToolCategory;
134
+ /** The type of operation the tool performs */
135
+ operationType: OperationType;
136
+ };
137
+ /**
138
+ * Abstract base class for implementing MCP tools in the MongoDB MCP Server.
139
+ *
140
+ * All tools (both internal and custom) must extend this class to ensure a
141
+ * consistent interface and proper integration with the server.
142
+ *
143
+ * ## Creating a Custom Tool
144
+ *
145
+ * To create a custom tool, you must:
146
+ * 1. Extend the `ToolBase` class
147
+ * 2. Define static properties: `category` and `operationType`
148
+ * 3. Implement required abstract members: `name`, `description`,
149
+ * `argsShape`, `execute()`, `resolveTelemetryMetadata()`
150
+ *
151
+ * @example Basic Custom Tool
152
+ * ```typescript
153
+ * import { StreamableHttpRunner, UserConfigSchema } from "mongodb-mcp-server"
154
+ * import { ToolBase, type ToolClass, type ToolCategory, type OperationType } from "mongodb-mcp-server/tools";
155
+ * import { z } from "zod";
156
+ *
157
+ * class MyCustomTool extends ToolBase {
158
+ * // Required static property for ToolClass conformance
159
+ * static category: ToolCategory = "mongodb";
160
+ * static operationType: OperationType = "read";
161
+ *
162
+ * // Required abstract properties
163
+ * override name = "my-custom-tool";
164
+ * protected description = "My custom tool description";
165
+ * protected argsShape = {
166
+ * query: z.string().describe("The query parameter"),
167
+ * };
168
+ *
169
+ * // Required abstract method: implement the tool's logic
170
+ * protected async execute(args) {
171
+ * // Tool implementation
172
+ * return {
173
+ * content: [{ type: "text", text: "Result" }],
174
+ * };
175
+ * }
176
+ *
177
+ * // Required abstract method: provide telemetry metadata
178
+ * protected resolveTelemetryMetadata() {
179
+ * return {}; // Return empty object if no custom telemetry needed
180
+ * }
181
+ * }
182
+ *
183
+ * const runner = new StreamableHttpRunner({
184
+ * userConfig: UserConfigSchema.parse({}),
185
+ * // This will work only if the class correctly conforms to ToolClass type, which in our case it does.
186
+ * tools: [MyCustomTool],
187
+ * });
188
+ * ```
189
+ *
190
+ * ## Protected Members Available to Subclasses
191
+ *
192
+ * - `session` - Access to MongoDB connection, logger, and other session
193
+ * resources
194
+ * - `config` - Server configuration (`UserConfig`)
195
+ * - `telemetry` - Telemetry service for tracking usage
196
+ * - `elicitation` - Service for requesting user confirmations
197
+ *
198
+ * ## Instance Properties Set by Constructor
199
+ *
200
+ * The following properties are automatically set when the tool is instantiated
201
+ * by the server (derived from the static properties):
202
+ * - `category` - The tool's category (from static `category`)
203
+ * - `operationType` - The tool's operation type (from static `operationType`)
204
+ *
205
+ * ## Optional Overrideable Methods
206
+ *
207
+ * - `getConfirmationMessage()` - Customize the confirmation prompt for tools
208
+ * requiring user approval
209
+ * - `handleError()` - Customize error handling behavior
210
+ *
211
+ * @see {@link ToolClass} for the type that tool classes must conform to
212
+ * @see {@link ToolConstructorParams} for the parameters passed to the
213
+ * constructor
214
+ */
42
215
  export declare abstract class ToolBase {
216
+ /**
217
+ * The unique name of this tool.
218
+ *
219
+ * Must be unique across all tools in the server.
220
+ */
43
221
  abstract name: string;
44
- abstract category: ToolCategory;
45
- abstract operationType: OperationType;
222
+ /**
223
+ * The category of this tool.
224
+ *
225
+ * @see {@link ToolCategory} for the available tool categories.
226
+ */
227
+ category: ToolCategory;
228
+ /**
229
+ * The type of operation this tool performs.
230
+ *
231
+ * Automatically set from the static `operationType` property during
232
+ * construction.
233
+ *
234
+ * @see {@link OperationType} for the available tool operations.
235
+ */
236
+ operationType: OperationType;
237
+ /**
238
+ * Human-readable description of what the tool does.
239
+ *
240
+ * This is shown to the MCP client and helps the LLM understand when to use
241
+ * this tool.
242
+ */
46
243
  protected abstract description: string;
244
+ /**
245
+ * Zod schema defining the tool's arguments.
246
+ *
247
+ * Use an empty object `{}` if the tool takes no arguments.
248
+ *
249
+ * @example
250
+ * ```typescript
251
+ * protected argsShape = {
252
+ * query: z.string().describe("The search query"),
253
+ * limit: z.number().optional().describe("Maximum results to return"),
254
+ * };
255
+ * ```
256
+ */
47
257
  protected abstract argsShape: ZodRawShape;
48
258
  private registeredTool;
49
259
  protected get annotations(): ToolAnnotations;
50
- protected abstract execute(...args: ToolCallbackArgs<typeof this.argsShape>): Promise<CallToolResult>;
51
- /** Get the confirmation message for the tool. Can be overridden to provide a more specific message. */
52
- protected getConfirmationMessage(...args: ToolCallbackArgs<typeof this.argsShape>): string;
53
- /** Check if the user has confirmed the tool execution, if required by the configuration.
54
- * Always returns true if confirmation is not required.
260
+ /**
261
+ * A function that is registered as the tool execution callback and is
262
+ * called with the expected arguments.
263
+ *
264
+ * This is the core implementation of your tool's functionality. It receives
265
+ * validated arguments (validated against `argsShape`) and must return a
266
+ * result conforming to the MCP protocol.
267
+ *
268
+ * @param args - The validated arguments passed to the tool
269
+ * @returns A promise resolving to the tool execution result
270
+ *
271
+ * @example
272
+ * ```typescript
273
+ * protected async execute(args: { query: string }): Promise<CallToolResult> {
274
+ * const results = await this.session.db.collection('items').find({
275
+ * name: { $regex: args.query, $options: 'i' }
276
+ * }).toArray();
277
+ *
278
+ * return {
279
+ * content: [{
280
+ * type: "text",
281
+ * text: JSON.stringify(results),
282
+ * }],
283
+ * };
284
+ * }
285
+ * ```
286
+ */
287
+ protected abstract execute(args: ToolArgs<typeof this.argsShape>, { signal }: ToolExecutionContext): Promise<CallToolResult>;
288
+ /**
289
+ * Get the confirmation message shown to users when this tool requires
290
+ * explicit approval.
291
+ *
292
+ * Override this method to provide a more specific and helpful confirmation
293
+ * message based on the tool's arguments.
294
+ *
295
+ * @param args - The tool arguments
296
+ * @returns The confirmation message to display to the user
297
+ *
298
+ * @example
299
+ * ```typescript
300
+ * protected getConfirmationMessage(args: { database: string }): string {
301
+ * return `You are about to delete the database "${args.database}". This action cannot be undone. Proceed?`;
302
+ * }
303
+ * ```
304
+ */
305
+ protected getConfirmationMessage(args: ToolArgs<typeof this.argsShape>): string;
306
+ /**
307
+ * Check if the user has confirmed the tool execution (if required by
308
+ * configuration).
309
+ *
310
+ * This method automatically checks if the tool name is in the
311
+ * `confirmationRequiredTools` configuration list and requests user
312
+ * confirmation via the elicitation service if needed.
313
+ *
314
+ * @param args - The tool arguments
315
+ * @returns A promise resolving to `true` if confirmed or confirmation not
316
+ * required, `false` otherwise
317
+ */
318
+ verifyConfirmed(args: ToolArgs<typeof this.argsShape>): Promise<boolean>;
319
+ /**
320
+ * Access to the session instance. Provides access to MongoDB connections,
321
+ * loggers, connection manager, and other session-level resources.
55
322
  */
56
- verifyConfirmed(args: ToolCallbackArgs<typeof this.argsShape>): Promise<boolean>;
57
323
  protected readonly session: Session;
324
+ /**
325
+ * Access to the server configuration. Contains all user configuration
326
+ * settings including connection strings, feature flags, and operational
327
+ * limits.
328
+ */
58
329
  protected readonly config: UserConfig;
330
+ /**
331
+ * Access to the telemetry service. Use this to emit custom telemetry events
332
+ * if needed.
333
+ */
59
334
  protected readonly telemetry: Telemetry;
335
+ /**
336
+ * Access to the elicitation service. Use this to request user confirmations
337
+ * or inputs during tool execution.
338
+ */
60
339
  protected readonly elicitation: Elicitation;
61
- constructor({ session, config, telemetry, elicitation }: ToolConstructorParams);
340
+ constructor({ category, operationType, session, config, telemetry, elicitation }: ToolConstructorParams);
62
341
  register(server: Server): boolean;
63
342
  isEnabled(): boolean;
64
343
  protected disable(): void;
65
344
  protected enable(): void;
66
345
  protected verifyAllowed(): boolean;
67
- protected handleError(error: unknown, args: ToolArgs<typeof this.argsShape>): Promise<CallToolResult> | CallToolResult;
68
- protected abstract resolveTelemetryMetadata(result: CallToolResult, ...args: Parameters<ToolCallback<typeof this.argsShape>>): TelemetryToolMetadata;
346
+ /**
347
+ * Handle errors that occur during tool execution.
348
+ *
349
+ * Override this method to provide custom error handling logic. The default
350
+ * implementation returns a simple error message.
351
+ *
352
+ * @param error - The error that was thrown
353
+ * @param args - The arguments that were passed to the tool
354
+ * @returns A CallToolResult with error information
355
+ *
356
+ * @example
357
+ * ```typescript
358
+ * protected handleError(error: unknown, args: { query: string }): CallToolResult {
359
+ * if (error instanceof MongoError && error.code === 11000) {
360
+ * return {
361
+ * content: [{
362
+ * type: "text",
363
+ * text: `Duplicate key error for query: ${args.query}`,
364
+ * }],
365
+ * isError: true,
366
+ * };
367
+ * }
368
+ * // Fall back to default error handling
369
+ * return super.handleError(error, args);
370
+ * }
371
+ * ```
372
+ */
373
+ protected handleError(error: unknown, args: z.infer<z.ZodObject<typeof this.argsShape>>): Promise<CallToolResult> | CallToolResult;
374
+ /**
375
+ * Resolve telemetry metadata for this tool execution.
376
+ *
377
+ * This method is called after every tool execution to collect metadata for
378
+ * telemetry events. Return an object with custom properties you want to
379
+ * track, or an empty object if no custom telemetry is needed.
380
+ *
381
+ * @param result - The result of the tool execution
382
+ * @param args - The arguments and context passed to the tool
383
+ * @returns An object containing telemetry metadata
384
+ *
385
+ * @example
386
+ * ```typescript
387
+ * protected resolveTelemetryMetadata(
388
+ * result: CallToolResult,
389
+ * args: { query: string }
390
+ * ): TelemetryToolMetadata {
391
+ * return {
392
+ * query_length: args.query.length,
393
+ * result_count: result.isError ? 0 : JSON.parse(result.content[0].text).length,
394
+ * };
395
+ * }
396
+ * ```
397
+ */
398
+ protected abstract resolveTelemetryMetadata(args: ToolArgs<typeof this.argsShape>, { result }: {
399
+ result: CallToolResult;
400
+ }): TelemetryToolMetadata;
69
401
  /**
70
402
  * Creates and emits a tool telemetry event
71
403
  * @param startTime - Start time in milliseconds
@@ -1 +1 @@
1
- {"version":3,"file":"tool.d.ts","sourceRoot":"","sources":["../../../src/tools/tool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tool.d.ts","sourceRoot":"","sources":["../../../src/tools/tool.ts"],"names":[],"mappings":"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"}