From 31b4c76a6b0e52c9d748f51a1766bec19552adf5 Mon Sep 17 00:00:00 2001 From: Jack Wotherspoon Date: Fri, 15 Aug 2025 15:36:38 -0400 Subject: fix: improve robustness of `gemini mcp add` command (#6332) --- packages/cli/src/commands/mcp/add.ts | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'packages/cli/src/commands/mcp/add.ts') diff --git a/packages/cli/src/commands/mcp/add.ts b/packages/cli/src/commands/mcp/add.ts index 9537e131..67c44572 100644 --- a/packages/cli/src/commands/mcp/add.ts +++ b/packages/cli/src/commands/mcp/add.ts @@ -130,6 +130,10 @@ export const addCommand: CommandModule = { builder: (yargs) => yargs .usage('Usage: gemini mcp add [options] [args...]') + .parserConfiguration({ + 'unknown-options-as-args': true, // Pass unknown options as server args + 'populate--': true, // Populate server args after -- separator + }) .positional('name', { describe: 'Name of the server', type: 'string', @@ -189,6 +193,13 @@ export const addCommand: CommandModule = { describe: 'A comma-separated list of tools to exclude', type: 'array', string: true, + }) + .middleware((argv) => { + // Handle -- separator args as server args if present + if (argv['--']) { + const existingArgs = (argv.args as Array) || []; + argv.args = [...existingArgs, ...(argv['--'] as string[])]; + } }), handler: async (argv) => { await addMcpServer( -- cgit v1.2.3