diff --git a/src/config.ts b/src/config.ts index 0357101c..63bba69d 100644 --- a/src/config.ts +++ b/src/config.ts @@ -8,10 +8,11 @@ const { localDataPath, configPath } = getLocalDataPath(); // If we decide to support non-string config options, we'll need to extend the mechanism for parsing // env variables. -interface UserConfig extends Record { +interface UserConfig extends Record { apiBaseUrl: string; clientId: string; stateFile: string; + connectionString?: string; } const defaults: UserConfig = { diff --git a/src/tools/mongodb/connect.ts b/src/tools/mongodb/connect.ts index f95cde27..6055311b 100644 --- a/src/tools/mongodb/connect.ts +++ b/src/tools/mongodb/connect.ts @@ -4,6 +4,7 @@ import { NodeDriverServiceProvider } from "@mongosh/service-provider-node-driver import { DbOperationType, MongoDBToolBase } from "./mongodbTool.js"; import { ToolArgs } from "../tool.js"; import { ErrorCodes, MongoDBError } from "../../errors.js"; +import config from "../../config.js"; export class ConnectTool extends MongoDBToolBase { protected name = "connect"; @@ -20,7 +21,7 @@ export class ConnectTool extends MongoDBToolBase { protected async execute({ connectionStringOrClusterName, }: ToolArgs): Promise { - connectionStringOrClusterName ??= this.state.credentials.connectionString; + connectionStringOrClusterName ??= config.connectionString || this.state.credentials.connectionString; if (!connectionStringOrClusterName) { return { content: [