summaryrefslogtreecommitdiff
path: root/packages/cli/src
diff options
context:
space:
mode:
Diffstat (limited to 'packages/cli/src')
-rw-r--r--packages/cli/src/config/config.ts1
-rw-r--r--packages/cli/src/config/settings.ts5
2 files changed, 5 insertions, 1 deletions
diff --git a/packages/cli/src/config/config.ts b/packages/cli/src/config/config.ts
index 12a65440..c0ec38af 100644
--- a/packages/cli/src/config/config.ts
+++ b/packages/cli/src/config/config.ts
@@ -402,6 +402,7 @@ export async function loadCliConfig(settings: Settings): Promise<Config> {
settings.toolDiscoveryCommand,
settings.toolCallCommand,
settings.mcpServerCommand,
+ settings.mcpServers,
userAgent,
memoryContent,
fileCount,
diff --git a/packages/cli/src/config/settings.ts b/packages/cli/src/config/settings.ts
index ab65160c..fa8a545d 100644
--- a/packages/cli/src/config/settings.ts
+++ b/packages/cli/src/config/settings.ts
@@ -7,6 +7,7 @@
import * as fs from 'fs';
import * as path from 'path';
import { homedir } from 'os';
+import { StdioServerParameters } from '@modelcontextprotocol/sdk/client/stdio.js';
export const SETTINGS_DIRECTORY_NAME = '.gemini';
export const USER_SETTINGS_DIR = path.join(homedir(), SETTINGS_DIRECTORY_NAME);
@@ -23,6 +24,7 @@ export interface Settings {
toolDiscoveryCommand?: string;
toolCallCommand?: string;
mcpServerCommand?: string;
+ mcpServers?: Record<string, StdioServerParameters>;
// Add other settings here.
}
@@ -67,9 +69,10 @@ export class LoadedSettings {
setValue(
scope: SettingScope,
key: keyof Settings,
- value: string | undefined,
+ value: string | Record<string, StdioServerParameters> | undefined,
): void {
const settingsFile = this.forScope(scope);
+ // @ts-expect-error - value can be string | Record<string, StdioServerParameters>
settingsFile.settings[key] = value;
this._merged = this.computeMergedSettings();
saveSettings(settingsFile);