import { createTool } from '@runflow-ai/sdk';
import { z } from 'zod';
import axios from 'axios';
import { format, addDays } from 'date-fns';
import _ from 'lodash';
const myTool = createTool({
id: 'example-tool',
description: 'Shows all available libraries',
inputSchema: z.object({
url: z.string().url(),
data: z.array(z.any()),
}),
execute: async ({ context }) => {
// ✅ HTTP requests with axios
const response = await axios.get(context.url);
// ✅ Date manipulation
const tomorrow = addDays(new Date(), 1);
const formatted = format(tomorrow, 'yyyy-MM-dd');
// ✅ Array/Object utilities with lodash
const unique = _.uniq(context.data);
const grouped = _.groupBy(context.data, 'category');
return { response: response.data, date: formatted, unique, grouped };
},
});