MCPcopy Create free account
hub / github.com/UsefulSoftwareCo/executor / toMcpOutputResult

Function toMcpOutputResult

packages/hosts/mcp/src/tool-server.ts:568–587  ·  view source on GitHub ↗
(
  result: FormattedExecuteInput,
  output: readonly ExecuteOutputItem[],
)

Source from the content-addressed store, hash-verified

566};
567
568const toMcpOutputResult = (
569 result: FormattedExecuteInput,
570 output: readonly ExecuteOutputItem[],
571): McpToolResult => {
572 const formatted = formatExecuteResult(result);
573 const content = output.flatMap(outputItemContent);
574 const extraText: string[] = [];
575 if (result.error) {
576 extraText.push(formatted.text);
577 } else if (result.logs && result.logs.length > 0) {
578 extraText.push(`Logs:\n${result.logs.join("\n")}`);
579 }
580 content.push(...extraText.map((text): ContentBlock => ({ type: "text", text })));
581
582 return {
583 content,
584 structuredContent: formatted.structured,
585 isError: formatted.isError || undefined,
586 };
587};
588
589const toMcpResult = (result: FormattedExecuteInput): McpToolResult => {
590 if (result.output && result.output.length > 0) return toMcpOutputResult(result, result.output);

Callers 1

toMcpResultFunction · 0.85

Calls 2

formatExecuteResultFunction · 0.90
pushMethod · 0.80

Tested by

no test coverage detected