From 5ffecb60c9cd291f679ff0cba2657a68550d1ac9 Mon Sep 17 00:00:00 2001 From: YeonGyu-Kim Date: Wed, 4 Feb 2026 11:26:34 +0900 Subject: [PATCH] fix(skill-mcp): avoid propertyNames for Gemini compatibility (#1465) - Replace record(string, unknown) with object({}) in arguments schema - record() generates propertyNames which Gemini rejects with 400 error - object({}) generates plain { type: 'object' } without propertyNames - Runtime parseArguments() already handles arbitrary object keys Fixes #1315 --- src/tools/skill-mcp/tools.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/tools/skill-mcp/tools.ts b/src/tools/skill-mcp/tools.ts index 3d38790d..96dddaa7 100644 --- a/src/tools/skill-mcp/tools.ts +++ b/src/tools/skill-mcp/tools.ts @@ -118,7 +118,7 @@ export function createSkillMcpTool(options: SkillMcpToolOptions): ToolDefinition resource_name: tool.schema.string().optional().describe("MCP resource URI to read"), prompt_name: tool.schema.string().optional().describe("MCP prompt to get"), arguments: tool.schema - .union([tool.schema.string(), tool.schema.record(tool.schema.string(), tool.schema.unknown())]) + .union([tool.schema.string(), tool.schema.object({})]) .optional() .describe("JSON string or object of arguments"), grep: tool.schema