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

Function toMcpOutputResult

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

Source from the content-addressed store, hash-verified

434};
435
436const toMcpOutputResult = (
437 result: FormattedExecuteInput,
438 output: readonly ExecuteOutputItem[],
439): McpToolResult => {
440 const formatted = formatExecuteResult(result);
441 const content = output.flatMap(outputItemContent);
442 const extraText: string[] = [];
443 if (result.error) {
444 extraText.push(formatted.text);
445 } else if (result.logs && result.logs.length > 0) {
446 extraText.push(`Logs:\n${result.logs.join("\n")}`);
447 }
448 content.push(...extraText.map((text): ContentBlock => ({ type: "text", text })));
449
450 return {
451 content,
452 structuredContent: formatted.structured,
453 isError: formatted.isError || undefined,
454 };
455};
456
457const toMcpResult = (result: FormattedExecuteInput): McpToolResult => {
458 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