From 3b2b411a6af26c8a6953d89635f1a90c3022ede8 Mon Sep 17 00:00:00 2001 From: Siddharth Ganesan Date: Sat, 31 Jan 2026 16:00:53 -0800 Subject: [PATCH] Improvement --- apps/sim/app/api/mcp/copilot/route.ts | 27 ++++++++++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-) diff --git a/apps/sim/app/api/mcp/copilot/route.ts b/apps/sim/app/api/mcp/copilot/route.ts index 042a4983d..f22f631f5 100644 --- a/apps/sim/app/api/mcp/copilot/route.ts +++ b/apps/sim/app/api/mcp/copilot/route.ts @@ -784,11 +784,36 @@ async function handleSubagentToolCall( } ) + // When a respond tool (plan_respond, edit_respond, etc.) was used, + // return only the structured result - not the full result with all internal tool calls. + // This provides clean output for MCP consumers. + let responseData: unknown + if (result.structuredResult) { + responseData = { + success: result.structuredResult.success ?? result.success, + type: result.structuredResult.type, + summary: result.structuredResult.summary, + data: result.structuredResult.data, + } + } else if (result.error) { + responseData = { + success: false, + error: result.error, + errors: result.errors, + } + } else { + // Fallback: return content if no structured result + responseData = { + success: result.success, + content: result.content, + } + } + const response: CallToolResult = { content: [ { type: 'text', - text: JSON.stringify(result, null, 2), + text: JSON.stringify(responseData, null, 2), }, ], isError: !result.success,