on main help sign in
fix(mcp): tool output join with new line (#686)
073d130Carlos Alexandro Becker
internal/llm/agent/mcp-tools.go+4−5
@@ -123,16 +123,15 @@ func runTool(ctx context.Context, name, toolName string, input string) (tools.To
123 return tools.NewTextErrorResponse(err.Error()), nil
123 return tools.NewTextErrorResponse(err.Error()), nil
124 }
124 }
125
125
126− var output strings.Builder
126+ output := make([]string, 0, len(result.Content))
127 for _, v := range result.Content {
127 for _, v := range result.Content {
128 if v, ok := v.(mcp.TextContent); ok {
128 if v, ok := v.(mcp.TextContent); ok {
129− output.WriteString(v.Text)
129+ output = append(output, v.Text)
130 } else {
130 } else {
131− _, _ = fmt.Fprintf(&output, "%v: ", v)
131+ output = append(output, fmt.Sprintf("%v", v))
132 }
132 }
133 }
133 }
134−
135− return tools.NewTextResponse(output.String()), nil
134+ return tools.NewTextResponse(strings.Join(output, "\n")), nil
136}
135}
137
136
138func (b *McpTool) Run(ctx context.Context, params tools.ToolCall) (tools.ToolResponse, error) {
137func (b *McpTool) Run(ctx context.Context, params tools.ToolCall) (tools.ToolResponse, error) {