@himanshusinghs/mongodb-mcp-server 1.7.7 → 1.11.0-prerelease.2
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 +107 -51
- package/dist/cjs/common/atlas/accessListUtils.js +4 -4
- package/dist/cjs/common/atlas/accessListUtils.js.map +1 -1
- package/dist/cjs/common/atlas/apiClient.d.ts +98 -215
- package/dist/cjs/common/atlas/apiClient.d.ts.map +1 -1
- package/dist/cjs/common/atlas/apiClient.js +285 -36
- package/dist/cjs/common/atlas/apiClient.js.map +1 -1
- package/dist/cjs/common/atlas/auth/authProvider.d.ts +1 -1
- package/dist/cjs/common/atlas/auth/authProvider.d.ts.map +1 -1
- package/dist/cjs/common/atlas/auth/clientCredentials.d.ts +1 -1
- package/dist/cjs/common/atlas/auth/clientCredentials.d.ts.map +1 -1
- package/dist/cjs/common/atlas/auth/clientCredentials.js +3 -3
- package/dist/cjs/common/atlas/auth/clientCredentials.js.map +1 -1
- package/dist/cjs/common/atlas/cluster.d.ts +2 -0
- package/dist/cjs/common/atlas/cluster.d.ts.map +1 -1
- package/dist/cjs/common/atlas/cluster.js +10 -3
- package/dist/cjs/common/atlas/cluster.js.map +1 -1
- package/dist/cjs/common/atlas/performanceAdvisorUtils.d.ts.map +1 -1
- package/dist/cjs/common/atlas/performanceAdvisorUtils.js +17 -9
- package/dist/cjs/common/atlas/performanceAdvisorUtils.js.map +1 -1
- package/dist/cjs/common/atlasLocal.d.ts +1 -1
- package/dist/cjs/common/atlasLocal.d.ts.map +1 -1
- package/dist/cjs/common/atlasLocal.js +3 -3
- package/dist/cjs/common/atlasLocal.js.map +1 -1
- package/dist/cjs/common/config/configOverrides.d.ts +3 -0
- package/dist/cjs/common/config/configOverrides.d.ts.map +1 -1
- package/dist/cjs/common/config/configOverrides.js +15 -11
- package/dist/cjs/common/config/configOverrides.js.map +1 -1
- package/dist/cjs/common/config/configUtils.d.ts +5 -1
- package/dist/cjs/common/config/configUtils.d.ts.map +1 -1
- package/dist/cjs/common/config/configUtils.js +21 -51
- package/dist/cjs/common/config/configUtils.js.map +1 -1
- package/dist/cjs/common/config/parseUserConfig.d.ts +2 -2
- package/dist/cjs/common/config/parseUserConfig.d.ts.map +1 -1
- package/dist/cjs/common/config/parseUserConfig.js +52 -18
- package/dist/cjs/common/config/parseUserConfig.js.map +1 -1
- package/dist/cjs/common/config/userConfig.d.ts +126 -117
- package/dist/cjs/common/config/userConfig.d.ts.map +1 -1
- package/dist/cjs/common/config/userConfig.js +85 -63
- package/dist/cjs/common/config/userConfig.js.map +1 -1
- package/dist/cjs/common/connectionInfo.d.ts +4 -2
- package/dist/cjs/common/connectionInfo.d.ts.map +1 -1
- package/dist/cjs/common/connectionInfo.js.map +1 -1
- package/dist/cjs/common/connectionManager.d.ts +12 -4
- package/dist/cjs/common/connectionManager.d.ts.map +1 -1
- package/dist/cjs/common/connectionManager.js +87 -16
- package/dist/cjs/common/connectionManager.js.map +1 -1
- package/dist/cjs/common/errors.d.ts +1 -2
- package/dist/cjs/common/errors.d.ts.map +1 -1
- package/dist/cjs/common/errors.js +1 -2
- package/dist/cjs/common/errors.js.map +1 -1
- package/dist/cjs/common/exportsManager.d.ts +10 -8
- package/dist/cjs/common/exportsManager.d.ts.map +1 -1
- package/dist/cjs/common/exportsManager.js +8 -8
- package/dist/cjs/common/exportsManager.js.map +1 -1
- package/dist/cjs/common/logging/compositeLogger.d.ts +13 -0
- package/dist/cjs/common/logging/compositeLogger.d.ts.map +1 -0
- package/dist/cjs/common/logging/compositeLogger.js +34 -0
- package/dist/cjs/common/logging/compositeLogger.js.map +1 -0
- package/dist/cjs/common/logging/consoleLogger.d.ts +10 -0
- package/dist/cjs/common/logging/consoleLogger.d.ts.map +1 -0
- package/dist/cjs/common/logging/consoleLogger.js +25 -0
- package/dist/cjs/common/logging/consoleLogger.js.map +1 -0
- package/dist/cjs/common/logging/diskLogger.d.ts +14 -0
- package/dist/cjs/common/logging/diskLogger.d.ts.map +1 -0
- package/dist/cjs/common/logging/diskLogger.js +54 -0
- package/dist/cjs/common/logging/diskLogger.js.map +1 -0
- package/dist/cjs/common/logging/index.d.ts +10 -0
- package/dist/cjs/common/logging/index.d.ts.map +1 -0
- package/dist/cjs/common/logging/index.js +33 -0
- package/dist/cjs/common/logging/index.js.map +1 -0
- package/dist/cjs/common/logging/loggerBase.d.ts +23 -0
- package/dist/cjs/common/logging/loggerBase.d.ts.map +1 -0
- package/dist/cjs/common/logging/loggerBase.js +97 -0
- package/dist/cjs/common/logging/loggerBase.js.map +1 -0
- package/dist/cjs/common/logging/loggingDefinitions.d.ts +76 -0
- package/dist/cjs/common/logging/loggingDefinitions.d.ts.map +1 -0
- package/dist/cjs/common/logging/loggingDefinitions.js +80 -0
- package/dist/cjs/common/logging/loggingDefinitions.js.map +1 -0
- package/dist/cjs/common/logging/loggingTypes.d.ts +15 -0
- package/dist/cjs/common/logging/loggingTypes.d.ts.map +1 -0
- package/dist/cjs/common/logging/loggingTypes.js +6 -0
- package/dist/cjs/common/logging/loggingTypes.js.map +1 -0
- package/dist/cjs/common/logging/mcpLogger.d.ts +12 -0
- package/dist/cjs/common/logging/mcpLogger.d.ts.map +1 -0
- package/dist/cjs/common/logging/mcpLogger.js +30 -0
- package/dist/cjs/common/logging/mcpLogger.js.map +1 -0
- package/dist/cjs/common/logging/nullLogger.d.ts +8 -0
- package/dist/cjs/common/logging/nullLogger.d.ts.map +1 -0
- package/dist/cjs/common/logging/nullLogger.js +14 -0
- package/dist/cjs/common/logging/nullLogger.js.map +1 -0
- package/dist/cjs/common/metrics/index.d.ts +5 -0
- package/dist/cjs/common/metrics/index.d.ts.map +1 -0
- package/dist/cjs/common/metrics/index.js +8 -0
- package/dist/cjs/common/metrics/index.js.map +1 -0
- package/dist/cjs/common/metrics/metricDefinitions.d.ts +15 -0
- package/dist/cjs/common/metrics/metricDefinitions.d.ts.map +1 -0
- package/dist/cjs/common/metrics/metricDefinitions.js +35 -0
- package/dist/cjs/common/metrics/metricDefinitions.js.map +1 -0
- package/dist/cjs/common/metrics/metricsTypes.d.ts +15 -0
- package/dist/cjs/common/metrics/metricsTypes.d.ts.map +1 -0
- package/dist/cjs/common/metrics/metricsTypes.js +3 -0
- package/dist/cjs/common/metrics/metricsTypes.js.map +1 -0
- package/dist/cjs/common/metrics/prometheusMetrics.d.ts +15 -0
- package/dist/cjs/common/metrics/prometheusMetrics.d.ts.map +1 -0
- package/dist/cjs/common/metrics/prometheusMetrics.js +25 -0
- package/dist/cjs/common/metrics/prometheusMetrics.js.map +1 -0
- package/dist/cjs/common/packageInfo.d.ts +3 -0
- package/dist/cjs/common/packageInfo.d.ts.map +1 -1
- package/dist/cjs/common/packageInfo.js +4 -1
- package/dist/cjs/common/packageInfo.js.map +1 -1
- package/dist/cjs/common/schemas.d.ts +3 -3
- package/dist/cjs/common/schemas.d.ts.map +1 -1
- package/dist/cjs/common/schemas.js +3 -3
- package/dist/cjs/common/schemas.js.map +1 -1
- package/dist/cjs/common/session.d.ts +5 -8
- package/dist/cjs/common/session.d.ts.map +1 -1
- package/dist/cjs/common/session.js +5 -6
- package/dist/cjs/common/session.js.map +1 -1
- package/dist/cjs/common/sessionStore.d.ts +62 -12
- package/dist/cjs/common/sessionStore.d.ts.map +1 -1
- package/dist/cjs/common/sessionStore.js +37 -20
- package/dist/cjs/common/sessionStore.js.map +1 -1
- package/dist/cjs/elicitation.d.ts +18 -0
- package/dist/cjs/elicitation.d.ts.map +1 -1
- package/dist/cjs/elicitation.js +31 -1
- package/dist/cjs/elicitation.js.map +1 -1
- package/dist/cjs/helpers/assertVectorSearchFilterFieldsAreIndexed.d.ts +1 -1
- package/dist/cjs/helpers/assertVectorSearchFilterFieldsAreIndexed.d.ts.map +1 -1
- package/dist/cjs/helpers/assertVectorSearchFilterFieldsAreIndexed.js +2 -2
- package/dist/cjs/helpers/assertVectorSearchFilterFieldsAreIndexed.js.map +1 -1
- package/dist/cjs/helpers/connectionOptions.d.ts +2 -5
- package/dist/cjs/helpers/connectionOptions.d.ts.map +1 -1
- package/dist/cjs/helpers/connectionOptions.js +1 -1
- package/dist/cjs/helpers/connectionOptions.js.map +1 -1
- package/dist/cjs/helpers/deviceId.d.ts +3 -2
- package/dist/cjs/helpers/deviceId.d.ts.map +1 -1
- package/dist/cjs/helpers/deviceId.js +3 -3
- package/dist/cjs/helpers/deviceId.js.map +1 -1
- package/dist/cjs/helpers/indexCheck.d.ts +1 -1
- package/dist/cjs/helpers/indexCheck.d.ts.map +1 -1
- package/dist/cjs/helpers/indexCheck.js +2 -2
- package/dist/cjs/helpers/indexCheck.js.map +1 -1
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +19 -10
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/lib.d.ts +19 -12
- package/dist/cjs/lib.d.ts.map +1 -1
- package/dist/cjs/lib.js +27 -4
- package/dist/cjs/lib.js.map +1 -1
- package/dist/cjs/resources/common/exportedData.js +3 -3
- package/dist/cjs/resources/common/exportedData.js.map +1 -1
- package/dist/cjs/resources/resource.js +2 -2
- package/dist/cjs/resources/resource.js.map +1 -1
- package/dist/cjs/server.d.ts +12 -9
- package/dist/cjs/server.d.ts.map +1 -1
- package/dist/cjs/server.js +26 -20
- package/dist/cjs/server.js.map +1 -1
- package/dist/cjs/setup/aiTool.d.ts +46 -0
- package/dist/cjs/setup/aiTool.d.ts.map +1 -0
- package/dist/cjs/setup/aiTool.js +391 -0
- package/dist/cjs/setup/aiTool.js.map +1 -0
- package/dist/cjs/setup/installSkills.d.ts +42 -0
- package/dist/cjs/setup/installSkills.d.ts.map +1 -0
- package/dist/cjs/setup/installSkills.js +122 -0
- package/dist/cjs/setup/installSkills.js.map +1 -0
- package/dist/cjs/setup/setupAiToolsUtils.d.ts +4 -0
- package/dist/cjs/setup/setupAiToolsUtils.d.ts.map +1 -0
- package/dist/cjs/setup/setupAiToolsUtils.js +28 -0
- package/dist/cjs/setup/setupAiToolsUtils.js.map +1 -0
- package/dist/cjs/setup/setupMcpServer.d.ts +8 -0
- package/dist/cjs/setup/setupMcpServer.d.ts.map +1 -0
- package/dist/cjs/setup/setupMcpServer.js +391 -0
- package/dist/cjs/setup/setupMcpServer.js.map +1 -0
- package/dist/cjs/setup/setupTelemetry.d.ts +99 -0
- package/dist/cjs/setup/setupTelemetry.d.ts.map +1 -0
- package/dist/cjs/setup/setupTelemetry.js +202 -0
- package/dist/cjs/setup/setupTelemetry.js.map +1 -0
- package/dist/cjs/telemetry/constants.js +4 -4
- package/dist/cjs/telemetry/constants.js.map +1 -1
- package/dist/cjs/telemetry/eventCache.d.ts +19 -3
- package/dist/cjs/telemetry/eventCache.d.ts.map +1 -1
- package/dist/cjs/telemetry/eventCache.js +48 -3
- package/dist/cjs/telemetry/eventCache.js.map +1 -1
- package/dist/cjs/telemetry/telemetry.d.ts +106 -25
- package/dist/cjs/telemetry/telemetry.d.ts.map +1 -1
- package/dist/cjs/telemetry/telemetry.js +172 -117
- package/dist/cjs/telemetry/telemetry.js.map +1 -1
- package/dist/cjs/telemetry/timer.d.ts +12 -0
- package/dist/cjs/telemetry/timer.d.ts.map +1 -0
- package/dist/cjs/telemetry/timer.js +28 -0
- package/dist/cjs/telemetry/timer.js.map +1 -0
- package/dist/cjs/telemetry/types.d.ts +69 -11
- package/dist/cjs/telemetry/types.d.ts.map +1 -1
- package/dist/cjs/tools/args.d.ts +7 -2
- package/dist/cjs/tools/args.d.ts.map +1 -1
- package/dist/cjs/tools/args.js +6 -3
- package/dist/cjs/tools/args.js.map +1 -1
- package/dist/cjs/tools/assistant/listKnowledgeSources.js +2 -2
- package/dist/cjs/tools/assistant/listKnowledgeSources.js.map +1 -1
- package/dist/cjs/tools/assistant/searchKnowledge.d.ts +2 -14
- package/dist/cjs/tools/assistant/searchKnowledge.d.ts.map +1 -1
- package/dist/cjs/tools/assistant/searchKnowledge.js +2 -2
- package/dist/cjs/tools/assistant/searchKnowledge.js.map +1 -1
- package/dist/cjs/tools/atlas/atlasTool.js +2 -2
- package/dist/cjs/tools/atlas/atlasTool.js.map +1 -1
- package/dist/cjs/tools/atlas/connect/connectCluster.d.ts +10 -2
- package/dist/cjs/tools/atlas/connect/connectCluster.d.ts.map +1 -1
- package/dist/cjs/tools/atlas/connect/connectCluster.js +10 -7
- package/dist/cjs/tools/atlas/connect/connectCluster.js.map +1 -1
- package/dist/cjs/tools/atlas/create/createAccessList.d.ts +4 -4
- package/dist/cjs/tools/atlas/create/createDBUser.d.ts +4 -20
- package/dist/cjs/tools/atlas/create/createDBUser.d.ts.map +1 -1
- package/dist/cjs/tools/atlas/read/getPerformanceAdvisor.d.ts +7 -2
- package/dist/cjs/tools/atlas/read/getPerformanceAdvisor.d.ts.map +1 -1
- package/dist/cjs/tools/atlas/read/listAlerts.d.ts +18 -3
- package/dist/cjs/tools/atlas/read/listAlerts.d.ts.map +1 -1
- package/dist/cjs/tools/atlas/read/listAlerts.js +21 -3
- package/dist/cjs/tools/atlas/read/listAlerts.js.map +1 -1
- package/dist/cjs/tools/atlas/read/listProjects.d.ts.map +1 -1
- package/dist/cjs/tools/atlas/read/listProjects.js +10 -1
- package/dist/cjs/tools/atlas/read/listProjects.js.map +1 -1
- package/dist/cjs/tools/atlas/streams/build.d.ts +149 -0
- package/dist/cjs/tools/atlas/streams/build.d.ts.map +1 -0
- package/dist/cjs/tools/atlas/streams/build.js +671 -0
- package/dist/cjs/tools/atlas/streams/build.js.map +1 -0
- package/dist/cjs/tools/atlas/streams/discover.d.ts +44 -0
- package/dist/cjs/tools/atlas/streams/discover.d.ts.map +1 -0
- package/dist/cjs/tools/atlas/streams/discover.js +345 -0
- package/dist/cjs/tools/atlas/streams/discover.js.map +1 -0
- package/dist/cjs/tools/atlas/streams/manage.d.ts +111 -0
- package/dist/cjs/tools/atlas/streams/manage.d.ts.map +1 -0
- package/dist/cjs/tools/atlas/streams/manage.js +471 -0
- package/dist/cjs/tools/atlas/streams/manage.js.map +1 -0
- package/dist/cjs/tools/atlas/streams/streamsArgs.d.ts +74 -0
- package/dist/cjs/tools/atlas/streams/streamsArgs.d.ts.map +1 -0
- package/dist/cjs/tools/atlas/streams/streamsArgs.js +146 -0
- package/dist/cjs/tools/atlas/streams/streamsArgs.js.map +1 -0
- package/dist/cjs/tools/atlas/streams/streamsToolBase.d.ts +12 -0
- package/dist/cjs/tools/atlas/streams/streamsToolBase.d.ts.map +1 -0
- package/dist/cjs/tools/atlas/streams/streamsToolBase.js +163 -0
- package/dist/cjs/tools/atlas/streams/streamsToolBase.js.map +1 -0
- package/dist/cjs/tools/atlas/streams/teardown.d.ts +31 -0
- package/dist/cjs/tools/atlas/streams/teardown.d.ts.map +1 -0
- package/dist/cjs/tools/atlas/streams/teardown.js +236 -0
- package/dist/cjs/tools/atlas/streams/teardown.js.map +1 -0
- package/dist/cjs/tools/atlas/tools.d.ts +5 -0
- package/dist/cjs/tools/atlas/tools.d.ts.map +1 -1
- package/dist/cjs/tools/atlas/tools.js +11 -1
- package/dist/cjs/tools/atlas/tools.js.map +1 -1
- package/dist/cjs/tools/atlas/update/upgradeCluster.d.ts +28 -0
- package/dist/cjs/tools/atlas/update/upgradeCluster.d.ts.map +1 -0
- package/dist/cjs/tools/atlas/update/upgradeCluster.js +231 -0
- package/dist/cjs/tools/atlas/update/upgradeCluster.js.map +1 -0
- package/dist/cjs/tools/atlasLocal/atlasLocalTool.js +2 -2
- package/dist/cjs/tools/atlasLocal/atlasLocalTool.js.map +1 -1
- package/dist/cjs/tools/atlasLocal/create/createDeployment.d.ts +2 -1
- package/dist/cjs/tools/atlasLocal/create/createDeployment.d.ts.map +1 -1
- package/dist/cjs/tools/atlasLocal/create/createDeployment.js +10 -3
- package/dist/cjs/tools/atlasLocal/create/createDeployment.js.map +1 -1
- package/dist/cjs/tools/index.d.ts +1 -0
- package/dist/cjs/tools/index.d.ts.map +1 -1
- package/dist/cjs/tools/index.js +3 -1
- package/dist/cjs/tools/index.js.map +1 -1
- package/dist/cjs/tools/mongodb/create/createCollection.d.ts +1 -1
- package/dist/cjs/tools/mongodb/create/createCollection.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/create/createCollection.js +1 -1
- package/dist/cjs/tools/mongodb/create/createCollection.js.map +1 -1
- package/dist/cjs/tools/mongodb/create/createIndex.d.ts +56 -218
- package/dist/cjs/tools/mongodb/create/createIndex.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/create/createIndex.js +12 -14
- package/dist/cjs/tools/mongodb/create/createIndex.js.map +1 -1
- package/dist/cjs/tools/mongodb/create/insertMany.d.ts +5 -32
- package/dist/cjs/tools/mongodb/create/insertMany.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/create/insertMany.js +7 -91
- package/dist/cjs/tools/mongodb/create/insertMany.js.map +1 -1
- package/dist/cjs/tools/mongodb/delete/deleteMany.d.ts +2 -2
- package/dist/cjs/tools/mongodb/delete/deleteMany.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/delete/deleteMany.js +2 -1
- package/dist/cjs/tools/mongodb/delete/deleteMany.js.map +1 -1
- package/dist/cjs/tools/mongodb/delete/dropCollection.d.ts +1 -1
- package/dist/cjs/tools/mongodb/delete/dropCollection.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/delete/dropCollection.js +1 -1
- package/dist/cjs/tools/mongodb/delete/dropCollection.js.map +1 -1
- package/dist/cjs/tools/mongodb/delete/dropDatabase.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/delete/dropDatabase.js +1 -3
- package/dist/cjs/tools/mongodb/delete/dropDatabase.js.map +1 -1
- package/dist/cjs/tools/mongodb/delete/dropIndex.d.ts +5 -2
- package/dist/cjs/tools/mongodb/delete/dropIndex.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/delete/dropIndex.js +4 -9
- package/dist/cjs/tools/mongodb/delete/dropIndex.js.map +1 -1
- package/dist/cjs/tools/mongodb/metadata/collectionIndexes.d.ts +13 -43
- package/dist/cjs/tools/mongodb/metadata/collectionIndexes.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/metadata/collectionIndexes.js +41 -5
- package/dist/cjs/tools/mongodb/metadata/collectionIndexes.js.map +1 -1
- package/dist/cjs/tools/mongodb/metadata/collectionSchema.d.ts +1 -1
- package/dist/cjs/tools/mongodb/metadata/collectionSchema.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/metadata/collectionSchema.js +3 -3
- package/dist/cjs/tools/mongodb/metadata/collectionSchema.js.map +1 -1
- package/dist/cjs/tools/mongodb/metadata/collectionStorageSize.d.ts +3 -3
- package/dist/cjs/tools/mongodb/metadata/collectionStorageSize.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/metadata/collectionStorageSize.js +2 -2
- package/dist/cjs/tools/mongodb/metadata/collectionStorageSize.js.map +1 -1
- package/dist/cjs/tools/mongodb/metadata/dbStats.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/metadata/dbStats.js +3 -4
- package/dist/cjs/tools/mongodb/metadata/dbStats.js.map +1 -1
- package/dist/cjs/tools/mongodb/metadata/explain.d.ts +35 -357
- package/dist/cjs/tools/mongodb/metadata/explain.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/metadata/explain.js +5 -5
- package/dist/cjs/tools/mongodb/metadata/explain.js.map +1 -1
- package/dist/cjs/tools/mongodb/metadata/listCollections.d.ts +2 -10
- package/dist/cjs/tools/mongodb/metadata/listCollections.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/metadata/listCollections.js +1 -3
- package/dist/cjs/tools/mongodb/metadata/listCollections.js.map +1 -1
- package/dist/cjs/tools/mongodb/metadata/listDatabases.d.ts +3 -16
- package/dist/cjs/tools/mongodb/metadata/listDatabases.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/metadata/listDatabases.js +3 -3
- package/dist/cjs/tools/mongodb/metadata/listDatabases.js.map +1 -1
- package/dist/cjs/tools/mongodb/metadata/logs.d.ts +6 -3
- package/dist/cjs/tools/mongodb/metadata/logs.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/metadata/logs.js +1 -0
- package/dist/cjs/tools/mongodb/metadata/logs.js.map +1 -1
- package/dist/cjs/tools/mongodb/mongodbSchemas.d.ts +20 -191
- package/dist/cjs/tools/mongodb/mongodbSchemas.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/mongodbSchemas.js +34 -34
- package/dist/cjs/tools/mongodb/mongodbSchemas.js.map +1 -1
- package/dist/cjs/tools/mongodb/mongodbTool.d.ts +12 -1
- package/dist/cjs/tools/mongodb/mongodbTool.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/mongodbTool.js +17 -4
- package/dist/cjs/tools/mongodb/mongodbTool.js.map +1 -1
- package/dist/cjs/tools/mongodb/read/aggregate.d.ts +33 -300
- package/dist/cjs/tools/mongodb/read/aggregate.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/read/aggregate.js +23 -94
- package/dist/cjs/tools/mongodb/read/aggregate.js.map +1 -1
- package/dist/cjs/tools/mongodb/read/aggregateDB.d.ts +24 -0
- package/dist/cjs/tools/mongodb/read/aggregateDB.d.ts.map +1 -0
- package/dist/cjs/tools/mongodb/read/aggregateDB.js +173 -0
- package/dist/cjs/tools/mongodb/read/aggregateDB.js.map +1 -0
- package/dist/cjs/tools/mongodb/read/count.d.ts +3 -3
- package/dist/cjs/tools/mongodb/read/count.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/read/count.js +3 -2
- package/dist/cjs/tools/mongodb/read/count.js.map +1 -1
- package/dist/cjs/tools/mongodb/read/export.d.ts +30 -332
- package/dist/cjs/tools/mongodb/read/export.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/read/export.js +4 -6
- package/dist/cjs/tools/mongodb/read/export.js.map +1 -1
- package/dist/cjs/tools/mongodb/read/find.d.ts +11 -8
- package/dist/cjs/tools/mongodb/read/find.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/read/find.js +12 -11
- package/dist/cjs/tools/mongodb/read/find.js.map +1 -1
- package/dist/cjs/tools/mongodb/tools.d.ts +1 -0
- package/dist/cjs/tools/mongodb/tools.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/tools.js +3 -1
- package/dist/cjs/tools/mongodb/tools.js.map +1 -1
- package/dist/cjs/tools/mongodb/update/renameCollection.d.ts +1 -1
- package/dist/cjs/tools/mongodb/update/renameCollection.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/update/renameCollection.js +1 -1
- package/dist/cjs/tools/mongodb/update/renameCollection.js.map +1 -1
- package/dist/cjs/tools/mongodb/update/updateMany.d.ts +3 -3
- package/dist/cjs/tools/mongodb/update/updateMany.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/update/updateMany.js +3 -2
- package/dist/cjs/tools/mongodb/update/updateMany.js.map +1 -1
- package/dist/cjs/tools/tool.d.ts +21 -9
- package/dist/cjs/tools/tool.d.ts.map +1 -1
- package/dist/cjs/tools/tool.js +29 -10
- package/dist/cjs/tools/tool.js.map +1 -1
- package/dist/cjs/transports/base.d.ts +46 -23
- package/dist/cjs/transports/base.d.ts.map +1 -1
- package/dist/cjs/transports/base.js +37 -20
- package/dist/cjs/transports/base.js.map +1 -1
- package/dist/cjs/transports/expressBasedHttpServer.d.ts +24 -0
- package/dist/cjs/transports/expressBasedHttpServer.d.ts.map +1 -0
- package/dist/cjs/transports/expressBasedHttpServer.js +82 -0
- package/dist/cjs/transports/expressBasedHttpServer.js.map +1 -0
- package/dist/cjs/transports/jsonRpcErrorCodes.d.ts +12 -0
- package/dist/cjs/transports/jsonRpcErrorCodes.d.ts.map +1 -0
- package/dist/cjs/transports/jsonRpcErrorCodes.js +15 -0
- package/dist/cjs/transports/jsonRpcErrorCodes.js.map +1 -0
- package/dist/cjs/transports/mcpHttpServer.d.ts +61 -0
- package/dist/cjs/transports/mcpHttpServer.d.ts.map +1 -0
- package/dist/cjs/transports/mcpHttpServer.js +374 -0
- package/dist/cjs/transports/mcpHttpServer.js.map +1 -0
- package/dist/cjs/transports/monitoringServer.d.ts +29 -0
- package/dist/cjs/transports/monitoringServer.d.ts.map +1 -0
- package/dist/cjs/transports/monitoringServer.js +53 -0
- package/dist/cjs/transports/monitoringServer.js.map +1 -0
- package/dist/cjs/transports/stdio.d.ts +3 -2
- 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/httpServers/expressBasedHttpServer.d.ts +24 -0
- package/dist/cjs/transports/streamableHttp/httpServers/expressBasedHttpServer.d.ts.map +1 -0
- package/dist/cjs/transports/streamableHttp/httpServers/expressBasedHttpServer.js +81 -0
- package/dist/cjs/transports/streamableHttp/httpServers/expressBasedHttpServer.js.map +1 -0
- package/dist/cjs/transports/streamableHttp/httpServers/healthCheckServer.d.ts +7 -0
- package/dist/cjs/transports/streamableHttp/httpServers/healthCheckServer.d.ts.map +1 -0
- package/dist/cjs/transports/streamableHttp/httpServers/healthCheckServer.js +24 -0
- package/dist/cjs/transports/streamableHttp/httpServers/healthCheckServer.js.map +1 -0
- package/dist/cjs/transports/streamableHttp/httpServers/mcpHttpServer.d.ts +37 -0
- package/dist/cjs/transports/streamableHttp/httpServers/mcpHttpServer.d.ts.map +1 -0
- package/dist/cjs/transports/streamableHttp/httpServers/mcpHttpServer.js +288 -0
- package/dist/cjs/transports/streamableHttp/httpServers/mcpHttpServer.js.map +1 -0
- package/dist/cjs/transports/streamableHttp/streamableHttpRunner.d.ts +32 -0
- package/dist/cjs/transports/streamableHttp/streamableHttpRunner.d.ts.map +1 -0
- package/dist/cjs/transports/streamableHttp/streamableHttpRunner.js +117 -0
- package/dist/cjs/transports/streamableHttp/streamableHttpRunner.js.map +1 -0
- package/dist/cjs/transports/streamableHttp.d.ts +66 -5
- package/dist/cjs/transports/streamableHttp.d.ts.map +1 -1
- package/dist/cjs/transports/streamableHttp.js +57 -409
- package/dist/cjs/transports/streamableHttp.js.map +1 -1
- package/dist/cjs/ui/components/ListDatabases/ListDatabases.d.ts +3 -0
- package/dist/cjs/ui/components/ListDatabases/ListDatabases.d.ts.map +1 -1
- package/dist/cjs/ui/components/ListDatabases/ListDatabases.js.map +1 -1
- package/dist/cjs/ui/index.d.ts +0 -1
- package/dist/cjs/ui/index.d.ts.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/cjs/web.d.ts +31 -2
- package/dist/cjs/web.d.ts.map +1 -1
- package/dist/cjs/web.js +37 -1
- package/dist/cjs/web.js.map +1 -1
- package/dist/esm/common/atlas/accessListUtils.js +1 -1
- package/dist/esm/common/atlas/accessListUtils.js.map +1 -1
- package/dist/esm/common/atlas/apiClient.d.ts +98 -215
- package/dist/esm/common/atlas/apiClient.d.ts.map +1 -1
- package/dist/esm/common/atlas/apiClient.js +285 -36
- package/dist/esm/common/atlas/apiClient.js.map +1 -1
- package/dist/esm/common/atlas/auth/authProvider.d.ts +1 -1
- package/dist/esm/common/atlas/auth/authProvider.d.ts.map +1 -1
- package/dist/esm/common/atlas/auth/clientCredentials.d.ts +1 -1
- package/dist/esm/common/atlas/auth/clientCredentials.d.ts.map +1 -1
- package/dist/esm/common/atlas/auth/clientCredentials.js +1 -1
- package/dist/esm/common/atlas/auth/clientCredentials.js.map +1 -1
- package/dist/esm/common/atlas/cluster.d.ts +2 -0
- package/dist/esm/common/atlas/cluster.d.ts.map +1 -1
- package/dist/esm/common/atlas/cluster.js +9 -2
- package/dist/esm/common/atlas/cluster.js.map +1 -1
- package/dist/esm/common/atlas/performanceAdvisorUtils.d.ts.map +1 -1
- package/dist/esm/common/atlas/performanceAdvisorUtils.js +13 -5
- package/dist/esm/common/atlas/performanceAdvisorUtils.js.map +1 -1
- package/dist/esm/common/atlasLocal.d.ts +1 -1
- package/dist/esm/common/atlasLocal.d.ts.map +1 -1
- package/dist/esm/common/atlasLocal.js +1 -1
- package/dist/esm/common/atlasLocal.js.map +1 -1
- package/dist/esm/common/config/configOverrides.d.ts +3 -0
- package/dist/esm/common/config/configOverrides.d.ts.map +1 -1
- package/dist/esm/common/config/configOverrides.js +13 -10
- package/dist/esm/common/config/configOverrides.js.map +1 -1
- package/dist/esm/common/config/configUtils.d.ts +5 -1
- package/dist/esm/common/config/configUtils.d.ts.map +1 -1
- package/dist/esm/common/config/configUtils.js +20 -17
- package/dist/esm/common/config/configUtils.js.map +1 -1
- package/dist/esm/common/config/parseUserConfig.d.ts +2 -2
- package/dist/esm/common/config/parseUserConfig.d.ts.map +1 -1
- package/dist/esm/common/config/parseUserConfig.js +19 -18
- package/dist/esm/common/config/parseUserConfig.js.map +1 -1
- package/dist/esm/common/config/userConfig.d.ts +126 -117
- package/dist/esm/common/config/userConfig.d.ts.map +1 -1
- package/dist/esm/common/config/userConfig.js +88 -66
- package/dist/esm/common/config/userConfig.js.map +1 -1
- package/dist/esm/common/connectionInfo.d.ts +4 -2
- package/dist/esm/common/connectionInfo.d.ts.map +1 -1
- package/dist/esm/common/connectionInfo.js.map +1 -1
- package/dist/esm/common/connectionManager.d.ts +12 -4
- package/dist/esm/common/connectionManager.d.ts.map +1 -1
- package/dist/esm/common/connectionManager.js +83 -12
- package/dist/esm/common/connectionManager.js.map +1 -1
- package/dist/esm/common/errors.d.ts +1 -2
- package/dist/esm/common/errors.d.ts.map +1 -1
- package/dist/esm/common/errors.js +1 -2
- package/dist/esm/common/errors.js.map +1 -1
- package/dist/esm/common/exportsManager.d.ts +10 -8
- package/dist/esm/common/exportsManager.d.ts.map +1 -1
- package/dist/esm/common/exportsManager.js +1 -1
- package/dist/esm/common/exportsManager.js.map +1 -1
- package/dist/esm/common/logging/compositeLogger.d.ts +13 -0
- package/dist/esm/common/logging/compositeLogger.d.ts.map +1 -0
- package/dist/esm/common/logging/compositeLogger.js +30 -0
- package/dist/esm/common/logging/compositeLogger.js.map +1 -0
- package/dist/esm/common/logging/consoleLogger.d.ts +10 -0
- package/dist/esm/common/logging/consoleLogger.d.ts.map +1 -0
- package/dist/esm/common/logging/consoleLogger.js +21 -0
- package/dist/esm/common/logging/consoleLogger.js.map +1 -0
- package/dist/esm/common/logging/diskLogger.d.ts +14 -0
- package/dist/esm/common/logging/diskLogger.d.ts.map +1 -0
- package/dist/esm/common/logging/diskLogger.js +47 -0
- package/dist/esm/common/logging/diskLogger.js.map +1 -0
- package/dist/esm/common/logging/index.d.ts +10 -0
- package/dist/esm/common/logging/index.d.ts.map +1 -0
- package/dist/esm/common/logging/index.js +9 -0
- package/dist/esm/common/logging/index.js.map +1 -0
- package/dist/esm/common/logging/loggerBase.d.ts +23 -0
- package/dist/esm/common/logging/loggerBase.d.ts.map +1 -0
- package/dist/esm/common/logging/loggerBase.js +93 -0
- package/dist/esm/common/logging/loggerBase.js.map +1 -0
- package/dist/esm/common/logging/loggingDefinitions.d.ts +76 -0
- package/dist/esm/common/logging/loggingDefinitions.d.ts.map +1 -0
- package/dist/esm/common/logging/loggingDefinitions.js +77 -0
- package/dist/esm/common/logging/loggingDefinitions.js.map +1 -0
- package/dist/esm/common/logging/loggingTypes.d.ts +15 -0
- package/dist/esm/common/logging/loggingTypes.d.ts.map +1 -0
- package/dist/esm/common/logging/loggingTypes.js +3 -0
- package/dist/esm/common/logging/loggingTypes.js.map +1 -0
- package/dist/esm/common/logging/mcpLogger.d.ts +12 -0
- package/dist/esm/common/logging/mcpLogger.d.ts.map +1 -0
- package/dist/esm/common/logging/mcpLogger.js +26 -0
- package/dist/esm/common/logging/mcpLogger.js.map +1 -0
- package/dist/esm/common/logging/nullLogger.d.ts +8 -0
- package/dist/esm/common/logging/nullLogger.d.ts.map +1 -0
- package/dist/esm/common/logging/nullLogger.js +10 -0
- package/dist/esm/common/logging/nullLogger.js.map +1 -0
- package/dist/esm/common/metrics/index.d.ts +5 -0
- package/dist/esm/common/metrics/index.d.ts.map +1 -0
- package/dist/esm/common/metrics/index.js +3 -0
- package/dist/esm/common/metrics/index.js.map +1 -0
- package/dist/esm/common/metrics/metricDefinitions.d.ts +15 -0
- package/dist/esm/common/metrics/metricDefinitions.d.ts.map +1 -0
- package/dist/esm/common/metrics/metricDefinitions.js +32 -0
- package/dist/esm/common/metrics/metricDefinitions.js.map +1 -0
- package/dist/esm/common/metrics/metricsTypes.d.ts +15 -0
- package/dist/esm/common/metrics/metricsTypes.d.ts.map +1 -0
- package/dist/esm/common/metrics/metricsTypes.js +2 -0
- package/dist/esm/common/metrics/metricsTypes.js.map +1 -0
- package/dist/esm/common/metrics/prometheusMetrics.d.ts +15 -0
- package/dist/esm/common/metrics/prometheusMetrics.d.ts.map +1 -0
- package/dist/esm/common/metrics/prometheusMetrics.js +21 -0
- package/dist/esm/common/metrics/prometheusMetrics.js.map +1 -0
- package/dist/esm/common/packageInfo.d.ts +3 -0
- package/dist/esm/common/packageInfo.d.ts.map +1 -1
- package/dist/esm/common/packageInfo.js +4 -1
- package/dist/esm/common/packageInfo.js.map +1 -1
- package/dist/esm/common/schemas.d.ts +3 -3
- package/dist/esm/common/schemas.d.ts.map +1 -1
- package/dist/esm/common/schemas.js +2 -2
- package/dist/esm/common/schemas.js.map +1 -1
- package/dist/esm/common/session.d.ts +5 -8
- package/dist/esm/common/session.d.ts.map +1 -1
- package/dist/esm/common/session.js +3 -4
- package/dist/esm/common/session.js.map +1 -1
- package/dist/esm/common/sessionStore.d.ts +62 -12
- package/dist/esm/common/sessionStore.d.ts.map +1 -1
- package/dist/esm/common/sessionStore.js +32 -16
- package/dist/esm/common/sessionStore.js.map +1 -1
- package/dist/esm/elicitation.d.ts +18 -0
- package/dist/esm/elicitation.d.ts.map +1 -1
- package/dist/esm/elicitation.js +31 -1
- package/dist/esm/elicitation.js.map +1 -1
- package/dist/esm/helpers/assertVectorSearchFilterFieldsAreIndexed.d.ts +1 -1
- package/dist/esm/helpers/assertVectorSearchFilterFieldsAreIndexed.d.ts.map +1 -1
- package/dist/esm/helpers/assertVectorSearchFilterFieldsAreIndexed.js +1 -1
- package/dist/esm/helpers/assertVectorSearchFilterFieldsAreIndexed.js.map +1 -1
- package/dist/esm/helpers/connectionOptions.d.ts +2 -5
- package/dist/esm/helpers/connectionOptions.d.ts.map +1 -1
- package/dist/esm/helpers/connectionOptions.js +1 -1
- package/dist/esm/helpers/connectionOptions.js.map +1 -1
- package/dist/esm/helpers/deviceId.d.ts +3 -2
- package/dist/esm/helpers/deviceId.d.ts.map +1 -1
- package/dist/esm/helpers/deviceId.js +1 -1
- package/dist/esm/helpers/deviceId.js.map +1 -1
- package/dist/esm/helpers/indexCheck.d.ts +1 -1
- package/dist/esm/helpers/indexCheck.d.ts.map +1 -1
- package/dist/esm/helpers/indexCheck.js +1 -1
- package/dist/esm/helpers/indexCheck.js.map +1 -1
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +11 -2
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/lib.d.ts +19 -12
- package/dist/esm/lib.d.ts.map +1 -1
- package/dist/esm/lib.js +10 -5
- package/dist/esm/lib.js.map +1 -1
- package/dist/esm/resources/common/exportedData.js +1 -1
- package/dist/esm/resources/common/exportedData.js.map +1 -1
- package/dist/esm/resources/resource.js +1 -1
- package/dist/esm/resources/resource.js.map +1 -1
- package/dist/esm/server.d.ts +12 -9
- package/dist/esm/server.d.ts.map +1 -1
- package/dist/esm/server.js +16 -10
- package/dist/esm/server.js.map +1 -1
- package/dist/esm/setup/aiTool.d.ts +46 -0
- package/dist/esm/setup/aiTool.d.ts.map +1 -0
- package/dist/esm/setup/aiTool.js +383 -0
- package/dist/esm/setup/aiTool.js.map +1 -0
- package/dist/esm/setup/installSkills.d.ts +42 -0
- package/dist/esm/setup/installSkills.d.ts.map +1 -0
- package/dist/esm/setup/installSkills.js +113 -0
- package/dist/esm/setup/installSkills.js.map +1 -0
- package/dist/esm/setup/setupAiToolsUtils.d.ts +4 -0
- package/dist/esm/setup/setupAiToolsUtils.d.ts.map +1 -0
- package/dist/esm/setup/setupAiToolsUtils.js +20 -0
- package/dist/esm/setup/setupAiToolsUtils.js.map +1 -0
- package/dist/esm/setup/setupMcpServer.d.ts +8 -0
- package/dist/esm/setup/setupMcpServer.d.ts.map +1 -0
- package/dist/esm/setup/setupMcpServer.js +384 -0
- package/dist/esm/setup/setupMcpServer.js.map +1 -0
- package/dist/esm/setup/setupTelemetry.d.ts +99 -0
- package/dist/esm/setup/setupTelemetry.d.ts.map +1 -0
- package/dist/esm/setup/setupTelemetry.js +197 -0
- package/dist/esm/setup/setupTelemetry.js.map +1 -0
- package/dist/esm/telemetry/constants.js +4 -4
- package/dist/esm/telemetry/constants.js.map +1 -1
- package/dist/esm/telemetry/eventCache.d.ts +19 -3
- package/dist/esm/telemetry/eventCache.d.ts.map +1 -1
- package/dist/esm/telemetry/eventCache.js +48 -3
- package/dist/esm/telemetry/eventCache.js.map +1 -1
- package/dist/esm/telemetry/telemetry.d.ts +106 -25
- package/dist/esm/telemetry/telemetry.d.ts.map +1 -1
- package/dist/esm/telemetry/telemetry.js +167 -113
- package/dist/esm/telemetry/telemetry.js.map +1 -1
- package/dist/esm/telemetry/timer.d.ts +12 -0
- package/dist/esm/telemetry/timer.d.ts.map +1 -0
- package/dist/esm/telemetry/timer.js +24 -0
- package/dist/esm/telemetry/timer.js.map +1 -0
- package/dist/esm/telemetry/types.d.ts +69 -11
- package/dist/esm/telemetry/types.d.ts.map +1 -1
- package/dist/esm/tools/args.d.ts +7 -2
- package/dist/esm/tools/args.d.ts.map +1 -1
- package/dist/esm/tools/args.js +6 -4
- package/dist/esm/tools/args.js.map +1 -1
- package/dist/esm/tools/assistant/listKnowledgeSources.js +1 -1
- package/dist/esm/tools/assistant/listKnowledgeSources.js.map +1 -1
- package/dist/esm/tools/assistant/searchKnowledge.d.ts +2 -14
- package/dist/esm/tools/assistant/searchKnowledge.d.ts.map +1 -1
- package/dist/esm/tools/assistant/searchKnowledge.js +1 -1
- package/dist/esm/tools/assistant/searchKnowledge.js.map +1 -1
- package/dist/esm/tools/atlas/atlasTool.js +1 -1
- package/dist/esm/tools/atlas/atlasTool.js.map +1 -1
- package/dist/esm/tools/atlas/connect/connectCluster.d.ts +10 -2
- package/dist/esm/tools/atlas/connect/connectCluster.d.ts.map +1 -1
- package/dist/esm/tools/atlas/connect/connectCluster.js +4 -1
- package/dist/esm/tools/atlas/connect/connectCluster.js.map +1 -1
- package/dist/esm/tools/atlas/create/createAccessList.d.ts +4 -4
- package/dist/esm/tools/atlas/create/createDBUser.d.ts +4 -20
- package/dist/esm/tools/atlas/create/createDBUser.d.ts.map +1 -1
- package/dist/esm/tools/atlas/read/getPerformanceAdvisor.d.ts +7 -2
- package/dist/esm/tools/atlas/read/getPerformanceAdvisor.d.ts.map +1 -1
- package/dist/esm/tools/atlas/read/listAlerts.d.ts +18 -3
- package/dist/esm/tools/atlas/read/listAlerts.d.ts.map +1 -1
- package/dist/esm/tools/atlas/read/listAlerts.js +21 -3
- package/dist/esm/tools/atlas/read/listAlerts.js.map +1 -1
- package/dist/esm/tools/atlas/read/listProjects.d.ts.map +1 -1
- package/dist/esm/tools/atlas/read/listProjects.js +10 -1
- package/dist/esm/tools/atlas/read/listProjects.js.map +1 -1
- package/dist/esm/tools/atlas/streams/build.d.ts +149 -0
- package/dist/esm/tools/atlas/streams/build.d.ts.map +1 -0
- package/dist/esm/tools/atlas/streams/build.js +667 -0
- package/dist/esm/tools/atlas/streams/build.js.map +1 -0
- package/dist/esm/tools/atlas/streams/discover.d.ts +44 -0
- package/dist/esm/tools/atlas/streams/discover.d.ts.map +1 -0
- package/dist/esm/tools/atlas/streams/discover.js +341 -0
- package/dist/esm/tools/atlas/streams/discover.js.map +1 -0
- package/dist/esm/tools/atlas/streams/manage.d.ts +111 -0
- package/dist/esm/tools/atlas/streams/manage.d.ts.map +1 -0
- package/dist/esm/tools/atlas/streams/manage.js +467 -0
- package/dist/esm/tools/atlas/streams/manage.js.map +1 -0
- package/dist/esm/tools/atlas/streams/streamsArgs.d.ts +74 -0
- package/dist/esm/tools/atlas/streams/streamsArgs.d.ts.map +1 -0
- package/dist/esm/tools/atlas/streams/streamsArgs.js +143 -0
- package/dist/esm/tools/atlas/streams/streamsArgs.js.map +1 -0
- package/dist/esm/tools/atlas/streams/streamsToolBase.d.ts +12 -0
- package/dist/esm/tools/atlas/streams/streamsToolBase.d.ts.map +1 -0
- package/dist/esm/tools/atlas/streams/streamsToolBase.js +159 -0
- package/dist/esm/tools/atlas/streams/streamsToolBase.js.map +1 -0
- package/dist/esm/tools/atlas/streams/teardown.d.ts +31 -0
- package/dist/esm/tools/atlas/streams/teardown.d.ts.map +1 -0
- package/dist/esm/tools/atlas/streams/teardown.js +232 -0
- package/dist/esm/tools/atlas/streams/teardown.js.map +1 -0
- package/dist/esm/tools/atlas/tools.d.ts +5 -0
- package/dist/esm/tools/atlas/tools.d.ts.map +1 -1
- package/dist/esm/tools/atlas/tools.js +5 -0
- package/dist/esm/tools/atlas/tools.js.map +1 -1
- package/dist/esm/tools/atlas/update/upgradeCluster.d.ts +28 -0
- package/dist/esm/tools/atlas/update/upgradeCluster.d.ts.map +1 -0
- package/dist/esm/tools/atlas/update/upgradeCluster.js +227 -0
- package/dist/esm/tools/atlas/update/upgradeCluster.js.map +1 -0
- package/dist/esm/tools/atlasLocal/atlasLocalTool.js +1 -1
- package/dist/esm/tools/atlasLocal/atlasLocalTool.js.map +1 -1
- package/dist/esm/tools/atlasLocal/create/createDeployment.d.ts +2 -1
- package/dist/esm/tools/atlasLocal/create/createDeployment.d.ts.map +1 -1
- package/dist/esm/tools/atlasLocal/create/createDeployment.js +10 -3
- package/dist/esm/tools/atlasLocal/create/createDeployment.js.map +1 -1
- package/dist/esm/tools/index.d.ts +1 -0
- package/dist/esm/tools/index.d.ts.map +1 -1
- package/dist/esm/tools/index.js +1 -0
- package/dist/esm/tools/index.js.map +1 -1
- package/dist/esm/tools/mongodb/create/createCollection.d.ts +1 -1
- package/dist/esm/tools/mongodb/create/createCollection.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/create/createCollection.js +2 -2
- package/dist/esm/tools/mongodb/create/createCollection.js.map +1 -1
- package/dist/esm/tools/mongodb/create/createIndex.d.ts +56 -218
- package/dist/esm/tools/mongodb/create/createIndex.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/create/createIndex.js +14 -16
- package/dist/esm/tools/mongodb/create/createIndex.js.map +1 -1
- package/dist/esm/tools/mongodb/create/insertMany.d.ts +5 -32
- package/dist/esm/tools/mongodb/create/insertMany.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/create/insertMany.js +8 -92
- package/dist/esm/tools/mongodb/create/insertMany.js.map +1 -1
- package/dist/esm/tools/mongodb/delete/deleteMany.d.ts +2 -2
- package/dist/esm/tools/mongodb/delete/deleteMany.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/delete/deleteMany.js +3 -2
- package/dist/esm/tools/mongodb/delete/deleteMany.js.map +1 -1
- package/dist/esm/tools/mongodb/delete/dropCollection.d.ts +1 -1
- package/dist/esm/tools/mongodb/delete/dropCollection.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/delete/dropCollection.js +2 -2
- package/dist/esm/tools/mongodb/delete/dropCollection.js.map +1 -1
- package/dist/esm/tools/mongodb/delete/dropDatabase.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/delete/dropDatabase.js +2 -4
- package/dist/esm/tools/mongodb/delete/dropDatabase.js.map +1 -1
- package/dist/esm/tools/mongodb/delete/dropIndex.d.ts +5 -2
- package/dist/esm/tools/mongodb/delete/dropIndex.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/delete/dropIndex.js +5 -10
- package/dist/esm/tools/mongodb/delete/dropIndex.js.map +1 -1
- package/dist/esm/tools/mongodb/metadata/collectionIndexes.d.ts +13 -43
- package/dist/esm/tools/mongodb/metadata/collectionIndexes.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/metadata/collectionIndexes.js +42 -6
- package/dist/esm/tools/mongodb/metadata/collectionIndexes.js.map +1 -1
- package/dist/esm/tools/mongodb/metadata/collectionSchema.d.ts +1 -1
- package/dist/esm/tools/mongodb/metadata/collectionSchema.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/metadata/collectionSchema.js +4 -4
- package/dist/esm/tools/mongodb/metadata/collectionSchema.js.map +1 -1
- package/dist/esm/tools/mongodb/metadata/collectionStorageSize.d.ts +3 -3
- package/dist/esm/tools/mongodb/metadata/collectionStorageSize.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/metadata/collectionStorageSize.js +3 -3
- package/dist/esm/tools/mongodb/metadata/collectionStorageSize.js.map +1 -1
- package/dist/esm/tools/mongodb/metadata/dbStats.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/metadata/dbStats.js +4 -5
- package/dist/esm/tools/mongodb/metadata/dbStats.js.map +1 -1
- package/dist/esm/tools/mongodb/metadata/explain.d.ts +35 -357
- package/dist/esm/tools/mongodb/metadata/explain.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/metadata/explain.js +7 -7
- package/dist/esm/tools/mongodb/metadata/explain.js.map +1 -1
- package/dist/esm/tools/mongodb/metadata/listCollections.d.ts +2 -10
- package/dist/esm/tools/mongodb/metadata/listCollections.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/metadata/listCollections.js +2 -4
- package/dist/esm/tools/mongodb/metadata/listCollections.js.map +1 -1
- package/dist/esm/tools/mongodb/metadata/listDatabases.d.ts +3 -16
- package/dist/esm/tools/mongodb/metadata/listDatabases.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/metadata/listDatabases.js +1 -1
- package/dist/esm/tools/mongodb/metadata/listDatabases.js.map +1 -1
- package/dist/esm/tools/mongodb/metadata/logs.d.ts +6 -3
- package/dist/esm/tools/mongodb/metadata/logs.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/metadata/logs.js +1 -0
- package/dist/esm/tools/mongodb/metadata/logs.js.map +1 -1
- package/dist/esm/tools/mongodb/mongodbSchemas.d.ts +20 -191
- package/dist/esm/tools/mongodb/mongodbSchemas.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/mongodbSchemas.js +33 -33
- package/dist/esm/tools/mongodb/mongodbSchemas.js.map +1 -1
- package/dist/esm/tools/mongodb/mongodbTool.d.ts +12 -1
- package/dist/esm/tools/mongodb/mongodbTool.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/mongodbTool.js +15 -2
- package/dist/esm/tools/mongodb/mongodbTool.js.map +1 -1
- package/dist/esm/tools/mongodb/read/aggregate.d.ts +33 -300
- package/dist/esm/tools/mongodb/read/aggregate.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/read/aggregate.js +22 -92
- package/dist/esm/tools/mongodb/read/aggregate.js.map +1 -1
- package/dist/esm/tools/mongodb/read/aggregateDB.d.ts +24 -0
- package/dist/esm/tools/mongodb/read/aggregateDB.d.ts.map +1 -0
- package/dist/esm/tools/mongodb/read/aggregateDB.js +169 -0
- package/dist/esm/tools/mongodb/read/aggregateDB.js.map +1 -0
- package/dist/esm/tools/mongodb/read/count.d.ts +3 -3
- package/dist/esm/tools/mongodb/read/count.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/read/count.js +4 -3
- package/dist/esm/tools/mongodb/read/count.js.map +1 -1
- package/dist/esm/tools/mongodb/read/export.d.ts +30 -332
- package/dist/esm/tools/mongodb/read/export.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/read/export.js +6 -8
- package/dist/esm/tools/mongodb/read/export.js.map +1 -1
- package/dist/esm/tools/mongodb/read/find.d.ts +11 -8
- package/dist/esm/tools/mongodb/read/find.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/read/find.js +12 -11
- package/dist/esm/tools/mongodb/read/find.js.map +1 -1
- package/dist/esm/tools/mongodb/tools.d.ts +1 -0
- package/dist/esm/tools/mongodb/tools.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/tools.js +1 -0
- package/dist/esm/tools/mongodb/tools.js.map +1 -1
- package/dist/esm/tools/mongodb/update/renameCollection.d.ts +1 -1
- package/dist/esm/tools/mongodb/update/renameCollection.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/update/renameCollection.js +2 -2
- package/dist/esm/tools/mongodb/update/renameCollection.js.map +1 -1
- package/dist/esm/tools/mongodb/update/updateMany.d.ts +3 -3
- package/dist/esm/tools/mongodb/update/updateMany.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/update/updateMany.js +4 -3
- package/dist/esm/tools/mongodb/update/updateMany.js.map +1 -1
- package/dist/esm/tools/tool.d.ts +21 -9
- package/dist/esm/tools/tool.d.ts.map +1 -1
- package/dist/esm/tools/tool.js +22 -3
- package/dist/esm/tools/tool.js.map +1 -1
- package/dist/esm/transports/base.d.ts +46 -23
- package/dist/esm/transports/base.d.ts.map +1 -1
- package/dist/esm/transports/base.js +32 -15
- package/dist/esm/transports/base.js.map +1 -1
- package/dist/esm/transports/expressBasedHttpServer.d.ts +24 -0
- package/dist/esm/transports/expressBasedHttpServer.d.ts.map +1 -0
- package/dist/esm/transports/expressBasedHttpServer.js +75 -0
- package/dist/esm/transports/expressBasedHttpServer.js.map +1 -0
- package/dist/esm/transports/jsonRpcErrorCodes.d.ts +12 -0
- package/dist/esm/transports/jsonRpcErrorCodes.d.ts.map +1 -0
- package/dist/esm/transports/jsonRpcErrorCodes.js +12 -0
- package/dist/esm/transports/jsonRpcErrorCodes.js.map +1 -0
- package/dist/esm/transports/mcpHttpServer.d.ts +61 -0
- package/dist/esm/transports/mcpHttpServer.d.ts.map +1 -0
- package/dist/esm/transports/mcpHttpServer.js +333 -0
- package/dist/esm/transports/mcpHttpServer.js.map +1 -0
- package/dist/esm/transports/monitoringServer.d.ts +29 -0
- package/dist/esm/transports/monitoringServer.d.ts.map +1 -0
- package/dist/esm/transports/monitoringServer.js +48 -0
- package/dist/esm/transports/monitoringServer.js.map +1 -0
- package/dist/esm/transports/stdio.d.ts +3 -2
- package/dist/esm/transports/stdio.d.ts.map +1 -1
- package/dist/esm/transports/stdio.js +1 -1
- package/dist/esm/transports/stdio.js.map +1 -1
- package/dist/esm/transports/streamableHttp/httpServers/expressBasedHttpServer.d.ts +24 -0
- package/dist/esm/transports/streamableHttp/httpServers/expressBasedHttpServer.d.ts.map +1 -0
- package/dist/esm/transports/streamableHttp/httpServers/expressBasedHttpServer.js +74 -0
- package/dist/esm/transports/streamableHttp/httpServers/expressBasedHttpServer.js.map +1 -0
- package/dist/esm/transports/streamableHttp/httpServers/healthCheckServer.d.ts +7 -0
- package/dist/esm/transports/streamableHttp/httpServers/healthCheckServer.d.ts.map +1 -0
- package/dist/esm/transports/streamableHttp/httpServers/healthCheckServer.js +20 -0
- package/dist/esm/transports/streamableHttp/httpServers/healthCheckServer.js.map +1 -0
- package/dist/esm/transports/streamableHttp/httpServers/mcpHttpServer.d.ts +37 -0
- package/dist/esm/transports/streamableHttp/httpServers/mcpHttpServer.d.ts.map +1 -0
- package/dist/esm/transports/streamableHttp/httpServers/mcpHttpServer.js +248 -0
- package/dist/esm/transports/streamableHttp/httpServers/mcpHttpServer.js.map +1 -0
- package/dist/esm/transports/streamableHttp/streamableHttpRunner.d.ts +32 -0
- package/dist/esm/transports/streamableHttp/streamableHttpRunner.d.ts.map +1 -0
- package/dist/esm/transports/streamableHttp/streamableHttpRunner.js +113 -0
- package/dist/esm/transports/streamableHttp/streamableHttpRunner.js.map +1 -0
- package/dist/esm/transports/streamableHttp.d.ts +66 -5
- package/dist/esm/transports/streamableHttp.d.ts.map +1 -1
- package/dist/esm/transports/streamableHttp.js +45 -370
- package/dist/esm/transports/streamableHttp.js.map +1 -1
- package/dist/esm/ui/components/ListDatabases/ListDatabases.d.ts +3 -0
- package/dist/esm/ui/components/ListDatabases/ListDatabases.d.ts.map +1 -1
- package/dist/esm/ui/components/ListDatabases/ListDatabases.js.map +1 -1
- package/dist/esm/ui/index.d.ts +0 -1
- package/dist/esm/ui/index.d.ts.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/dist/esm/web.d.ts +31 -2
- package/dist/esm/web.d.ts.map +1 -1
- package/dist/esm/web.js +17 -1
- package/dist/esm/web.js.map +1 -1
- package/package.json +81 -64
|
@@ -0,0 +1,383 @@
|
|
|
1
|
+
/* eslint-disable no-console */
|
|
2
|
+
import fs from "fs";
|
|
3
|
+
import path from "path";
|
|
4
|
+
import os from "os";
|
|
5
|
+
import { applyEdits, findNodeAtLocation, modify, parseTree } from "jsonc-parser";
|
|
6
|
+
import { exec } from "child_process";
|
|
7
|
+
import { formatError, getPlatform } from "./setupAiToolsUtils.js";
|
|
8
|
+
// These are tools that don't have a designated editor to open the config file
|
|
9
|
+
export const TOOLS_WITHOUT_EDITORS = ["claudeDesktop", "claudeCode", "opencode"];
|
|
10
|
+
// Mac: open path in default app, or in editor (e.g. "cursor") if supported
|
|
11
|
+
const getOpenCommandMac = (configPath, tool) => tool && !TOOLS_WITHOUT_EDITORS.includes(tool) ? `open "${tool}://file${configPath}"` : `open "${configPath}"`;
|
|
12
|
+
// Linux: open path in default app, or in editor if supported
|
|
13
|
+
const getOpenCommandLinux = (configPath, tool) => tool && !TOOLS_WITHOUT_EDITORS.includes(tool)
|
|
14
|
+
? `xdg-open "${tool}://file${configPath}"`
|
|
15
|
+
: `xdg-open "${configPath}"`;
|
|
16
|
+
// Windows: open path in default app (for tools without a dedicated editor)
|
|
17
|
+
const getOpenCommandWindowsDefault = (configPath) => `start "" "${configPath}"`;
|
|
18
|
+
const MCP_SERVER_KEY = "mongodb-mcp-server";
|
|
19
|
+
const getBasePath = (useDefaultPath) => {
|
|
20
|
+
const platform = getPlatform();
|
|
21
|
+
const isWindows = platform === "windows";
|
|
22
|
+
// Sometimes in Windows we want to use the user home directory instead of APPDATA
|
|
23
|
+
if (isWindows && !useDefaultPath) {
|
|
24
|
+
return process.env.APPDATA || path.join(os.homedir(), "AppData", "Roaming");
|
|
25
|
+
}
|
|
26
|
+
else {
|
|
27
|
+
return os.homedir();
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
// Gets an existing servers: {}, mcpServers: {}, or mcp: {} object in the config file or create it if it doesn't exist
|
|
31
|
+
const getOrCreateServersEntry = (config, serversKey) => {
|
|
32
|
+
const mutable = config;
|
|
33
|
+
if (!mutable[serversKey]) {
|
|
34
|
+
mutable[serversKey] = {};
|
|
35
|
+
}
|
|
36
|
+
// Cast so callers can assign OpenCodeMcpEntry when serversKey is "mcp" (avoids TS narrowing)
|
|
37
|
+
// eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion
|
|
38
|
+
return mutable[serversKey];
|
|
39
|
+
};
|
|
40
|
+
// Ensures the directory for the config file exists
|
|
41
|
+
const ensureConfigDir = (configPath) => {
|
|
42
|
+
const resolvedPath = path.resolve(configPath);
|
|
43
|
+
const configDir = path.dirname(resolvedPath);
|
|
44
|
+
if (!fs.existsSync(configDir)) {
|
|
45
|
+
fs.mkdirSync(configDir, { recursive: true });
|
|
46
|
+
}
|
|
47
|
+
};
|
|
48
|
+
const writeConfigFile = (configPath, config) => {
|
|
49
|
+
const resolvedPath = path.resolve(configPath);
|
|
50
|
+
ensureConfigDir(configPath);
|
|
51
|
+
try {
|
|
52
|
+
fs.writeFileSync(resolvedPath, JSON.stringify(config, null, 2), "utf-8");
|
|
53
|
+
}
|
|
54
|
+
catch (err) {
|
|
55
|
+
throw new Error(`Could not write config to ${resolvedPath}: ${formatError(err)}. ` +
|
|
56
|
+
"Check that the path is correct and you have permission to write to that location.", { cause: err });
|
|
57
|
+
}
|
|
58
|
+
if (!fs.existsSync(resolvedPath)) {
|
|
59
|
+
throw new Error(`Config file was not created at ${resolvedPath}.`);
|
|
60
|
+
}
|
|
61
|
+
};
|
|
62
|
+
function toPatch(entry, envKey) {
|
|
63
|
+
const envRecord = "env" in entry ? (entry.env ?? {}) : "environment" in entry ? (entry.environment ?? {}) : {};
|
|
64
|
+
const patch = {
|
|
65
|
+
command: entry.command,
|
|
66
|
+
args: "args" in entry ? entry.args : undefined,
|
|
67
|
+
envKey,
|
|
68
|
+
envRecord,
|
|
69
|
+
};
|
|
70
|
+
if ("type" in entry) {
|
|
71
|
+
patch.type = entry.type;
|
|
72
|
+
}
|
|
73
|
+
if ("enabled" in entry) {
|
|
74
|
+
patch.enabled = entry.enabled;
|
|
75
|
+
}
|
|
76
|
+
return patch;
|
|
77
|
+
}
|
|
78
|
+
// Updates existing config content in place using jsonc-parser; preserves comments and spacing.
|
|
79
|
+
const updateConfigInPlace = (existingContent, serversKey, patch, entry) => {
|
|
80
|
+
const parsedContent = parseTree(existingContent);
|
|
81
|
+
const basePath = [serversKey, MCP_SERVER_KEY];
|
|
82
|
+
const contentBlock = parsedContent ? findNodeAtLocation(parsedContent, basePath) : undefined;
|
|
83
|
+
const opts = { formattingOptions: { tabSize: 2, insertSpaces: true, eol: "\n" } };
|
|
84
|
+
if (contentBlock) {
|
|
85
|
+
let text = existingContent;
|
|
86
|
+
text = applyEdits(text, modify(text, [...basePath, "command"], patch.command, opts));
|
|
87
|
+
if (patch.args !== undefined) {
|
|
88
|
+
text = applyEdits(text, modify(text, [...basePath, "args"], patch.args, opts));
|
|
89
|
+
}
|
|
90
|
+
for (const [k, v] of Object.entries(patch.envRecord)) {
|
|
91
|
+
text = applyEdits(text, modify(text, [...basePath, patch.envKey, k], v, opts));
|
|
92
|
+
}
|
|
93
|
+
if (patch.enabled !== undefined) {
|
|
94
|
+
text = applyEdits(text, modify(text, [...basePath, "enabled"], patch.enabled, opts));
|
|
95
|
+
}
|
|
96
|
+
if (patch.type !== undefined) {
|
|
97
|
+
text = applyEdits(text, modify(text, [...basePath, "type"], patch.type, opts));
|
|
98
|
+
}
|
|
99
|
+
return text;
|
|
100
|
+
}
|
|
101
|
+
return applyEdits(existingContent, modify(existingContent, basePath, entry, opts));
|
|
102
|
+
};
|
|
103
|
+
export class AITool {
|
|
104
|
+
// Default key is mcpServers, but we will use this function to override in subclasses (e.g. VS Code uses "servers").
|
|
105
|
+
getServersKey() {
|
|
106
|
+
return "mcpServers";
|
|
107
|
+
}
|
|
108
|
+
getEnvironmentKey() {
|
|
109
|
+
return "env";
|
|
110
|
+
}
|
|
111
|
+
readConfig(configPath) {
|
|
112
|
+
const serversKey = this.getServersKey();
|
|
113
|
+
const emptyConfig = () => ({ [serversKey]: {} });
|
|
114
|
+
let config = emptyConfig();
|
|
115
|
+
if (fs.existsSync(configPath)) {
|
|
116
|
+
try {
|
|
117
|
+
const existingContent = fs.readFileSync(configPath, "utf-8");
|
|
118
|
+
config = JSON.parse(existingContent);
|
|
119
|
+
getOrCreateServersEntry(config, serversKey);
|
|
120
|
+
}
|
|
121
|
+
catch (e) {
|
|
122
|
+
console.error(`Warning: Could not parse existing ${this.configFileName}, creating new config. Error is: ${formatError(e)}`);
|
|
123
|
+
config = emptyConfig();
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
return config;
|
|
127
|
+
}
|
|
128
|
+
buildMcpConfigEntry(isReadOnly, env) {
|
|
129
|
+
const args = ["-y", "mongodb-mcp-server@latest"];
|
|
130
|
+
if (isReadOnly) {
|
|
131
|
+
args.push("--readOnly");
|
|
132
|
+
}
|
|
133
|
+
return {
|
|
134
|
+
command: "npx",
|
|
135
|
+
args: ["-y", "mongodb-mcp-server@latest"],
|
|
136
|
+
env,
|
|
137
|
+
};
|
|
138
|
+
}
|
|
139
|
+
updateConfig(configPath, env, isReadOnly) {
|
|
140
|
+
const serversKey = this.getServersKey();
|
|
141
|
+
const environmentKey = this.getEnvironmentKey();
|
|
142
|
+
const updatedMcpConfigEntry = this.buildMcpConfigEntry(isReadOnly, env);
|
|
143
|
+
const existingContent = fs.existsSync(configPath) ? fs.readFileSync(configPath, "utf-8") : null;
|
|
144
|
+
if (existingContent !== null && existingContent.trim().length > 0) {
|
|
145
|
+
const resolvedPath = path.resolve(configPath);
|
|
146
|
+
ensureConfigDir(configPath);
|
|
147
|
+
try {
|
|
148
|
+
// Patch in place if file already has content
|
|
149
|
+
const patch = toPatch(updatedMcpConfigEntry, environmentKey);
|
|
150
|
+
const newContent = updateConfigInPlace(existingContent, serversKey, patch, updatedMcpConfigEntry);
|
|
151
|
+
fs.writeFileSync(resolvedPath, newContent, "utf-8");
|
|
152
|
+
}
|
|
153
|
+
catch {
|
|
154
|
+
// Fallback: write full config if in-place update fails (e.g. invalid JSONC)
|
|
155
|
+
const config = this.readConfig(configPath);
|
|
156
|
+
const servers = getOrCreateServersEntry(config, serversKey);
|
|
157
|
+
servers[MCP_SERVER_KEY] = updatedMcpConfigEntry;
|
|
158
|
+
writeConfigFile(configPath, config);
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
else {
|
|
162
|
+
// New file: write full config
|
|
163
|
+
const config = this.readConfig(configPath);
|
|
164
|
+
const servers = getOrCreateServersEntry(config, serversKey);
|
|
165
|
+
servers[MCP_SERVER_KEY] = updatedMcpConfigEntry;
|
|
166
|
+
writeConfigFile(configPath, config);
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
// Returns the shell command to open the config file. Override in subclasses for editor-specific behavior.
|
|
170
|
+
getOpenConfigCommand(configPath, platform, editor) {
|
|
171
|
+
switch (platform) {
|
|
172
|
+
case "mac":
|
|
173
|
+
return getOpenCommandMac(configPath, editor);
|
|
174
|
+
case "windows":
|
|
175
|
+
return getOpenCommandWindowsDefault(configPath);
|
|
176
|
+
case "linux":
|
|
177
|
+
return getOpenCommandLinux(configPath, editor);
|
|
178
|
+
default:
|
|
179
|
+
return null;
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
async openConfigSettings() {
|
|
183
|
+
const platform = getPlatform();
|
|
184
|
+
if (!platform) {
|
|
185
|
+
return;
|
|
186
|
+
}
|
|
187
|
+
const cmd = this.getOpenConfigCommand(this.configPath, platform, this.toolType);
|
|
188
|
+
if (cmd) {
|
|
189
|
+
await new Promise((resolve, reject) => {
|
|
190
|
+
exec(cmd, (error) => {
|
|
191
|
+
if (error) {
|
|
192
|
+
reject(error);
|
|
193
|
+
}
|
|
194
|
+
else {
|
|
195
|
+
resolve(undefined);
|
|
196
|
+
}
|
|
197
|
+
});
|
|
198
|
+
});
|
|
199
|
+
}
|
|
200
|
+
}
|
|
201
|
+
/**
|
|
202
|
+
* The skills.sh agent ID this tool maps to, or null if [skills.sh](https://skills.sh)
|
|
203
|
+
* has no entry for it (e.g. Claude Desktop — no filesystem skills).
|
|
204
|
+
* Install paths are owned by `skills add`; we only map identity.
|
|
205
|
+
*/
|
|
206
|
+
get skillsAgentId() {
|
|
207
|
+
return null;
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
class Cursor extends AITool {
|
|
211
|
+
constructor() {
|
|
212
|
+
super(...arguments);
|
|
213
|
+
this.name = "Cursor";
|
|
214
|
+
this.toolType = "cursor";
|
|
215
|
+
this.configFileName = "mcp.json";
|
|
216
|
+
this.tip = `Tip: Press ${getPlatform() === "mac" ? "Cmd+I" : "Ctrl+I"} in Cursor to open the Agent panel.\n`;
|
|
217
|
+
}
|
|
218
|
+
get configPath() {
|
|
219
|
+
return path.join(getBasePath(true), ".cursor", "mcp.json");
|
|
220
|
+
}
|
|
221
|
+
getOpenConfigCommand(configPath, platform) {
|
|
222
|
+
switch (platform) {
|
|
223
|
+
case "mac":
|
|
224
|
+
return getOpenCommandMac(configPath, "cursor");
|
|
225
|
+
case "windows":
|
|
226
|
+
return `cursor "${configPath}"`;
|
|
227
|
+
case "linux":
|
|
228
|
+
return getOpenCommandLinux(configPath, "cursor");
|
|
229
|
+
default:
|
|
230
|
+
return null;
|
|
231
|
+
}
|
|
232
|
+
}
|
|
233
|
+
get skillsAgentId() {
|
|
234
|
+
return "cursor";
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
class VSCode extends AITool {
|
|
238
|
+
constructor() {
|
|
239
|
+
super(...arguments);
|
|
240
|
+
this.name = "VS Code";
|
|
241
|
+
this.toolType = "vscode";
|
|
242
|
+
this.configFileName = "mcp.json";
|
|
243
|
+
this.tip = `Tip: Press ${getPlatform() === "mac" ? "Cmd+Shift+I" : "Ctrl+Shift+I"} in VS Code to open the Copilot panel.\n`;
|
|
244
|
+
}
|
|
245
|
+
getServersKey() {
|
|
246
|
+
return "servers";
|
|
247
|
+
}
|
|
248
|
+
get configPath() {
|
|
249
|
+
const platform = getPlatform();
|
|
250
|
+
switch (platform) {
|
|
251
|
+
case "windows":
|
|
252
|
+
return path.join(getBasePath(), "Code", "User", "mcp.json");
|
|
253
|
+
case "mac":
|
|
254
|
+
return path.join(getBasePath(), "Library", "Application Support", "Code", "User", "mcp.json");
|
|
255
|
+
case "linux":
|
|
256
|
+
return path.join(getBasePath(), ".config", "Code", "User", "mcp.json");
|
|
257
|
+
default:
|
|
258
|
+
return "";
|
|
259
|
+
}
|
|
260
|
+
}
|
|
261
|
+
getOpenConfigCommand(configPath, platform) {
|
|
262
|
+
switch (platform) {
|
|
263
|
+
case "mac":
|
|
264
|
+
return getOpenCommandMac(configPath, "vscode");
|
|
265
|
+
case "windows":
|
|
266
|
+
return `code "${configPath}"`;
|
|
267
|
+
case "linux":
|
|
268
|
+
return getOpenCommandLinux(configPath, "vscode");
|
|
269
|
+
default:
|
|
270
|
+
return null;
|
|
271
|
+
}
|
|
272
|
+
}
|
|
273
|
+
get skillsAgentId() {
|
|
274
|
+
return "github-copilot";
|
|
275
|
+
}
|
|
276
|
+
}
|
|
277
|
+
class Windsurf extends AITool {
|
|
278
|
+
constructor() {
|
|
279
|
+
super(...arguments);
|
|
280
|
+
this.name = "Windsurf";
|
|
281
|
+
this.toolType = "windsurf";
|
|
282
|
+
this.configFileName = "mcp_config.json";
|
|
283
|
+
this.tip = `Tip: Press ${getPlatform() === "mac" ? "Cmd+L" : "Ctrl+L"} in Windsurf to open the AI panel.\n`;
|
|
284
|
+
}
|
|
285
|
+
get configPath() {
|
|
286
|
+
return path.join(getBasePath(true), ".codeium", "windsurf", "mcp_config.json");
|
|
287
|
+
}
|
|
288
|
+
getOpenConfigCommand(configPath, platform) {
|
|
289
|
+
switch (platform) {
|
|
290
|
+
case "mac":
|
|
291
|
+
return getOpenCommandMac(configPath, "windsurf");
|
|
292
|
+
case "windows":
|
|
293
|
+
return `windsurf "${configPath}"`;
|
|
294
|
+
case "linux":
|
|
295
|
+
return getOpenCommandLinux(configPath, "windsurf");
|
|
296
|
+
default:
|
|
297
|
+
return null;
|
|
298
|
+
}
|
|
299
|
+
}
|
|
300
|
+
get skillsAgentId() {
|
|
301
|
+
return "windsurf";
|
|
302
|
+
}
|
|
303
|
+
}
|
|
304
|
+
class ClaudeDesktop extends AITool {
|
|
305
|
+
constructor() {
|
|
306
|
+
super(...arguments);
|
|
307
|
+
this.name = "Claude Desktop";
|
|
308
|
+
this.toolType = "claudeDesktop";
|
|
309
|
+
this.configFileName = "claude_desktop_config.json";
|
|
310
|
+
}
|
|
311
|
+
get configPath() {
|
|
312
|
+
const platform = getPlatform();
|
|
313
|
+
switch (platform) {
|
|
314
|
+
case "windows":
|
|
315
|
+
return path.join(getBasePath(), "Claude", "claude_desktop_config.json");
|
|
316
|
+
case "mac":
|
|
317
|
+
return path.join(getBasePath(), "Library", "Application Support", "Claude", "claude_desktop_config.json");
|
|
318
|
+
case "linux":
|
|
319
|
+
return path.join(getBasePath(), ".config", "Claude", "claude_desktop_config.json");
|
|
320
|
+
default:
|
|
321
|
+
return "";
|
|
322
|
+
}
|
|
323
|
+
}
|
|
324
|
+
}
|
|
325
|
+
class ClaudeCode extends AITool {
|
|
326
|
+
constructor() {
|
|
327
|
+
super(...arguments);
|
|
328
|
+
this.name = "Claude Code";
|
|
329
|
+
this.toolType = "claudeCode";
|
|
330
|
+
this.configFileName = ".claude.json";
|
|
331
|
+
}
|
|
332
|
+
get configPath() {
|
|
333
|
+
return path.join(getBasePath(true), ".claude.json");
|
|
334
|
+
}
|
|
335
|
+
get skillsAgentId() {
|
|
336
|
+
return "claude-code";
|
|
337
|
+
}
|
|
338
|
+
}
|
|
339
|
+
class OpenCode extends AITool {
|
|
340
|
+
constructor() {
|
|
341
|
+
super(...arguments);
|
|
342
|
+
this.name = "Open Code";
|
|
343
|
+
this.toolType = "opencode";
|
|
344
|
+
this.configFileName = "opencode.json";
|
|
345
|
+
}
|
|
346
|
+
get configPath() {
|
|
347
|
+
return path.join(getBasePath(true), ".config", "opencode", "opencode.json");
|
|
348
|
+
}
|
|
349
|
+
getServersKey() {
|
|
350
|
+
return "mcp";
|
|
351
|
+
}
|
|
352
|
+
getEnvironmentKey() {
|
|
353
|
+
return "environment";
|
|
354
|
+
}
|
|
355
|
+
buildMcpConfigEntry(isReadOnly, env) {
|
|
356
|
+
const args = ["-y", "mongodb-mcp-server@latest"];
|
|
357
|
+
if (isReadOnly) {
|
|
358
|
+
args.push("--readOnly");
|
|
359
|
+
}
|
|
360
|
+
return {
|
|
361
|
+
type: "local",
|
|
362
|
+
command: ["npx", ...args],
|
|
363
|
+
environment: Object.keys(env).length > 0 ? env : undefined,
|
|
364
|
+
enabled: true,
|
|
365
|
+
};
|
|
366
|
+
}
|
|
367
|
+
get skillsAgentId() {
|
|
368
|
+
return "opencode";
|
|
369
|
+
}
|
|
370
|
+
}
|
|
371
|
+
// Opens the config file for the given tool using the tool's platform-specific command.
|
|
372
|
+
export const openConfigSettings = (tool) => {
|
|
373
|
+
return AI_TOOL_REGISTRY[tool].openConfigSettings();
|
|
374
|
+
};
|
|
375
|
+
export const AI_TOOL_REGISTRY = {
|
|
376
|
+
["cursor"]: new Cursor(),
|
|
377
|
+
["vscode"]: new VSCode(),
|
|
378
|
+
["windsurf"]: new Windsurf(),
|
|
379
|
+
["claudeDesktop"]: new ClaudeDesktop(),
|
|
380
|
+
["claudeCode"]: new ClaudeCode(),
|
|
381
|
+
["opencode"]: new OpenCode(),
|
|
382
|
+
};
|
|
383
|
+
//# sourceMappingURL=aiTool.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"aiTool.js","sourceRoot":"","sources":["../../../src/setup/aiTool.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { type AIToolType } from "./aiTool.js";
|
|
2
|
+
export type SkillsInstallOutcome = {
|
|
3
|
+
status: "installed";
|
|
4
|
+
} | {
|
|
5
|
+
status: "skipped";
|
|
6
|
+
reason: "no-agent-id" | "user-declined";
|
|
7
|
+
} | {
|
|
8
|
+
status: "failed";
|
|
9
|
+
exitCode: number;
|
|
10
|
+
};
|
|
11
|
+
export interface InstallSkillsOptions {
|
|
12
|
+
agentId: string;
|
|
13
|
+
cwd: string;
|
|
14
|
+
}
|
|
15
|
+
export interface PromptAndInstallSkillsOptions {
|
|
16
|
+
tool: AIToolType;
|
|
17
|
+
cwd: string;
|
|
18
|
+
}
|
|
19
|
+
export declare const NO_SKILLS_MESSAGE: string;
|
|
20
|
+
/**
|
|
21
|
+
* Assemble the args for `npx` to invoke the pinned skills CLI. Skills are
|
|
22
|
+
* always installed globally (`-g`) so they're available across the user's
|
|
23
|
+
* projects, matching how the MCP server itself is installed.
|
|
24
|
+
*/
|
|
25
|
+
export declare function buildSkillsAddArgs(agentId: string): string[];
|
|
26
|
+
/**
|
|
27
|
+
* Shell out to `skills add`.
|
|
28
|
+
* Non-zero exit is reported to the user but does not throw
|
|
29
|
+
* since setup has already succeeded by this point.
|
|
30
|
+
*/
|
|
31
|
+
export declare function installSkills(opts: InstallSkillsOptions): Promise<SkillsInstallOutcome>;
|
|
32
|
+
/**
|
|
33
|
+
* Prompt the user for whether to install skills and call `installSkills`.
|
|
34
|
+
* Null-agent tools (Claude Desktop) skip prompts entirely.
|
|
35
|
+
*
|
|
36
|
+
* Never throws — except `ExitPromptError`, which is re-thrown so `runSetup`'s
|
|
37
|
+
* outer Ctrl+C handler can print "Setup cancelled". All other errors
|
|
38
|
+
* (unexpected prompt failure, etc.) are logged as warnings and converted to a
|
|
39
|
+
* `failed` outcome so setup can still print its success summary.
|
|
40
|
+
*/
|
|
41
|
+
export declare function promptAndInstallSkills(opts: PromptAndInstallSkillsOptions): Promise<SkillsInstallOutcome>;
|
|
42
|
+
//# sourceMappingURL=installSkills.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"installSkills.d.ts","sourceRoot":"","sources":["../../../src/setup/installSkills.ts"],"names":[],"mappings":"AAIA,OAAO,EAAoB,KAAK,UAAU,EAAE,MAAM,aAAa,CAAC;AAEhE,MAAM,MAAM,oBAAoB,GAC1B;IAAE,MAAM,EAAE,WAAW,CAAA;CAAE,GACvB;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,MAAM,EAAE,aAAa,GAAG,eAAe,CAAA;CAAE,GAC9D;IAAE,MAAM,EAAE,QAAQ,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC;AAE7C,MAAM,WAAW,oBAAoB;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,6BAA6B;IAC1C,IAAI,EAAE,UAAU,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;CACf;AAID,eAAO,MAAM,iBAAiB,QAKJ,CAAC;AAK3B;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAE5D;AAED;;;;GAIG;AACH,wBAAsB,aAAa,CAAC,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAU7F;AAgDD;;;;;;;;GAQG;AACH,wBAAsB,sBAAsB,CAAC,IAAI,EAAE,6BAA6B,GAAG,OAAO,CAAC,oBAAoB,CAAC,CA4B/G"}
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
/* eslint-disable no-console */
|
|
2
|
+
import { spawn } from "node:child_process";
|
|
3
|
+
import chalk from "chalk";
|
|
4
|
+
import { confirm } from "@inquirer/prompts";
|
|
5
|
+
import { AI_TOOL_REGISTRY } from "./aiTool.js";
|
|
6
|
+
const SKILLS_REPO = "mongodb/agent-skills";
|
|
7
|
+
const SKILLS_REPO_URL = `https://github.com/${SKILLS_REPO}`;
|
|
8
|
+
export const NO_SKILLS_MESSAGE = `We're unable to install the MongoDB Agent Skills for this tool.\n` +
|
|
9
|
+
`\n` +
|
|
10
|
+
`See the MongoDB Agent Skills repo for manual install instructions:\n` +
|
|
11
|
+
`\n` +
|
|
12
|
+
` ${SKILLS_REPO_URL}`;
|
|
13
|
+
const SKILLS_PACKAGE_VERSION = "1";
|
|
14
|
+
const SKILLS_CLI_PIN = `skills@${SKILLS_PACKAGE_VERSION}`;
|
|
15
|
+
/**
|
|
16
|
+
* Assemble the args for `npx` to invoke the pinned skills CLI. Skills are
|
|
17
|
+
* always installed globally (`-g`) so they're available across the user's
|
|
18
|
+
* projects, matching how the MCP server itself is installed.
|
|
19
|
+
*/
|
|
20
|
+
export function buildSkillsAddArgs(agentId) {
|
|
21
|
+
return ["--yes", SKILLS_CLI_PIN, "add", SKILLS_REPO, "--agent", agentId, "-y", "-g"];
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Shell out to `skills add`.
|
|
25
|
+
* Non-zero exit is reported to the user but does not throw
|
|
26
|
+
* since setup has already succeeded by this point.
|
|
27
|
+
*/
|
|
28
|
+
export async function installSkills(opts) {
|
|
29
|
+
const args = buildSkillsAddArgs(opts.agentId);
|
|
30
|
+
const exitCode = await runSkillsAdd(args, opts.cwd);
|
|
31
|
+
if (exitCode === 0) {
|
|
32
|
+
return { status: "installed" };
|
|
33
|
+
}
|
|
34
|
+
printInstallFailure(exitCode, args);
|
|
35
|
+
return { status: "failed", exitCode };
|
|
36
|
+
}
|
|
37
|
+
// Sentinel exit code used when `spawn` itself fails before the process runs
|
|
38
|
+
// (e.g. `npx` not on PATH). Real exit codes are 0–255, so -1 is unambiguous.
|
|
39
|
+
const SPAWN_ERROR_EXIT_CODE = -1;
|
|
40
|
+
function runSkillsAdd(args, cwd) {
|
|
41
|
+
return new Promise((resolve) => {
|
|
42
|
+
// `shell: true` is required on Windows so `npx` (a `.cmd` shim) resolves
|
|
43
|
+
// through PATHEXT. Our args are controlled and contain no shell
|
|
44
|
+
// metacharacters, so there's no injection risk.
|
|
45
|
+
const child = spawn("npx", args, { stdio: "inherit", cwd, shell: true });
|
|
46
|
+
child.on("close", (code, signal) => {
|
|
47
|
+
if (signal !== null) {
|
|
48
|
+
// Killed by a signal (Ctrl+C, OOM, etc.). `code` is null in this
|
|
49
|
+
// case, so falling through to `code ?? 0` would mis-report the
|
|
50
|
+
// install as successful. Surface it as a non-zero sentinel.
|
|
51
|
+
console.error(chalk.red(`The skills CLI was terminated by signal ${signal}.`));
|
|
52
|
+
resolve(SPAWN_ERROR_EXIT_CODE);
|
|
53
|
+
return;
|
|
54
|
+
}
|
|
55
|
+
resolve(code ?? 0);
|
|
56
|
+
});
|
|
57
|
+
child.on("error", (err) => {
|
|
58
|
+
// Spawn-level error (npx missing, etc.). Print the message ourselves
|
|
59
|
+
// — nothing streamed to stderr because the process never started —
|
|
60
|
+
// then surface as a non-zero exit so the graceful-failure path runs.
|
|
61
|
+
console.error(chalk.red(`Failed to spawn the skills CLI: ${err.message}`));
|
|
62
|
+
resolve(SPAWN_ERROR_EXIT_CODE);
|
|
63
|
+
});
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
function printInstallFailure(exitCode, args) {
|
|
67
|
+
console.log("");
|
|
68
|
+
console.log(chalk.red(`Agent skills install failed (exit ${exitCode}). Setup completed, but skills were not installed. See the CLI output above for details.`));
|
|
69
|
+
console.log("");
|
|
70
|
+
console.log("You can retry manually:");
|
|
71
|
+
console.log(` npx ${args.join(" ")}`);
|
|
72
|
+
console.log("");
|
|
73
|
+
console.log(`Skills repo: ${SKILLS_REPO_URL}`);
|
|
74
|
+
console.log("");
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Prompt the user for whether to install skills and call `installSkills`.
|
|
78
|
+
* Null-agent tools (Claude Desktop) skip prompts entirely.
|
|
79
|
+
*
|
|
80
|
+
* Never throws — except `ExitPromptError`, which is re-thrown so `runSetup`'s
|
|
81
|
+
* outer Ctrl+C handler can print "Setup cancelled". All other errors
|
|
82
|
+
* (unexpected prompt failure, etc.) are logged as warnings and converted to a
|
|
83
|
+
* `failed` outcome so setup can still print its success summary.
|
|
84
|
+
*/
|
|
85
|
+
export async function promptAndInstallSkills(opts) {
|
|
86
|
+
try {
|
|
87
|
+
const tool = AI_TOOL_REGISTRY[opts.tool];
|
|
88
|
+
const agentId = tool.skillsAgentId;
|
|
89
|
+
if (agentId === null) {
|
|
90
|
+
console.log(NO_SKILLS_MESSAGE);
|
|
91
|
+
return { status: "skipped", reason: "no-agent-id" };
|
|
92
|
+
}
|
|
93
|
+
const shouldInstall = await confirm({
|
|
94
|
+
message: `Install the MongoDB Agent Skills for ${tool.name}?`,
|
|
95
|
+
default: true,
|
|
96
|
+
});
|
|
97
|
+
if (!shouldInstall) {
|
|
98
|
+
return { status: "skipped", reason: "user-declined" };
|
|
99
|
+
}
|
|
100
|
+
return await installSkills({ agentId, cwd: opts.cwd });
|
|
101
|
+
}
|
|
102
|
+
catch (error) {
|
|
103
|
+
// Ctrl+C: inquirer throws ExitPromptError. Let it propagate so the
|
|
104
|
+
// top-level runSetup handler can exit cleanly.
|
|
105
|
+
if (error && typeof error === "object" && "name" in error && error.name === "ExitPromptError") {
|
|
106
|
+
throw error;
|
|
107
|
+
}
|
|
108
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
109
|
+
console.warn(chalk.yellow(`\nWarning: skills install step failed: ${message}`));
|
|
110
|
+
return { status: "failed", exitCode: SPAWN_ERROR_EXIT_CODE };
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
//# sourceMappingURL=installSkills.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"installSkills.js","sourceRoot":"","sources":["../../../src/setup/installSkills.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setupAiToolsUtils.d.ts","sourceRoot":"","sources":["../../../src/setup/setupAiToolsUtils.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,QAAQ,GAAG,KAAK,GAAG,SAAS,GAAG,OAAO,CAAC;AACnD,eAAO,MAAM,WAAW,QAAO,QAAQ,GAAG,IAWzC,CAAC;AAEF,eAAO,MAAM,WAAW,GAAI,OAAO,OAAO,KAAG,MAG5C,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import os from "os";
|
|
2
|
+
import { Keychain } from "../common/keychain.js";
|
|
3
|
+
import { redact } from "mongodb-redact";
|
|
4
|
+
export const getPlatform = () => {
|
|
5
|
+
switch (os.platform()) {
|
|
6
|
+
case "win32":
|
|
7
|
+
return "windows";
|
|
8
|
+
case "darwin":
|
|
9
|
+
return "mac";
|
|
10
|
+
case "linux":
|
|
11
|
+
return "linux";
|
|
12
|
+
default:
|
|
13
|
+
return null;
|
|
14
|
+
}
|
|
15
|
+
};
|
|
16
|
+
export const formatError = (error) => {
|
|
17
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
18
|
+
return redact(message, Keychain.root.allSecrets);
|
|
19
|
+
};
|
|
20
|
+
//# sourceMappingURL=setupAiToolsUtils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setupAiToolsUtils.js","sourceRoot":"","sources":["../../../src/setup/setupAiToolsUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAGxC,MAAM,CAAC,MAAM,WAAW,GAAG,GAAoB,EAAE;IAC7C,QAAQ,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC;QACpB,KAAK,OAAO;YACR,OAAO,SAAS,CAAC;QACrB,KAAK,QAAQ;YACT,OAAO,KAAK,CAAC;QACjB,KAAK,OAAO;YACR,OAAO,OAAO,CAAC;QACnB;YACI,OAAO,IAAI,CAAC;IACpB,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,KAAc,EAAU,EAAE;IAClD,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACvE,OAAO,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;AACrD,CAAC,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { type UserConfig } from "../common/config/userConfig.js";
|
|
2
|
+
/**
|
|
3
|
+
* Runs the interactive setup wizard. When `setupTelemetry` is provided, each
|
|
4
|
+
* logical step emits a telemetry event so we can track both overall completion
|
|
5
|
+
* rates and per-step drop-off.
|
|
6
|
+
*/
|
|
7
|
+
export declare const runSetup: (config: UserConfig) => Promise<never>;
|
|
8
|
+
//# sourceMappingURL=setupMcpServer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setupMcpServer.d.ts","sourceRoot":"","sources":["../../../src/setup/setupMcpServer.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAuYjE;;;;GAIG;AACH,eAAO,MAAM,QAAQ,GAAU,QAAQ,UAAU,KAAG,OAAO,CAAC,KAAK,CAoHhE,CAAC"}
|