@himanshusinghs/mongodb-mcp-server 1.5.1 → 1.7.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.
- package/README.md +67 -56
- package/dist/cjs/common/atlas/apiClient.d.ts +3 -1
- package/dist/cjs/common/atlas/apiClient.d.ts.map +1 -1
- package/dist/cjs/common/atlas/apiClient.js +3 -3
- package/dist/cjs/common/atlas/apiClient.js.map +1 -1
- package/dist/cjs/common/config/configOverrides.d.ts +3 -3
- package/dist/cjs/common/config/configOverrides.d.ts.map +1 -1
- package/dist/cjs/common/config/configOverrides.js.map +1 -1
- package/dist/cjs/common/config/parseUserConfig.js +3 -2
- package/dist/cjs/common/config/parseUserConfig.js.map +1 -1
- package/dist/cjs/common/config/userConfig.d.ts +3 -0
- package/dist/cjs/common/config/userConfig.d.ts.map +1 -1
- package/dist/cjs/common/config/userConfig.js +18 -0
- package/dist/cjs/common/config/userConfig.js.map +1 -1
- package/dist/cjs/common/connectionErrorHandler.d.ts +3 -3
- package/dist/cjs/common/connectionErrorHandler.d.ts.map +1 -1
- package/dist/cjs/common/connectionManager.d.ts +1 -1
- package/dist/cjs/common/connectionManager.d.ts.map +1 -1
- package/dist/cjs/common/connectionManager.js +3 -3
- package/dist/cjs/common/connectionManager.js.map +1 -1
- package/dist/cjs/common/logger.d.ts +8 -3
- package/dist/cjs/common/logger.d.ts.map +1 -1
- package/dist/cjs/common/logger.js +5 -0
- package/dist/cjs/common/logger.js.map +1 -1
- package/dist/cjs/common/packageInfo.js +1 -1
- package/dist/cjs/common/session.d.ts +6 -3
- package/dist/cjs/common/session.d.ts.map +1 -1
- package/dist/cjs/common/session.js +2 -12
- package/dist/cjs/common/session.js.map +1 -1
- package/dist/cjs/lib.d.ts +12 -4
- package/dist/cjs/lib.d.ts.map +1 -1
- package/dist/cjs/lib.js +16 -7
- package/dist/cjs/lib.js.map +1 -1
- package/dist/cjs/resources/resource.d.ts +3 -3
- package/dist/cjs/resources/resource.d.ts.map +1 -1
- package/dist/cjs/resources/resource.js.map +1 -1
- package/dist/cjs/server.d.ts +67 -32
- package/dist/cjs/server.d.ts.map +1 -1
- package/dist/cjs/server.js +4 -1
- package/dist/cjs/server.js.map +1 -1
- package/dist/cjs/tools/assistant/assistantTool.d.ts +17 -0
- package/dist/cjs/tools/assistant/assistantTool.d.ts.map +1 -0
- package/dist/cjs/tools/assistant/assistantTool.js +44 -0
- package/dist/cjs/tools/assistant/assistantTool.js.map +1 -0
- package/dist/cjs/tools/assistant/listKnowledgeSources.d.ts +29 -0
- package/dist/cjs/tools/assistant/listKnowledgeSources.d.ts.map +1 -0
- package/dist/cjs/tools/assistant/listKnowledgeSources.js +51 -0
- package/dist/cjs/tools/assistant/listKnowledgeSources.js.map +1 -0
- package/dist/cjs/tools/assistant/searchKnowledge.d.ts +59 -0
- package/dist/cjs/tools/assistant/searchKnowledge.d.ts.map +1 -0
- package/dist/cjs/tools/assistant/searchKnowledge.js +65 -0
- package/dist/cjs/tools/assistant/searchKnowledge.js.map +1 -0
- package/dist/cjs/tools/assistant/tools.d.ts +4 -0
- package/dist/cjs/tools/assistant/tools.d.ts.map +1 -0
- package/dist/cjs/tools/assistant/tools.js +8 -0
- package/dist/cjs/tools/assistant/tools.js.map +1 -0
- package/dist/cjs/tools/atlas/connect/connectCluster.d.ts +1 -1
- package/dist/cjs/tools/atlas/connect/connectCluster.d.ts.map +1 -1
- package/dist/cjs/tools/atlas/connect/connectCluster.js +1 -1
- package/dist/cjs/tools/atlas/connect/connectCluster.js.map +1 -1
- package/dist/cjs/tools/atlas/create/createAccessList.d.ts +1 -1
- package/dist/cjs/tools/atlas/create/createAccessList.d.ts.map +1 -1
- package/dist/cjs/tools/atlas/create/createAccessList.js +1 -1
- package/dist/cjs/tools/atlas/create/createAccessList.js.map +1 -1
- package/dist/cjs/tools/atlas/create/createDBUser.d.ts +1 -1
- package/dist/cjs/tools/atlas/create/createDBUser.d.ts.map +1 -1
- package/dist/cjs/tools/atlas/create/createDBUser.js +1 -1
- package/dist/cjs/tools/atlas/create/createDBUser.js.map +1 -1
- package/dist/cjs/tools/atlas/create/createFreeCluster.d.ts +1 -1
- package/dist/cjs/tools/atlas/create/createFreeCluster.d.ts.map +1 -1
- package/dist/cjs/tools/atlas/create/createFreeCluster.js +1 -1
- package/dist/cjs/tools/atlas/create/createFreeCluster.js.map +1 -1
- package/dist/cjs/tools/atlas/create/createProject.d.ts +1 -1
- package/dist/cjs/tools/atlas/create/createProject.d.ts.map +1 -1
- package/dist/cjs/tools/atlas/create/createProject.js +1 -1
- package/dist/cjs/tools/atlas/create/createProject.js.map +1 -1
- package/dist/cjs/tools/atlas/read/getPerformanceAdvisor.d.ts +1 -1
- package/dist/cjs/tools/atlas/read/getPerformanceAdvisor.d.ts.map +1 -1
- package/dist/cjs/tools/atlas/read/getPerformanceAdvisor.js +1 -1
- package/dist/cjs/tools/atlas/read/getPerformanceAdvisor.js.map +1 -1
- package/dist/cjs/tools/atlas/read/inspectAccessList.d.ts +1 -1
- package/dist/cjs/tools/atlas/read/inspectAccessList.d.ts.map +1 -1
- package/dist/cjs/tools/atlas/read/inspectAccessList.js +1 -1
- package/dist/cjs/tools/atlas/read/inspectAccessList.js.map +1 -1
- package/dist/cjs/tools/atlas/read/inspectCluster.d.ts +1 -1
- package/dist/cjs/tools/atlas/read/inspectCluster.d.ts.map +1 -1
- package/dist/cjs/tools/atlas/read/inspectCluster.js +1 -1
- package/dist/cjs/tools/atlas/read/inspectCluster.js.map +1 -1
- package/dist/cjs/tools/atlas/read/listAlerts.d.ts +1 -1
- package/dist/cjs/tools/atlas/read/listAlerts.d.ts.map +1 -1
- package/dist/cjs/tools/atlas/read/listAlerts.js +1 -1
- package/dist/cjs/tools/atlas/read/listAlerts.js.map +1 -1
- package/dist/cjs/tools/atlas/read/listClusters.d.ts +1 -1
- package/dist/cjs/tools/atlas/read/listClusters.d.ts.map +1 -1
- package/dist/cjs/tools/atlas/read/listClusters.js +1 -1
- package/dist/cjs/tools/atlas/read/listClusters.js.map +1 -1
- package/dist/cjs/tools/atlas/read/listDBUsers.d.ts +1 -1
- package/dist/cjs/tools/atlas/read/listDBUsers.d.ts.map +1 -1
- package/dist/cjs/tools/atlas/read/listDBUsers.js +1 -1
- package/dist/cjs/tools/atlas/read/listDBUsers.js.map +1 -1
- package/dist/cjs/tools/atlas/read/listOrgs.d.ts +1 -1
- package/dist/cjs/tools/atlas/read/listOrgs.d.ts.map +1 -1
- package/dist/cjs/tools/atlas/read/listOrgs.js +1 -1
- package/dist/cjs/tools/atlas/read/listOrgs.js.map +1 -1
- package/dist/cjs/tools/atlas/read/listProjects.d.ts +1 -1
- package/dist/cjs/tools/atlas/read/listProjects.d.ts.map +1 -1
- package/dist/cjs/tools/atlas/read/listProjects.js +1 -1
- package/dist/cjs/tools/atlas/read/listProjects.js.map +1 -1
- package/dist/cjs/tools/atlasLocal/connect/connectDeployment.d.ts +1 -1
- package/dist/cjs/tools/atlasLocal/connect/connectDeployment.d.ts.map +1 -1
- package/dist/cjs/tools/atlasLocal/connect/connectDeployment.js +1 -1
- package/dist/cjs/tools/atlasLocal/connect/connectDeployment.js.map +1 -1
- package/dist/cjs/tools/atlasLocal/create/createDeployment.d.ts +1 -1
- package/dist/cjs/tools/atlasLocal/create/createDeployment.d.ts.map +1 -1
- package/dist/cjs/tools/atlasLocal/create/createDeployment.js +1 -1
- package/dist/cjs/tools/atlasLocal/create/createDeployment.js.map +1 -1
- package/dist/cjs/tools/atlasLocal/delete/deleteDeployment.d.ts +1 -1
- package/dist/cjs/tools/atlasLocal/delete/deleteDeployment.d.ts.map +1 -1
- package/dist/cjs/tools/atlasLocal/delete/deleteDeployment.js +1 -1
- package/dist/cjs/tools/atlasLocal/delete/deleteDeployment.js.map +1 -1
- package/dist/cjs/tools/atlasLocal/read/listDeployments.d.ts +1 -1
- package/dist/cjs/tools/atlasLocal/read/listDeployments.d.ts.map +1 -1
- package/dist/cjs/tools/atlasLocal/read/listDeployments.js +1 -1
- package/dist/cjs/tools/atlasLocal/read/listDeployments.js.map +1 -1
- package/dist/cjs/tools/index.d.ts +2 -1
- package/dist/cjs/tools/index.d.ts.map +1 -1
- package/dist/cjs/tools/index.js +3 -0
- package/dist/cjs/tools/index.js.map +1 -1
- package/dist/cjs/tools/mongodb/connect/connect.d.ts +1 -1
- package/dist/cjs/tools/mongodb/connect/connect.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/connect/connect.js +1 -1
- package/dist/cjs/tools/mongodb/connect/connect.js.map +1 -1
- package/dist/cjs/tools/mongodb/connect/switchConnection.d.ts +1 -1
- package/dist/cjs/tools/mongodb/connect/switchConnection.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/connect/switchConnection.js +1 -1
- package/dist/cjs/tools/mongodb/connect/switchConnection.js.map +1 -1
- package/dist/cjs/tools/mongodb/create/createCollection.d.ts +18 -6
- package/dist/cjs/tools/mongodb/create/createCollection.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/create/createCollection.js +14 -2
- package/dist/cjs/tools/mongodb/create/createCollection.js.map +1 -1
- package/dist/cjs/tools/mongodb/create/createIndex.d.ts +17 -4
- package/dist/cjs/tools/mongodb/create/createIndex.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/create/createIndex.js +14 -1
- package/dist/cjs/tools/mongodb/create/createIndex.js.map +1 -1
- package/dist/cjs/tools/mongodb/create/insertMany.d.ts +18 -5
- package/dist/cjs/tools/mongodb/create/insertMany.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/create/insertMany.js +16 -2
- package/dist/cjs/tools/mongodb/create/insertMany.js.map +1 -1
- package/dist/cjs/tools/mongodb/delete/deleteMany.d.ts +19 -7
- package/dist/cjs/tools/mongodb/delete/deleteMany.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/delete/deleteMany.js +13 -1
- package/dist/cjs/tools/mongodb/delete/deleteMany.js.map +1 -1
- package/dist/cjs/tools/mongodb/delete/dropCollection.d.ts +18 -6
- package/dist/cjs/tools/mongodb/delete/dropCollection.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/delete/dropCollection.js +14 -2
- package/dist/cjs/tools/mongodb/delete/dropCollection.js.map +1 -1
- package/dist/cjs/tools/mongodb/delete/dropDatabase.d.ts +15 -5
- package/dist/cjs/tools/mongodb/delete/dropDatabase.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/delete/dropDatabase.js +12 -2
- package/dist/cjs/tools/mongodb/delete/dropDatabase.js.map +1 -1
- package/dist/cjs/tools/mongodb/delete/dropIndex.d.ts +17 -4
- package/dist/cjs/tools/mongodb/delete/dropIndex.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/delete/dropIndex.js +26 -1
- package/dist/cjs/tools/mongodb/delete/dropIndex.js.map +1 -1
- package/dist/cjs/tools/mongodb/metadata/collectionIndexes.d.ts +78 -9
- package/dist/cjs/tools/mongodb/metadata/collectionIndexes.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/metadata/collectionIndexes.js +41 -29
- package/dist/cjs/tools/mongodb/metadata/collectionIndexes.js.map +1 -1
- package/dist/cjs/tools/mongodb/metadata/collectionSchema.d.ts +13 -4
- package/dist/cjs/tools/mongodb/metadata/collectionSchema.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/metadata/collectionSchema.js +17 -8
- package/dist/cjs/tools/mongodb/metadata/collectionSchema.js.map +1 -1
- package/dist/cjs/tools/mongodb/metadata/collectionStorageSize.d.ts +18 -7
- package/dist/cjs/tools/mongodb/metadata/collectionStorageSize.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/metadata/collectionStorageSize.js +12 -3
- package/dist/cjs/tools/mongodb/metadata/collectionStorageSize.js.map +1 -1
- package/dist/cjs/tools/mongodb/metadata/dbStats.d.ts +13 -5
- package/dist/cjs/tools/mongodb/metadata/dbStats.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/metadata/dbStats.js +9 -1
- package/dist/cjs/tools/mongodb/metadata/dbStats.js.map +1 -1
- package/dist/cjs/tools/mongodb/metadata/explain.d.ts +15 -4
- package/dist/cjs/tools/mongodb/metadata/explain.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/metadata/explain.js +12 -3
- package/dist/cjs/tools/mongodb/metadata/explain.js.map +1 -1
- package/dist/cjs/tools/mongodb/metadata/listCollections.d.ts +27 -5
- package/dist/cjs/tools/mongodb/metadata/listCollections.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/metadata/listCollections.js +21 -3
- package/dist/cjs/tools/mongodb/metadata/listCollections.js.map +1 -1
- package/dist/cjs/tools/mongodb/metadata/listDatabases.d.ts +5 -6
- package/dist/cjs/tools/mongodb/metadata/listDatabases.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/metadata/listDatabases.js +5 -5
- package/dist/cjs/tools/mongodb/metadata/listDatabases.js.map +1 -1
- package/dist/cjs/tools/mongodb/metadata/logs.d.ts +15 -4
- package/dist/cjs/tools/mongodb/metadata/logs.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/metadata/logs.js +12 -1
- package/dist/cjs/tools/mongodb/metadata/logs.js.map +1 -1
- package/dist/cjs/tools/mongodb/mongodbTool.d.ts +1 -1
- package/dist/cjs/tools/mongodb/mongodbTool.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/mongodbTool.js +3 -3
- package/dist/cjs/tools/mongodb/mongodbTool.js.map +1 -1
- package/dist/cjs/tools/mongodb/read/aggregate.d.ts +1 -1
- package/dist/cjs/tools/mongodb/read/aggregate.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/read/aggregate.js +1 -5
- package/dist/cjs/tools/mongodb/read/aggregate.js.map +1 -1
- package/dist/cjs/tools/mongodb/read/count.d.ts +1 -1
- package/dist/cjs/tools/mongodb/read/count.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/read/count.js +1 -2
- package/dist/cjs/tools/mongodb/read/count.js.map +1 -1
- package/dist/cjs/tools/mongodb/read/export.d.ts +1 -1
- package/dist/cjs/tools/mongodb/read/export.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/read/export.js +1 -3
- package/dist/cjs/tools/mongodb/read/export.js.map +1 -1
- package/dist/cjs/tools/mongodb/read/find.d.ts +1 -1
- package/dist/cjs/tools/mongodb/read/find.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/read/find.js +1 -4
- package/dist/cjs/tools/mongodb/read/find.js.map +1 -1
- package/dist/cjs/tools/mongodb/tools.d.ts +17 -17
- package/dist/cjs/tools/mongodb/tools.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/tools.js.map +1 -1
- package/dist/cjs/tools/mongodb/update/renameCollection.d.ts +18 -5
- package/dist/cjs/tools/mongodb/update/renameCollection.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/update/renameCollection.js +43 -7
- package/dist/cjs/tools/mongodb/update/renameCollection.js.map +1 -1
- package/dist/cjs/tools/mongodb/update/updateMany.d.ts +21 -4
- package/dist/cjs/tools/mongodb/update/updateMany.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/update/updateMany.js +18 -1
- package/dist/cjs/tools/mongodb/update/updateMany.js.map +1 -1
- package/dist/cjs/tools/tool.d.ts +99 -26
- package/dist/cjs/tools/tool.d.ts.map +1 -1
- package/dist/cjs/tools/tool.js +12 -8
- package/dist/cjs/tools/tool.js.map +1 -1
- package/dist/cjs/transports/base.d.ts +81 -89
- package/dist/cjs/transports/base.d.ts.map +1 -1
- package/dist/cjs/transports/base.js +61 -28
- package/dist/cjs/transports/base.js.map +1 -1
- package/dist/cjs/transports/dryModeRunner.d.ts +6 -2
- package/dist/cjs/transports/dryModeRunner.d.ts.map +1 -1
- package/dist/cjs/transports/dryModeRunner.js +2 -2
- package/dist/cjs/transports/dryModeRunner.js.map +1 -1
- package/dist/cjs/transports/interfaces/common.d.ts +80 -0
- package/dist/cjs/transports/interfaces/common.d.ts.map +1 -0
- package/dist/cjs/transports/interfaces/common.js +3 -0
- package/dist/cjs/transports/interfaces/common.js.map +1 -0
- package/dist/cjs/transports/interfaces/index.d.ts +4 -0
- package/dist/cjs/transports/interfaces/index.d.ts.map +1 -0
- package/dist/cjs/transports/interfaces/index.js +3 -0
- package/dist/cjs/transports/interfaces/index.js.map +1 -0
- package/dist/cjs/transports/interfaces/legacy.d.ts +100 -0
- package/dist/cjs/transports/interfaces/legacy.d.ts.map +1 -0
- package/dist/cjs/transports/interfaces/legacy.js +3 -0
- package/dist/cjs/transports/interfaces/legacy.js.map +1 -0
- package/dist/cjs/transports/interfaces/v1.d.ts +6 -0
- package/dist/cjs/transports/interfaces/v1.d.ts.map +1 -0
- package/dist/cjs/transports/interfaces/v1.js +3 -0
- package/dist/cjs/transports/interfaces/v1.js.map +1 -0
- package/dist/cjs/transports/runnerConfigs/commonConfig.d.ts +85 -0
- package/dist/cjs/transports/runnerConfigs/commonConfig.d.ts.map +1 -0
- package/dist/cjs/transports/runnerConfigs/commonConfig.js +3 -0
- package/dist/cjs/transports/runnerConfigs/commonConfig.js.map +1 -0
- package/dist/cjs/transports/runnerConfigs/index.d.ts +6 -0
- package/dist/cjs/transports/runnerConfigs/index.d.ts.map +1 -0
- package/dist/cjs/transports/runnerConfigs/index.js +3 -0
- package/dist/cjs/transports/runnerConfigs/index.js.map +1 -0
- package/dist/cjs/transports/runnerConfigs/legacy.d.ts +100 -0
- package/dist/cjs/transports/runnerConfigs/legacy.d.ts.map +1 -0
- package/dist/cjs/transports/runnerConfigs/legacy.js +3 -0
- package/dist/cjs/transports/runnerConfigs/legacy.js.map +1 -0
- package/dist/cjs/transports/runnerConfigs/v1.d.ts +22 -0
- package/dist/cjs/transports/runnerConfigs/v1.d.ts.map +1 -0
- package/dist/cjs/transports/runnerConfigs/v1.js +3 -0
- package/dist/cjs/transports/runnerConfigs/v1.js.map +1 -0
- package/dist/cjs/transports/stdio.d.ts +9 -3
- package/dist/cjs/transports/stdio.d.ts.map +1 -1
- package/dist/cjs/transports/stdio.js +2 -2
- package/dist/cjs/transports/stdio.js.map +1 -1
- package/dist/cjs/transports/streamableHttp.d.ts +26 -8
- package/dist/cjs/transports/streamableHttp.d.ts.map +1 -1
- package/dist/cjs/transports/streamableHttp.js +204 -51
- package/dist/cjs/transports/streamableHttp.js.map +1 -1
- package/dist/cjs/ui/components/ListDatabases/ListDatabases.d.ts +1 -6
- package/dist/cjs/ui/components/ListDatabases/ListDatabases.d.ts.map +1 -1
- package/dist/cjs/ui/components/ListDatabases/ListDatabases.js +11 -25
- package/dist/cjs/ui/components/ListDatabases/ListDatabases.js.map +1 -1
- package/dist/cjs/ui/lib/tools/list-databases.d.ts +1 -1
- package/dist/cjs/ui/lib/tools/list-databases.d.ts.map +1 -1
- package/dist/cjs/ui/lib/tools/list-databases.js +1 -1
- package/dist/cjs/ui/lib/tools/list-databases.js.map +1 -1
- package/dist/esm/common/atlas/apiClient.d.ts +3 -1
- package/dist/esm/common/atlas/apiClient.d.ts.map +1 -1
- package/dist/esm/common/atlas/apiClient.js +1 -1
- package/dist/esm/common/atlas/apiClient.js.map +1 -1
- package/dist/esm/common/config/configOverrides.d.ts +3 -3
- package/dist/esm/common/config/configOverrides.d.ts.map +1 -1
- package/dist/esm/common/config/configOverrides.js.map +1 -1
- package/dist/esm/common/config/parseUserConfig.js +4 -3
- package/dist/esm/common/config/parseUserConfig.js.map +1 -1
- package/dist/esm/common/config/userConfig.d.ts +3 -0
- package/dist/esm/common/config/userConfig.d.ts.map +1 -1
- package/dist/esm/common/config/userConfig.js +18 -0
- package/dist/esm/common/config/userConfig.js.map +1 -1
- package/dist/esm/common/connectionErrorHandler.d.ts +3 -3
- package/dist/esm/common/connectionErrorHandler.d.ts.map +1 -1
- package/dist/esm/common/connectionManager.d.ts +1 -1
- package/dist/esm/common/connectionManager.d.ts.map +1 -1
- package/dist/esm/common/connectionManager.js +1 -1
- package/dist/esm/common/connectionManager.js.map +1 -1
- package/dist/esm/common/logger.d.ts +8 -3
- package/dist/esm/common/logger.d.ts.map +1 -1
- package/dist/esm/common/logger.js +5 -0
- package/dist/esm/common/logger.js.map +1 -1
- package/dist/esm/common/packageInfo.js +1 -1
- package/dist/esm/common/session.d.ts +6 -3
- package/dist/esm/common/session.d.ts.map +1 -1
- package/dist/esm/common/session.js +2 -12
- package/dist/esm/common/session.js.map +1 -1
- package/dist/esm/lib.d.ts +12 -4
- package/dist/esm/lib.d.ts.map +1 -1
- package/dist/esm/lib.js +9 -3
- package/dist/esm/lib.js.map +1 -1
- package/dist/esm/resources/resource.d.ts +3 -3
- package/dist/esm/resources/resource.d.ts.map +1 -1
- package/dist/esm/resources/resource.js.map +1 -1
- package/dist/esm/server.d.ts +67 -32
- package/dist/esm/server.d.ts.map +1 -1
- package/dist/esm/server.js +4 -1
- package/dist/esm/server.js.map +1 -1
- package/dist/esm/tools/assistant/assistantTool.d.ts +17 -0
- package/dist/esm/tools/assistant/assistantTool.d.ts.map +1 -0
- package/dist/esm/tools/assistant/assistantTool.js +40 -0
- package/dist/esm/tools/assistant/assistantTool.js.map +1 -0
- package/dist/esm/tools/assistant/listKnowledgeSources.d.ts +29 -0
- package/dist/esm/tools/assistant/listKnowledgeSources.d.ts.map +1 -0
- package/dist/esm/tools/assistant/listKnowledgeSources.js +47 -0
- package/dist/esm/tools/assistant/listKnowledgeSources.js.map +1 -0
- package/dist/esm/tools/assistant/searchKnowledge.d.ts +59 -0
- package/dist/esm/tools/assistant/searchKnowledge.d.ts.map +1 -0
- package/dist/esm/tools/assistant/searchKnowledge.js +61 -0
- package/dist/esm/tools/assistant/searchKnowledge.js.map +1 -0
- package/dist/esm/tools/assistant/tools.d.ts +4 -0
- package/dist/esm/tools/assistant/tools.d.ts.map +1 -0
- package/dist/esm/tools/assistant/tools.js +4 -0
- package/dist/esm/tools/assistant/tools.js.map +1 -0
- package/dist/esm/tools/atlas/connect/connectCluster.d.ts +1 -1
- package/dist/esm/tools/atlas/connect/connectCluster.d.ts.map +1 -1
- package/dist/esm/tools/atlas/connect/connectCluster.js +1 -1
- package/dist/esm/tools/atlas/connect/connectCluster.js.map +1 -1
- package/dist/esm/tools/atlas/create/createAccessList.d.ts +1 -1
- package/dist/esm/tools/atlas/create/createAccessList.d.ts.map +1 -1
- package/dist/esm/tools/atlas/create/createAccessList.js +1 -1
- package/dist/esm/tools/atlas/create/createAccessList.js.map +1 -1
- package/dist/esm/tools/atlas/create/createDBUser.d.ts +1 -1
- package/dist/esm/tools/atlas/create/createDBUser.d.ts.map +1 -1
- package/dist/esm/tools/atlas/create/createDBUser.js +1 -1
- package/dist/esm/tools/atlas/create/createDBUser.js.map +1 -1
- package/dist/esm/tools/atlas/create/createFreeCluster.d.ts +1 -1
- package/dist/esm/tools/atlas/create/createFreeCluster.d.ts.map +1 -1
- package/dist/esm/tools/atlas/create/createFreeCluster.js +1 -1
- package/dist/esm/tools/atlas/create/createFreeCluster.js.map +1 -1
- package/dist/esm/tools/atlas/create/createProject.d.ts +1 -1
- package/dist/esm/tools/atlas/create/createProject.d.ts.map +1 -1
- package/dist/esm/tools/atlas/create/createProject.js +1 -1
- package/dist/esm/tools/atlas/create/createProject.js.map +1 -1
- package/dist/esm/tools/atlas/read/getPerformanceAdvisor.d.ts +1 -1
- package/dist/esm/tools/atlas/read/getPerformanceAdvisor.d.ts.map +1 -1
- package/dist/esm/tools/atlas/read/getPerformanceAdvisor.js +1 -1
- package/dist/esm/tools/atlas/read/getPerformanceAdvisor.js.map +1 -1
- package/dist/esm/tools/atlas/read/inspectAccessList.d.ts +1 -1
- package/dist/esm/tools/atlas/read/inspectAccessList.d.ts.map +1 -1
- package/dist/esm/tools/atlas/read/inspectAccessList.js +1 -1
- package/dist/esm/tools/atlas/read/inspectAccessList.js.map +1 -1
- package/dist/esm/tools/atlas/read/inspectCluster.d.ts +1 -1
- package/dist/esm/tools/atlas/read/inspectCluster.d.ts.map +1 -1
- package/dist/esm/tools/atlas/read/inspectCluster.js +1 -1
- package/dist/esm/tools/atlas/read/inspectCluster.js.map +1 -1
- package/dist/esm/tools/atlas/read/listAlerts.d.ts +1 -1
- package/dist/esm/tools/atlas/read/listAlerts.d.ts.map +1 -1
- package/dist/esm/tools/atlas/read/listAlerts.js +1 -1
- package/dist/esm/tools/atlas/read/listAlerts.js.map +1 -1
- package/dist/esm/tools/atlas/read/listClusters.d.ts +1 -1
- package/dist/esm/tools/atlas/read/listClusters.d.ts.map +1 -1
- package/dist/esm/tools/atlas/read/listClusters.js +1 -1
- package/dist/esm/tools/atlas/read/listClusters.js.map +1 -1
- package/dist/esm/tools/atlas/read/listDBUsers.d.ts +1 -1
- package/dist/esm/tools/atlas/read/listDBUsers.d.ts.map +1 -1
- package/dist/esm/tools/atlas/read/listDBUsers.js +1 -1
- package/dist/esm/tools/atlas/read/listDBUsers.js.map +1 -1
- package/dist/esm/tools/atlas/read/listOrgs.d.ts +1 -1
- package/dist/esm/tools/atlas/read/listOrgs.d.ts.map +1 -1
- package/dist/esm/tools/atlas/read/listOrgs.js +1 -1
- package/dist/esm/tools/atlas/read/listOrgs.js.map +1 -1
- package/dist/esm/tools/atlas/read/listProjects.d.ts +1 -1
- package/dist/esm/tools/atlas/read/listProjects.d.ts.map +1 -1
- package/dist/esm/tools/atlas/read/listProjects.js +1 -1
- package/dist/esm/tools/atlas/read/listProjects.js.map +1 -1
- package/dist/esm/tools/atlasLocal/connect/connectDeployment.d.ts +1 -1
- package/dist/esm/tools/atlasLocal/connect/connectDeployment.d.ts.map +1 -1
- package/dist/esm/tools/atlasLocal/connect/connectDeployment.js +1 -1
- package/dist/esm/tools/atlasLocal/connect/connectDeployment.js.map +1 -1
- package/dist/esm/tools/atlasLocal/create/createDeployment.d.ts +1 -1
- package/dist/esm/tools/atlasLocal/create/createDeployment.d.ts.map +1 -1
- package/dist/esm/tools/atlasLocal/create/createDeployment.js +1 -1
- package/dist/esm/tools/atlasLocal/create/createDeployment.js.map +1 -1
- package/dist/esm/tools/atlasLocal/delete/deleteDeployment.d.ts +1 -1
- package/dist/esm/tools/atlasLocal/delete/deleteDeployment.d.ts.map +1 -1
- package/dist/esm/tools/atlasLocal/delete/deleteDeployment.js +1 -1
- package/dist/esm/tools/atlasLocal/delete/deleteDeployment.js.map +1 -1
- package/dist/esm/tools/atlasLocal/read/listDeployments.d.ts +1 -1
- package/dist/esm/tools/atlasLocal/read/listDeployments.d.ts.map +1 -1
- package/dist/esm/tools/atlasLocal/read/listDeployments.js +1 -1
- package/dist/esm/tools/atlasLocal/read/listDeployments.js.map +1 -1
- package/dist/esm/tools/index.d.ts +2 -1
- package/dist/esm/tools/index.d.ts.map +1 -1
- package/dist/esm/tools/index.js +3 -0
- package/dist/esm/tools/index.js.map +1 -1
- package/dist/esm/tools/mongodb/connect/connect.d.ts +1 -1
- package/dist/esm/tools/mongodb/connect/connect.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/connect/connect.js +1 -1
- package/dist/esm/tools/mongodb/connect/connect.js.map +1 -1
- package/dist/esm/tools/mongodb/connect/switchConnection.d.ts +1 -1
- package/dist/esm/tools/mongodb/connect/switchConnection.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/connect/switchConnection.js +1 -1
- package/dist/esm/tools/mongodb/connect/switchConnection.js.map +1 -1
- package/dist/esm/tools/mongodb/create/createCollection.d.ts +18 -6
- package/dist/esm/tools/mongodb/create/createCollection.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/create/createCollection.js +14 -2
- package/dist/esm/tools/mongodb/create/createCollection.js.map +1 -1
- package/dist/esm/tools/mongodb/create/createIndex.d.ts +17 -4
- package/dist/esm/tools/mongodb/create/createIndex.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/create/createIndex.js +14 -1
- package/dist/esm/tools/mongodb/create/createIndex.js.map +1 -1
- package/dist/esm/tools/mongodb/create/insertMany.d.ts +18 -5
- package/dist/esm/tools/mongodb/create/insertMany.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/create/insertMany.js +16 -2
- package/dist/esm/tools/mongodb/create/insertMany.js.map +1 -1
- package/dist/esm/tools/mongodb/delete/deleteMany.d.ts +19 -7
- package/dist/esm/tools/mongodb/delete/deleteMany.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/delete/deleteMany.js +13 -1
- package/dist/esm/tools/mongodb/delete/deleteMany.js.map +1 -1
- package/dist/esm/tools/mongodb/delete/dropCollection.d.ts +18 -6
- package/dist/esm/tools/mongodb/delete/dropCollection.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/delete/dropCollection.js +14 -2
- package/dist/esm/tools/mongodb/delete/dropCollection.js.map +1 -1
- package/dist/esm/tools/mongodb/delete/dropDatabase.d.ts +15 -5
- package/dist/esm/tools/mongodb/delete/dropDatabase.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/delete/dropDatabase.js +12 -2
- package/dist/esm/tools/mongodb/delete/dropDatabase.js.map +1 -1
- package/dist/esm/tools/mongodb/delete/dropIndex.d.ts +17 -4
- package/dist/esm/tools/mongodb/delete/dropIndex.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/delete/dropIndex.js +26 -1
- package/dist/esm/tools/mongodb/delete/dropIndex.js.map +1 -1
- package/dist/esm/tools/mongodb/metadata/collectionIndexes.d.ts +78 -9
- package/dist/esm/tools/mongodb/metadata/collectionIndexes.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/metadata/collectionIndexes.js +41 -29
- package/dist/esm/tools/mongodb/metadata/collectionIndexes.js.map +1 -1
- package/dist/esm/tools/mongodb/metadata/collectionSchema.d.ts +13 -4
- package/dist/esm/tools/mongodb/metadata/collectionSchema.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/metadata/collectionSchema.js +17 -8
- package/dist/esm/tools/mongodb/metadata/collectionSchema.js.map +1 -1
- package/dist/esm/tools/mongodb/metadata/collectionStorageSize.d.ts +18 -7
- package/dist/esm/tools/mongodb/metadata/collectionStorageSize.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/metadata/collectionStorageSize.js +12 -3
- package/dist/esm/tools/mongodb/metadata/collectionStorageSize.js.map +1 -1
- package/dist/esm/tools/mongodb/metadata/dbStats.d.ts +13 -5
- package/dist/esm/tools/mongodb/metadata/dbStats.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/metadata/dbStats.js +9 -1
- package/dist/esm/tools/mongodb/metadata/dbStats.js.map +1 -1
- package/dist/esm/tools/mongodb/metadata/explain.d.ts +15 -4
- package/dist/esm/tools/mongodb/metadata/explain.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/metadata/explain.js +12 -3
- package/dist/esm/tools/mongodb/metadata/explain.js.map +1 -1
- package/dist/esm/tools/mongodb/metadata/listCollections.d.ts +27 -5
- package/dist/esm/tools/mongodb/metadata/listCollections.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/metadata/listCollections.js +21 -3
- package/dist/esm/tools/mongodb/metadata/listCollections.js.map +1 -1
- package/dist/esm/tools/mongodb/metadata/listDatabases.d.ts +5 -6
- package/dist/esm/tools/mongodb/metadata/listDatabases.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/metadata/listDatabases.js +3 -3
- package/dist/esm/tools/mongodb/metadata/listDatabases.js.map +1 -1
- package/dist/esm/tools/mongodb/metadata/logs.d.ts +15 -4
- package/dist/esm/tools/mongodb/metadata/logs.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/metadata/logs.js +12 -1
- package/dist/esm/tools/mongodb/metadata/logs.js.map +1 -1
- package/dist/esm/tools/mongodb/mongodbTool.d.ts +1 -1
- package/dist/esm/tools/mongodb/mongodbTool.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/mongodbTool.js +3 -3
- package/dist/esm/tools/mongodb/mongodbTool.js.map +1 -1
- package/dist/esm/tools/mongodb/read/aggregate.d.ts +1 -1
- package/dist/esm/tools/mongodb/read/aggregate.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/read/aggregate.js +1 -5
- package/dist/esm/tools/mongodb/read/aggregate.js.map +1 -1
- package/dist/esm/tools/mongodb/read/count.d.ts +1 -1
- package/dist/esm/tools/mongodb/read/count.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/read/count.js +1 -2
- package/dist/esm/tools/mongodb/read/count.js.map +1 -1
- package/dist/esm/tools/mongodb/read/export.d.ts +1 -1
- package/dist/esm/tools/mongodb/read/export.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/read/export.js +1 -3
- package/dist/esm/tools/mongodb/read/export.js.map +1 -1
- package/dist/esm/tools/mongodb/read/find.d.ts +1 -1
- package/dist/esm/tools/mongodb/read/find.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/read/find.js +1 -4
- package/dist/esm/tools/mongodb/read/find.js.map +1 -1
- package/dist/esm/tools/mongodb/tools.d.ts +17 -17
- package/dist/esm/tools/mongodb/tools.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/tools.js.map +1 -1
- package/dist/esm/tools/mongodb/update/renameCollection.d.ts +18 -5
- package/dist/esm/tools/mongodb/update/renameCollection.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/update/renameCollection.js +43 -7
- package/dist/esm/tools/mongodb/update/renameCollection.js.map +1 -1
- package/dist/esm/tools/mongodb/update/updateMany.d.ts +21 -4
- package/dist/esm/tools/mongodb/update/updateMany.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/update/updateMany.js +18 -1
- package/dist/esm/tools/mongodb/update/updateMany.js.map +1 -1
- package/dist/esm/tools/tool.d.ts +99 -26
- package/dist/esm/tools/tool.d.ts.map +1 -1
- package/dist/esm/tools/tool.js +12 -8
- package/dist/esm/tools/tool.js.map +1 -1
- package/dist/esm/transports/base.d.ts +81 -89
- package/dist/esm/transports/base.d.ts.map +1 -1
- package/dist/esm/transports/base.js +63 -30
- package/dist/esm/transports/base.js.map +1 -1
- package/dist/esm/transports/dryModeRunner.d.ts +6 -2
- package/dist/esm/transports/dryModeRunner.d.ts.map +1 -1
- package/dist/esm/transports/dryModeRunner.js +2 -2
- package/dist/esm/transports/dryModeRunner.js.map +1 -1
- package/dist/esm/transports/interfaces/common.d.ts +80 -0
- package/dist/esm/transports/interfaces/common.d.ts.map +1 -0
- package/dist/esm/transports/interfaces/common.js +2 -0
- package/dist/esm/transports/interfaces/common.js.map +1 -0
- package/dist/esm/transports/interfaces/index.d.ts +4 -0
- package/dist/esm/transports/interfaces/index.d.ts.map +1 -0
- package/dist/esm/transports/interfaces/index.js +2 -0
- package/dist/esm/transports/interfaces/index.js.map +1 -0
- package/dist/esm/transports/interfaces/legacy.d.ts +100 -0
- package/dist/esm/transports/interfaces/legacy.d.ts.map +1 -0
- package/dist/esm/transports/interfaces/legacy.js +2 -0
- package/dist/esm/transports/interfaces/legacy.js.map +1 -0
- package/dist/esm/transports/interfaces/v1.d.ts +6 -0
- package/dist/esm/transports/interfaces/v1.d.ts.map +1 -0
- package/dist/esm/transports/interfaces/v1.js +2 -0
- package/dist/esm/transports/interfaces/v1.js.map +1 -0
- package/dist/esm/transports/runnerConfigs/commonConfig.d.ts +85 -0
- package/dist/esm/transports/runnerConfigs/commonConfig.d.ts.map +1 -0
- package/dist/esm/transports/runnerConfigs/commonConfig.js +2 -0
- package/dist/esm/transports/runnerConfigs/commonConfig.js.map +1 -0
- package/dist/esm/transports/runnerConfigs/index.d.ts +6 -0
- package/dist/esm/transports/runnerConfigs/index.d.ts.map +1 -0
- package/dist/esm/transports/runnerConfigs/index.js +2 -0
- package/dist/esm/transports/runnerConfigs/index.js.map +1 -0
- package/dist/esm/transports/runnerConfigs/legacy.d.ts +100 -0
- package/dist/esm/transports/runnerConfigs/legacy.d.ts.map +1 -0
- package/dist/esm/transports/runnerConfigs/legacy.js +2 -0
- package/dist/esm/transports/runnerConfigs/legacy.js.map +1 -0
- package/dist/esm/transports/runnerConfigs/v1.d.ts +22 -0
- package/dist/esm/transports/runnerConfigs/v1.d.ts.map +1 -0
- package/dist/esm/transports/runnerConfigs/v1.js +2 -0
- package/dist/esm/transports/runnerConfigs/v1.js.map +1 -0
- package/dist/esm/transports/stdio.d.ts +9 -3
- package/dist/esm/transports/stdio.d.ts.map +1 -1
- package/dist/esm/transports/stdio.js +2 -2
- package/dist/esm/transports/stdio.js.map +1 -1
- package/dist/esm/transports/streamableHttp.d.ts +26 -8
- package/dist/esm/transports/streamableHttp.d.ts.map +1 -1
- package/dist/esm/transports/streamableHttp.js +205 -52
- package/dist/esm/transports/streamableHttp.js.map +1 -1
- package/dist/esm/ui/components/ListDatabases/ListDatabases.d.ts +1 -6
- package/dist/esm/ui/components/ListDatabases/ListDatabases.d.ts.map +1 -1
- package/dist/esm/ui/components/ListDatabases/ListDatabases.js +11 -25
- package/dist/esm/ui/components/ListDatabases/ListDatabases.js.map +1 -1
- package/dist/esm/ui/lib/tools/list-databases.d.ts +1 -1
- package/dist/esm/ui/lib/tools/list-databases.d.ts.map +1 -1
- package/dist/esm/ui/lib/tools/list-databases.js +1 -1
- package/dist/esm/ui/lib/tools/list-databases.js.map +1 -1
- package/package.json +20 -19
|
@@ -1,17 +1,33 @@
|
|
|
1
1
|
import type { UserConfig } from "../common/config/userConfig.js";
|
|
2
|
-
import { Server, type ServerOptions } from "../server.js";
|
|
2
|
+
import { type AnyToolClass, Server, type ServerOptions } from "../server.js";
|
|
3
|
+
import { type SessionOptions } from "../common/session.js";
|
|
3
4
|
import type { LoggerBase } from "../common/logger.js";
|
|
5
|
+
import { CompositeLogger } from "../common/logger.js";
|
|
4
6
|
import { DeviceId } from "../helpers/deviceId.js";
|
|
5
7
|
import { type ConnectionManagerFactoryFn } from "../common/connectionManager.js";
|
|
6
8
|
import { type ConnectionErrorHandler } from "../common/connectionErrorHandler.js";
|
|
7
9
|
import type { CommonProperties } from "../telemetry/types.js";
|
|
8
10
|
import type { AtlasLocalClientFactoryFn } from "../common/atlasLocal.js";
|
|
9
|
-
import type
|
|
10
|
-
|
|
11
|
+
import { type ApiClientFactoryFn } from "../common/atlas/apiClient.js";
|
|
12
|
+
/**
|
|
13
|
+
* Request context containing HTTP headers and query parameters.
|
|
14
|
+
* This type is primarily used by HTTP-based transports.
|
|
15
|
+
*/
|
|
11
16
|
export type RequestContext = {
|
|
12
17
|
headers?: Record<string, string | string[] | undefined>;
|
|
13
18
|
query?: Record<string, string | string[] | undefined>;
|
|
14
19
|
};
|
|
20
|
+
export type CustomizableSessionOptions<TUserConfig extends UserConfig = UserConfig> = Partial<Pick<SessionOptions<TUserConfig>, "userConfig" | "apiClient" | "atlasLocalClient" | "connectionManager" | "connectionErrorHandler"> & {
|
|
21
|
+
sessionIdGenerator?: () => string;
|
|
22
|
+
}>;
|
|
23
|
+
export type CustomizableServerOptions<TUserConfig extends UserConfig = UserConfig, TContext = unknown> = Partial<Pick<ServerOptions<TUserConfig, TContext>, "uiRegistry" | "tools" | "toolContext" | "elicitation">> & {
|
|
24
|
+
/**
|
|
25
|
+
* An optional key value pair of telemetry properties that are reported to
|
|
26
|
+
* the telemetry backend. Most, if not all, of the properties are captured
|
|
27
|
+
* automatically.
|
|
28
|
+
*/
|
|
29
|
+
telemetryProperties?: Partial<CommonProperties>;
|
|
30
|
+
};
|
|
15
31
|
/**
|
|
16
32
|
* A function to dynamically generate `UserConfig` object, potentially unique to
|
|
17
33
|
* each MCP client session.
|
|
@@ -29,10 +45,10 @@ export type RequestContext = {
|
|
|
29
45
|
* @see {@link RequestContext} to inspect the properties available on
|
|
30
46
|
* `requestContext` object.
|
|
31
47
|
*/
|
|
32
|
-
type CreateSessionConfigFn = (context: {
|
|
33
|
-
userConfig:
|
|
48
|
+
type CreateSessionConfigFn<TUserConfig extends UserConfig = UserConfig> = (context: {
|
|
49
|
+
userConfig: TUserConfig;
|
|
34
50
|
request?: RequestContext;
|
|
35
|
-
}) => Promise<
|
|
51
|
+
}) => Promise<TUserConfig> | TUserConfig;
|
|
36
52
|
/**
|
|
37
53
|
* Configuration options for customizing how transport runners are initialized.
|
|
38
54
|
* This includes specifying the base user configuration, providing custom
|
|
@@ -47,8 +63,10 @@ type CreateSessionConfigFn = (context: {
|
|
|
47
63
|
* advanced use-cases (such as embedding the MCP server in another application
|
|
48
64
|
* or supporting custom authentication flows) may require customizing other
|
|
49
65
|
* `TransportRunnerConfig` options as well.
|
|
66
|
+
*
|
|
67
|
+
* @template TContext - The type of the custom tool context object
|
|
50
68
|
*/
|
|
51
|
-
export type TransportRunnerConfig = {
|
|
69
|
+
export type TransportRunnerConfig<TUserConfig extends UserConfig = UserConfig> = {
|
|
52
70
|
/**
|
|
53
71
|
* Base user configuration for the server.
|
|
54
72
|
*
|
|
@@ -65,8 +83,9 @@ export type TransportRunnerConfig = {
|
|
|
65
83
|
* server library exports) to create a default configuration -
|
|
66
84
|
* `UserConfigSchema.parse({})`.
|
|
67
85
|
*/
|
|
68
|
-
userConfig:
|
|
86
|
+
userConfig: TUserConfig;
|
|
69
87
|
/**
|
|
88
|
+
* @deprecated Use `start({ sessionOptions: {connectionManager: MyCustomConnectionManager} })` instead
|
|
70
89
|
* An optional factory function to generates an instance of
|
|
71
90
|
* `ConnectionManager`. When not provided, MongoDB MCP Server uses an
|
|
72
91
|
* internal implementation to manage connection to MongoDB deployments.
|
|
@@ -75,19 +94,10 @@ export type TransportRunnerConfig = {
|
|
|
75
94
|
* connections differently and outside of MongoDB MCP server.
|
|
76
95
|
*/
|
|
77
96
|
createConnectionManager?: ConnectionManagerFactoryFn;
|
|
78
|
-
/**
|
|
79
|
-
* An optional function to handle connection related errors. When not
|
|
80
|
-
* provided, MongoDB MCP Server uses an internal implementation to handle
|
|
81
|
-
* the errors raised by internal implementation of `ConnectionManager`
|
|
82
|
-
* class.
|
|
83
|
-
*
|
|
84
|
-
* Customize this only if you need to handle the Connection errors different
|
|
85
|
-
* from the internal implementation or if you have provided a different
|
|
86
|
-
* implementation of `ConnectionManager` that might raise errors unknown to
|
|
87
|
-
* default internal connection error handler.
|
|
88
|
-
*/
|
|
97
|
+
/** @deprecated Use `start({ serverOptions: {connectionErrorHandler: MyCustomConnectionErrorHandler} })` instead */
|
|
89
98
|
connectionErrorHandler?: ConnectionErrorHandler;
|
|
90
99
|
/**
|
|
100
|
+
* @deprecated Use `start({ sessionOptions: {atlasLocalClient: MyCustomAtlasLocalClient} })` instead
|
|
91
101
|
* An optional factory function to create a client for working with Atlas
|
|
92
102
|
* local deployments. When not provided, MongoDB MCP Server uses an internal
|
|
93
103
|
* implementation to create the local Atlas client.
|
|
@@ -103,67 +113,17 @@ export type TransportRunnerConfig = {
|
|
|
103
113
|
*/
|
|
104
114
|
additionalLoggers?: LoggerBase[];
|
|
105
115
|
/**
|
|
106
|
-
*
|
|
107
|
-
* the telemetry backend. Most, if not all, of the properties are captured
|
|
108
|
-
* automatically.
|
|
116
|
+
* @deprecated This field will be removed in a future version. Use `createServer({ serverOptions: {telemetryProperties: MyCustomTelemetryProperties} })` instead.
|
|
109
117
|
*/
|
|
110
118
|
telemetryProperties?: Partial<CommonProperties>;
|
|
119
|
+
/** @deprecated Use `createServer({ serverOptions: {tools: [...AllTools, MyCustomTool]} })` instead */
|
|
120
|
+
tools?: AnyToolClass[];
|
|
111
121
|
/**
|
|
112
|
-
*
|
|
113
|
-
* MCP Server.
|
|
114
|
-
*
|
|
115
|
-
* When not provided, MongoDB MCP Server will register all internal tools.
|
|
116
|
-
* When specified, **only** the tools in this list will be registered.
|
|
117
|
-
*
|
|
118
|
-
* This allows you to:
|
|
119
|
-
* - Register only custom tools (excluding all internal tools)
|
|
120
|
-
* - Register a subset of internal tools alongside custom tools
|
|
121
|
-
* - Register all internal tools plus custom tools
|
|
122
|
-
*
|
|
123
|
-
* To include internal tools, import them from `mongodb-mcp-server/tools`:
|
|
124
|
-
*
|
|
125
|
-
* ```typescript
|
|
126
|
-
* import { AllTools, AggregateTool, FindTool } from "mongodb-mcp-server/tools";
|
|
127
|
-
*
|
|
128
|
-
* // Register all internal tools plus custom tools
|
|
129
|
-
* tools: [...AllTools, MyCustomTool]
|
|
130
|
-
*
|
|
131
|
-
* // Register only specific MongoDB tools plus custom tools
|
|
132
|
-
* tools: [AggregateTool, FindTool, MyCustomTool]
|
|
133
|
-
*
|
|
134
|
-
* // Register all internal tools of mongodb category
|
|
135
|
-
* tools: [AllTools.filter((tool) => tool.category === "mongodb")]
|
|
136
|
-
* ```
|
|
137
|
-
*
|
|
138
|
-
* Note: Ensure that each tool has unique names otherwise the server will
|
|
139
|
-
* throw an error when initializing an MCP Client session. If you're using
|
|
140
|
-
* only the internal tools, then you don't have to worry about it unless,
|
|
141
|
-
* you've overridden the tool names.
|
|
142
|
-
*
|
|
143
|
-
* To ensure that you provide compliant tool implementations extend your
|
|
144
|
-
* tool implementation using `ToolBase` class and ensure that they conform
|
|
145
|
-
* to `ToolClass` type.
|
|
146
|
-
*
|
|
147
|
-
* @see {@link ToolClass} for the type that tool classes must conform to
|
|
148
|
-
* @see {@link ToolBase} for base class for all the tools
|
|
149
|
-
*/
|
|
150
|
-
tools?: ToolClass[];
|
|
151
|
-
/**
|
|
152
|
-
* An optional function to hook into session configuration lifecycle and
|
|
153
|
-
* provide session specific configuration (`UserConfig`).
|
|
154
|
-
*
|
|
155
|
-
* The function is called before each session is created, allowing you to:
|
|
156
|
-
* - Fetch configuration from external sources (secrets managers, APIs)
|
|
157
|
-
* - Apply user-specific permissions and limits
|
|
158
|
-
* - Modify connection strings dynamically
|
|
159
|
-
* - Validate authentication credentials
|
|
160
|
-
*
|
|
161
|
-
* This function is called for each new MCP client connection. For stdio
|
|
162
|
-
* transport, this is called once at server startup. For HTTP transport,
|
|
163
|
-
* this is called for each new session.
|
|
122
|
+
* @deprecated This method will be removed in a future version. Use `createServer({ userConfig: MyCustomUserConfig})` instead.
|
|
164
123
|
*/
|
|
165
|
-
createSessionConfig?: CreateSessionConfigFn
|
|
124
|
+
createSessionConfig?: CreateSessionConfigFn<TUserConfig>;
|
|
166
125
|
/**
|
|
126
|
+
* @deprecated Use `createServer({ sessionOptions: {apiClient: MyCustomApiClient} })` instead
|
|
167
127
|
* An optional factory function to generates an instance of
|
|
168
128
|
* `ApiClient`. When not provided, MongoDB MCP Server uses an
|
|
169
129
|
* internal implementation to create the API client.
|
|
@@ -173,25 +133,57 @@ export type TransportRunnerConfig = {
|
|
|
173
133
|
*/
|
|
174
134
|
createApiClient?: ApiClientFactoryFn;
|
|
175
135
|
};
|
|
176
|
-
export declare abstract class TransportRunnerBase {
|
|
136
|
+
export declare abstract class TransportRunnerBase<TUserConfig extends UserConfig = UserConfig, TContext = unknown> {
|
|
177
137
|
logger: LoggerBase;
|
|
178
138
|
deviceId: DeviceId;
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
139
|
+
/** Base user configuration for the server. */
|
|
140
|
+
protected readonly userConfig: TUserConfig;
|
|
141
|
+
/** @deprecated This method will be removed in a future version. Extend `StreamableHttpRunner` and override `createServerForRequest` instead. */
|
|
142
|
+
protected readonly createConnectionManager: ConnectionManagerFactoryFn;
|
|
143
|
+
/** @deprecated This method will be removed in a future version. Extend `StreamableHttpRunner` and override `createServerForRequest` instead. */
|
|
144
|
+
protected readonly connectionErrorHandler: ConnectionErrorHandler;
|
|
145
|
+
/** @deprecated This method will be removed in a future version. Extend `StreamableHttpRunner` and override `createServerForRequest` instead. */
|
|
146
|
+
protected readonly createAtlasLocalClient: AtlasLocalClientFactoryFn;
|
|
147
|
+
/** @deprecated This field will be removed in a future version. Use `start({ serverOptions: {telemetryProperties: MyCustomTelemetryProperties} })` instead. */
|
|
148
|
+
protected readonly telemetryProperties: Partial<CommonProperties>;
|
|
149
|
+
/** @deprecated This field will be removed in a future version. Use `start({ serverOptions: {tools: [...AllTools, MyCustomTool]} })` instead. */
|
|
150
|
+
protected readonly tools?: AnyToolClass[];
|
|
151
|
+
/** @deprecated This method will be removed in a future version. Extend `StreamableHttpRunner` and override `createServerForRequest` instead. */
|
|
152
|
+
protected readonly createSessionConfig?: CreateSessionConfigFn<TUserConfig>;
|
|
153
|
+
/** @deprecated This method will be removed in a future version. Extend `StreamableHttpRunner` and override `createServerForRequest` instead. */
|
|
154
|
+
protected readonly createApiClient: ApiClientFactoryFn;
|
|
155
|
+
protected constructor({ userConfig, createConnectionManager, connectionErrorHandler, createAtlasLocalClient, additionalLoggers, telemetryProperties, tools, createSessionConfig, createApiClient, }: TransportRunnerConfig<TUserConfig>);
|
|
156
|
+
/**
|
|
157
|
+
* Creates a new MCP server instance with the provided configuration.
|
|
158
|
+
* This method handles server instantiation but does NOT perform session config resolution.
|
|
159
|
+
*
|
|
160
|
+
* @param config - Configuration object containing userConfig and optional serverOptions
|
|
161
|
+
* @returns A configured Server instance
|
|
162
|
+
*/
|
|
163
|
+
protected createServer({ userConfig, serverOptions, sessionOptions, logger, }?: {
|
|
164
|
+
userConfig?: TUserConfig;
|
|
165
|
+
logger?: CompositeLogger;
|
|
166
|
+
serverOptions?: CustomizableServerOptions<TUserConfig, TContext>;
|
|
167
|
+
sessionOptions?: CustomizableSessionOptions<TUserConfig>;
|
|
168
|
+
}): Promise<Server<TUserConfig, TContext>>;
|
|
169
|
+
/**
|
|
170
|
+
* @deprecated Remove all session hooks and use `start({serverOptions, sessionOptions})` or override `StreamableHttpRunner.createServerForRequest` instead. This method will be removed in a future version.
|
|
171
|
+
*
|
|
172
|
+
* Creates a new MCP server instance and handles session config resolution.
|
|
173
|
+
* For new code, prefer using `createServer` with pre-resolved configuration.
|
|
174
|
+
*/
|
|
188
175
|
protected setupServer(request?: RequestContext, { serverOptions, }?: {
|
|
189
|
-
serverOptions?:
|
|
190
|
-
}): Promise<Server
|
|
191
|
-
abstract start(
|
|
176
|
+
serverOptions?: CustomizableServerOptions<TUserConfig, TContext>;
|
|
177
|
+
}): Promise<Server<TUserConfig, TContext>>;
|
|
178
|
+
abstract start({ serverOptions, sessionOptions, }: {
|
|
179
|
+
/** Upstream `serverOptions` passed from running `runner.start({ serverOptions })` method */
|
|
180
|
+
serverOptions?: ServerOptions<TUserConfig, TContext>;
|
|
181
|
+
/** Upstream `sessionOptions` passed from running `runner.start({ sessionOptions })` method */
|
|
182
|
+
sessionOptions?: SessionOptions<TUserConfig>;
|
|
183
|
+
}): Promise<void>;
|
|
192
184
|
abstract closeTransport(): Promise<void>;
|
|
193
185
|
close(): Promise<void>;
|
|
194
|
-
|
|
186
|
+
protected static getInstructions(config: UserConfig): string;
|
|
195
187
|
}
|
|
196
188
|
export {};
|
|
197
189
|
//# sourceMappingURL=base.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../src/transports/base.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAEjE,OAAO,EAAE,MAAM,EAAE,KAAK,aAAa,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../src/transports/base.ts"],"names":[],"mappings":"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"}
|
|
@@ -50,8 +50,9 @@ const atlasLocal_js_1 = require("../common/atlasLocal.js");
|
|
|
50
50
|
const vectorSearchEmbeddingsManager_js_1 = require("../common/search/vectorSearchEmbeddingsManager.js");
|
|
51
51
|
const configOverrides_js_1 = require("../common/config/configOverrides.js");
|
|
52
52
|
const apiClient_js_1 = require("../common/atlas/apiClient.js");
|
|
53
|
+
const apiClient_js_2 = require("../common/atlas/apiClient.js");
|
|
53
54
|
class TransportRunnerBase {
|
|
54
|
-
constructor({ userConfig, createConnectionManager = connectionManager_js_1.
|
|
55
|
+
constructor({ userConfig, createConnectionManager = connectionManager_js_1.defaultCreateConnectionManager, connectionErrorHandler = connectionErrorHandler_js_1.connectionErrorHandler, createAtlasLocalClient = atlasLocal_js_1.defaultCreateAtlasLocalClient, additionalLoggers = [], telemetryProperties = {}, tools, createSessionConfig, createApiClient = apiClient_js_2.defaultCreateApiClient, }) {
|
|
55
56
|
this.userConfig = userConfig;
|
|
56
57
|
this.createConnectionManager = createConnectionManager;
|
|
57
58
|
this.connectionErrorHandler = connectionErrorHandler;
|
|
@@ -75,52 +76,46 @@ class TransportRunnerBase {
|
|
|
75
76
|
this.logger = new logger_js_1.CompositeLogger(...loggers);
|
|
76
77
|
this.deviceId = deviceId_js_1.DeviceId.create(this.logger);
|
|
77
78
|
}
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
79
|
+
/**
|
|
80
|
+
* Creates a new MCP server instance with the provided configuration.
|
|
81
|
+
* This method handles server instantiation but does NOT perform session config resolution.
|
|
82
|
+
*
|
|
83
|
+
* @param config - Configuration object containing userConfig and optional serverOptions
|
|
84
|
+
* @returns A configured Server instance
|
|
85
|
+
*/
|
|
86
|
+
async createServer({ userConfig = this.userConfig, serverOptions, sessionOptions, logger = new logger_js_1.CompositeLogger(this.logger), } = {}) {
|
|
86
87
|
const mcpServer = new mcp_js_1.McpServer({
|
|
87
88
|
name: packageInfo_js_1.packageInfo.mcpServerName,
|
|
88
89
|
version: packageInfo_js_1.packageInfo.version,
|
|
89
90
|
}, {
|
|
90
91
|
instructions: TransportRunnerBase.getInstructions(userConfig),
|
|
91
92
|
});
|
|
92
|
-
const logger = new logger_js_1.CompositeLogger(this.logger);
|
|
93
93
|
const exportsManager = exportsManager_js_1.ExportsManager.init(userConfig, logger);
|
|
94
|
-
const connectionManager =
|
|
95
|
-
logger,
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
});
|
|
99
|
-
let apiClient;
|
|
100
|
-
if (userConfig.apiClientId && userConfig.apiClientSecret) {
|
|
101
|
-
apiClient = this.createApiClient({
|
|
94
|
+
const connectionManager = sessionOptions?.connectionManager ??
|
|
95
|
+
(await this.createConnectionManager({ logger: logger, deviceId: this.deviceId, userConfig }));
|
|
96
|
+
const apiClient = userConfig.apiClientId && userConfig.apiClientSecret
|
|
97
|
+
? new apiClient_js_1.ApiClient({
|
|
102
98
|
baseUrl: userConfig.apiBaseUrl,
|
|
103
99
|
credentials: {
|
|
104
100
|
clientId: userConfig.apiClientId,
|
|
105
101
|
clientSecret: userConfig.apiClientSecret,
|
|
106
102
|
},
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
}
|
|
103
|
+
}, logger)
|
|
104
|
+
: undefined;
|
|
110
105
|
const session = new session_js_1.Session({
|
|
111
106
|
userConfig,
|
|
112
|
-
atlasLocalClient: await this.createAtlasLocalClient({ logger }),
|
|
107
|
+
atlasLocalClient: sessionOptions?.atlasLocalClient ?? (await this.createAtlasLocalClient({ logger: this.logger })),
|
|
113
108
|
logger,
|
|
109
|
+
connectionErrorHandler: sessionOptions?.connectionErrorHandler ?? this.connectionErrorHandler,
|
|
114
110
|
exportsManager,
|
|
115
111
|
connectionManager,
|
|
116
112
|
keychain: keychain_js_1.Keychain.root,
|
|
117
113
|
vectorSearchEmbeddingsManager: new vectorSearchEmbeddingsManager_js_1.VectorSearchEmbeddingsManager(userConfig, connectionManager),
|
|
118
|
-
apiClient,
|
|
114
|
+
apiClient: sessionOptions?.apiClient ?? apiClient,
|
|
119
115
|
});
|
|
120
116
|
const telemetry = telemetry_js_1.Telemetry.create(session, userConfig, this.deviceId, {
|
|
121
|
-
commonProperties: this.telemetryProperties,
|
|
117
|
+
commonProperties: serverOptions?.telemetryProperties ?? this.telemetryProperties,
|
|
122
118
|
});
|
|
123
|
-
const elicitation = new elicitation_js_1.Elicitation({ server: mcpServer.server });
|
|
124
119
|
let uiRegistry = serverOptions?.uiRegistry;
|
|
125
120
|
if (!uiRegistry && userConfig.previewFeatures.includes("mcpUI")) {
|
|
126
121
|
const uiRegistryModule = await Promise.resolve().then(() => __importStar(require("../ui/registry/registry.js")));
|
|
@@ -131,10 +126,11 @@ class TransportRunnerBase {
|
|
|
131
126
|
session,
|
|
132
127
|
telemetry,
|
|
133
128
|
userConfig,
|
|
134
|
-
connectionErrorHandler: this.connectionErrorHandler,
|
|
135
|
-
elicitation,
|
|
136
|
-
tools: this.tools,
|
|
129
|
+
connectionErrorHandler: sessionOptions?.connectionErrorHandler ?? this.connectionErrorHandler,
|
|
130
|
+
elicitation: serverOptions?.elicitation ?? new elicitation_js_1.Elicitation({ server: mcpServer.server }),
|
|
131
|
+
tools: serverOptions?.tools ?? this.tools,
|
|
137
132
|
uiRegistry,
|
|
133
|
+
toolContext: serverOptions?.toolContext,
|
|
138
134
|
});
|
|
139
135
|
// We need to create the MCP logger after the server is constructed
|
|
140
136
|
// because it needs the server instance
|
|
@@ -143,6 +139,43 @@ class TransportRunnerBase {
|
|
|
143
139
|
}
|
|
144
140
|
return result;
|
|
145
141
|
}
|
|
142
|
+
/**
|
|
143
|
+
* @deprecated Remove all session hooks and use `start({serverOptions, sessionOptions})` or override `StreamableHttpRunner.createServerForRequest` instead. This method will be removed in a future version.
|
|
144
|
+
*
|
|
145
|
+
* Creates a new MCP server instance and handles session config resolution.
|
|
146
|
+
* For new code, prefer using `createServer` with pre-resolved configuration.
|
|
147
|
+
*/
|
|
148
|
+
async setupServer(request, { serverOptions, } = {}) {
|
|
149
|
+
let userConfig = this.userConfig;
|
|
150
|
+
if (this.createSessionConfig) {
|
|
151
|
+
userConfig = await this.createSessionConfig({ userConfig, request });
|
|
152
|
+
}
|
|
153
|
+
else {
|
|
154
|
+
userConfig = (0, configOverrides_js_1.applyConfigOverrides)({ baseConfig: this.userConfig, request });
|
|
155
|
+
}
|
|
156
|
+
return this.createServer({
|
|
157
|
+
userConfig,
|
|
158
|
+
serverOptions,
|
|
159
|
+
sessionOptions: {
|
|
160
|
+
connectionManager: await this.createConnectionManager({
|
|
161
|
+
logger: this.logger,
|
|
162
|
+
deviceId: this.deviceId,
|
|
163
|
+
userConfig,
|
|
164
|
+
}),
|
|
165
|
+
atlasLocalClient: await this.createAtlasLocalClient({ logger: this.logger }),
|
|
166
|
+
apiClient: userConfig.apiClientId && userConfig.apiClientSecret
|
|
167
|
+
? this.createApiClient({
|
|
168
|
+
baseUrl: userConfig.apiBaseUrl,
|
|
169
|
+
credentials: {
|
|
170
|
+
clientId: userConfig.apiClientId,
|
|
171
|
+
clientSecret: userConfig.apiClientSecret,
|
|
172
|
+
},
|
|
173
|
+
requestContext: request,
|
|
174
|
+
}, this.logger)
|
|
175
|
+
: undefined,
|
|
176
|
+
},
|
|
177
|
+
});
|
|
178
|
+
}
|
|
146
179
|
async close() {
|
|
147
180
|
try {
|
|
148
181
|
await this.closeTransport();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../../src/transports/base.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,6DAAuD;AACvD,
|
|
1
|
+
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../../src/transports/base.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { TransportRunnerBase, type TransportRunnerConfig } from "./base.js";
|
|
1
|
+
import { type CustomizableSessionOptions, TransportRunnerBase, type TransportRunnerConfig } from "./base.js";
|
|
2
|
+
import type { CustomizableServerOptions } from "../lib.js";
|
|
2
3
|
export type DryRunModeTestHelpers = {
|
|
3
4
|
logger: {
|
|
4
5
|
log(this: void, message: string): void;
|
|
@@ -10,7 +11,10 @@ export declare class DryRunModeRunner extends TransportRunnerBase {
|
|
|
10
11
|
private server;
|
|
11
12
|
private consoleLogger;
|
|
12
13
|
constructor({ logger, ...transportRunnerConfig }: DryRunModeRunnerConfig);
|
|
13
|
-
start(
|
|
14
|
+
start({ serverOptions, sessionOptions, }?: {
|
|
15
|
+
serverOptions?: CustomizableServerOptions;
|
|
16
|
+
sessionOptions?: CustomizableSessionOptions;
|
|
17
|
+
}): Promise<void>;
|
|
14
18
|
closeTransport(): Promise<void>;
|
|
15
19
|
private dumpConfig;
|
|
16
20
|
private dumpTools;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dryModeRunner.d.ts","sourceRoot":"","sources":["../../../src/transports/dryModeRunner.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,KAAK,qBAAqB,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"dryModeRunner.d.ts","sourceRoot":"","sources":["../../../src/transports/dryModeRunner.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,0BAA0B,EAAE,mBAAmB,EAAE,KAAK,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAE7G,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,WAAW,CAAC;AAE3D,MAAM,MAAM,qBAAqB,GAAG;IAChC,MAAM,EAAE;QACJ,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;QACvC,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;KAC5C,CAAC;CACL,CAAC;AAEF,KAAK,sBAAsB,GAAG,qBAAqB,GAAG,qBAAqB,CAAC;AAE5E,qBAAa,gBAAiB,SAAQ,mBAAmB;IACrD,OAAO,CAAC,MAAM,CAAqB;IACnC,OAAO,CAAC,aAAa,CAAkC;gBAE3C,EAAE,MAAM,EAAE,GAAG,qBAAqB,EAAE,EAAE,sBAAsB;IAKzD,KAAK,CAAC,EACjB,aAAa,EACb,cAAc,GACjB,GAAE;QACC,aAAa,CAAC,EAAE,yBAAyB,CAAC;QAC1C,cAAc,CAAC,EAAE,0BAA0B,CAAC;KAC1C,GAAG,OAAO,CAAC,IAAI,CAAC;IASP,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAI9C,OAAO,CAAC,UAAU;IAKlB,OAAO,CAAC,SAAS;CAWpB"}
|
|
@@ -8,8 +8,8 @@ class DryRunModeRunner extends base_js_1.TransportRunnerBase {
|
|
|
8
8
|
super(transportRunnerConfig);
|
|
9
9
|
this.consoleLogger = logger;
|
|
10
10
|
}
|
|
11
|
-
async start() {
|
|
12
|
-
this.server = await this.
|
|
11
|
+
async start({ serverOptions, sessionOptions, } = {}) {
|
|
12
|
+
this.server = await this.createServer({ serverOptions, sessionOptions });
|
|
13
13
|
const transport = new inMemoryTransport_js_1.InMemoryTransport();
|
|
14
14
|
await this.server.connect(transport);
|
|
15
15
|
this.dumpConfig();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dryModeRunner.js","sourceRoot":"","sources":["../../../src/transports/dryModeRunner.ts"],"names":[],"mappings":";;;AAAA,iEAA2D;AAC3D,
|
|
1
|
+
{"version":3,"file":"dryModeRunner.js","sourceRoot":"","sources":["../../../src/transports/dryModeRunner.ts"],"names":[],"mappings":";;;AAAA,iEAA2D;AAC3D,uCAA6G;AAa7G,MAAa,gBAAiB,SAAQ,6BAAmB;IAIrD,YAAY,EAAE,MAAM,EAAE,GAAG,qBAAqB,EAA0B;QACpE,KAAK,CAAC,qBAAqB,CAAC,CAAC;QAC7B,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC;IAChC,CAAC;IAEQ,KAAK,CAAC,KAAK,CAAC,EACjB,aAAa,EACb,cAAc,MAId,EAAE;QACF,IAAI,CAAC,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,EAAE,aAAa,EAAE,cAAc,EAAE,CAAC,CAAC;QACzE,MAAM,SAAS,GAAG,IAAI,wCAAiB,EAAE,CAAC;QAE1C,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACrC,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,IAAI,CAAC,SAAS,EAAE,CAAC;IACrB,CAAC;IAEQ,KAAK,CAAC,cAAc;QACzB,MAAM,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC;IAC/B,CAAC;IAEO,UAAU;QACd,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;QACzC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IACrE,CAAC;IAEO,SAAS;QACb,MAAM,KAAK,GACP,IAAI,CAAC,MAAM,EAAE,KAAK;aACb,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;aAClC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YACZ,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,QAAQ,EAAE,IAAI,CAAC,QAAQ;SAC1B,CAAC,CAAC,IAAI,EAAE,CAAC;QAClB,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;QACzC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAC3D,CAAC;CACJ;AA5CD,4CA4CC"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import type { UserConfig } from "../../common/config/userConfig.js";
|
|
2
|
+
import type { LoggerBase } from "../../common/logger.js";
|
|
3
|
+
import type { CommonProperties } from "../../telemetry/types.js";
|
|
4
|
+
import type { ToolClass } from "../../tools/tool.js";
|
|
5
|
+
export type RunnerConfigCommonParameters = {
|
|
6
|
+
schemaVersion?: undefined | number;
|
|
7
|
+
/**
|
|
8
|
+
* Base user configuration for the server.
|
|
9
|
+
*
|
|
10
|
+
* Can be generated by parsing CLI arguments, environment variables or
|
|
11
|
+
* written manually while conforming the interface requirements of
|
|
12
|
+
* `UserConfig`.
|
|
13
|
+
*
|
|
14
|
+
* To parse CLI arguments and environment variables in order to generate a
|
|
15
|
+
* `UserConfig` object, you can use `parseUserConfig` function, also
|
|
16
|
+
* exported as `parseUserConfig` through MCP server library
|
|
17
|
+
* exports.
|
|
18
|
+
*
|
|
19
|
+
* Optionally, you can also use `UserConfigSchema` (available through MCP
|
|
20
|
+
* server library exports) to create a default configuration -
|
|
21
|
+
* `UserConfigSchema.parse({})`.
|
|
22
|
+
*/
|
|
23
|
+
userConfig: UserConfig;
|
|
24
|
+
/**
|
|
25
|
+
* An optional list of loggers to be used in addition to the default logger
|
|
26
|
+
* implementations. When not provided, MongoDB MCP Server will not utilize
|
|
27
|
+
* any loggers other than the default that it works with.
|
|
28
|
+
*
|
|
29
|
+
* Customize this only if the default enabled loggers (disk/stderr/mcp) are
|
|
30
|
+
* not covering your use-case.
|
|
31
|
+
*/
|
|
32
|
+
additionalLoggers?: LoggerBase[];
|
|
33
|
+
/**
|
|
34
|
+
* An optional key value pair of telemetry properties that are reported to
|
|
35
|
+
* the telemetry backend. Most, if not all, of the properties are captured
|
|
36
|
+
* automatically.
|
|
37
|
+
*/
|
|
38
|
+
telemetryProperties?: Partial<CommonProperties>;
|
|
39
|
+
/**
|
|
40
|
+
* An optional list of tools constructors to be registered to the MongoDB
|
|
41
|
+
* MCP Server.
|
|
42
|
+
*
|
|
43
|
+
* When not provided, MongoDB MCP Server will register all internal tools.
|
|
44
|
+
* When specified, **only** the tools in this list will be registered.
|
|
45
|
+
*
|
|
46
|
+
* This allows you to:
|
|
47
|
+
* - Register only custom tools (excluding all internal tools)
|
|
48
|
+
* - Register a subset of internal tools alongside custom tools
|
|
49
|
+
* - Register all internal tools plus custom tools
|
|
50
|
+
*
|
|
51
|
+
* To include internal tools, import them from `mongodb-mcp-server/tools`:
|
|
52
|
+
*
|
|
53
|
+
* ```typescript
|
|
54
|
+
* import { AllTools, AggregateTool, FindTool } from "mongodb-mcp-server/tools";
|
|
55
|
+
*
|
|
56
|
+
* // Register all internal tools plus custom tools
|
|
57
|
+
* tools: [...AllTools, MyCustomTool]
|
|
58
|
+
*
|
|
59
|
+
* // Register only specific MongoDB tools plus custom tools
|
|
60
|
+
* tools: [AggregateTool, FindTool, MyCustomTool]
|
|
61
|
+
*
|
|
62
|
+
* // Register all internal tools of mongodb category
|
|
63
|
+
* tools: [AllTools.filter((tool) => tool.category === "mongodb")]
|
|
64
|
+
* ```
|
|
65
|
+
*
|
|
66
|
+
* Note: Ensure that each tool has unique names otherwise the server will
|
|
67
|
+
* throw an error when initializing an MCP Client session. If you're using
|
|
68
|
+
* only the internal tools, then you don't have to worry about it unless,
|
|
69
|
+
* you've overridden the tool names.
|
|
70
|
+
*
|
|
71
|
+
* To ensure that you provide compliant tool implementations extend your
|
|
72
|
+
* tool implementation using `ToolBase` class and ensure that they conform
|
|
73
|
+
* to `ToolClass` type.
|
|
74
|
+
*
|
|
75
|
+
* @see {@link ToolClass} for the type that tool classes must conform to
|
|
76
|
+
* @see {@link ToolBase} for base class for all the tools
|
|
77
|
+
*/
|
|
78
|
+
tools?: ToolClass[];
|
|
79
|
+
};
|
|
80
|
+
//# sourceMappingURL=common.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../../../src/transports/interfaces/common.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mCAAmC,CAAC;AACpE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAErD,MAAM,MAAM,4BAA4B,GAAG;IACvC,aAAa,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IACnC;;;;;;;;;;;;;;;OAeG;IACH,UAAU,EAAE,UAAU,CAAC;IAEvB;;;;;;;OAOG;IACH,iBAAiB,CAAC,EAAE,UAAU,EAAE,CAAC;IAEjC;;;;OAIG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAEhD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAsCG;IACH,KAAK,CAAC,EAAE,SAAS,EAAE,CAAC;CACvB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"common.js","sourceRoot":"","sources":["../../../../src/transports/interfaces/common.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/transports/interfaces/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,aAAa,CAAC;AAE/D,YAAY,EAAE,2BAA2B,EAAE,qBAAqB,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AACtG,MAAM,MAAM,qBAAqB,GAAG,2BAA2B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/transports/interfaces/index.ts"],"names":[],"mappings":""}
|