import 'dotenv/config'; import Exa from "exa-js"; const exaApiKey = process.env.EXA_API_KEY; if (!exaApiKey) { throw new Error("Missing EXA_API_KEY environment variable for websearch"); } const exa = new Exa(exaApiKey); export default { type: 'function', name: 'websearch', description: 'Perform a google web search.', strict: true, parameters: { type: 'object', required: ['query'], additionalProperties: false, properties: { query: { type: 'string', description: 'The search query.' } } } }; export async function run(args) { try { console.log('Google search: ', args.query); const result = await exa.search( args.query,{ type: "auto", userLocation: "DE", numResults: 20} ); console.log('Google search result: ', result.results[0]); return result; } catch (error) { return `websearch error: ${error?.message || String(error)}`; } }