summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--packages/core/src/core/coreToolScheduler.ts4
-rw-r--r--packages/core/src/tools/mcp-tool.ts3
2 files changed, 5 insertions, 2 deletions
diff --git a/packages/core/src/core/coreToolScheduler.ts b/packages/core/src/core/coreToolScheduler.ts
index 3fe6562e..c3735366 100644
--- a/packages/core/src/core/coreToolScheduler.ts
+++ b/packages/core/src/core/coreToolScheduler.ts
@@ -128,6 +128,10 @@ export function formatLlmContentForFunctionResponse(
additionalParts.push(contentToProcess);
} else if (contentToProcess.text !== undefined) {
functionResponseJson = { output: contentToProcess.text };
+ } else if (contentToProcess.functionResponse) {
+ functionResponseJson = JSON.parse(
+ JSON.stringify(contentToProcess.functionResponse),
+ );
} else {
functionResponseJson = { status: 'Tool execution succeeded.' };
additionalParts.push(contentToProcess);
diff --git a/packages/core/src/tools/mcp-tool.ts b/packages/core/src/tools/mcp-tool.ts
index 819dc48d..65c0cae8 100644
--- a/packages/core/src/tools/mcp-tool.ts
+++ b/packages/core/src/tools/mcp-tool.ts
@@ -96,10 +96,9 @@ This MCP tool named '${serverToolName}' was discovered from '${serverName}' MCP
const responseParts: Part[] = await this.mcpTool.callTool(functionCalls);
- const output = getStringifiedResultForDisplay(responseParts);
return {
llmContent: responseParts,
- returnDisplay: output,
+ returnDisplay: getStringifiedResultForDisplay(responseParts),
};
}
}