import { apiClient } from "../lib/apiClient.js";
export async function getWebHarvestLeadsTool(args: any) {
try {
const { status, limit = 50 } = args || {};
const result = await apiClient.getWebHarvestLeads({
status,
limit,
});
// Format the response for better readability
const formattedResponse = {
total: result.total,
leads: result.leads.map((lead: any) => ({
companyName: lead.companyName || "N/A",
websiteUrl: lead.websiteUrl,
email: lead.companyEmail || "Not found",
phone: lead.companyPhone || "Not found",
address: lead.companyAddress || "Not found",
linkedin: lead.linkedinUrl || "Not found",
facebook: lead.facebookUrl || "Not found",
instagram: lead.instagramUrl || "Not found",
twitter: lead.xUrl || "Not found",
industry: lead.industry || "Not specified",
status: lead.status,
createdAt: lead.createdAt,
})),
};
return {
content: [
{
type: "text",
text: JSON.stringify(formattedResponse, null, 2),
},
],
};
} catch (error: any) {
const errorMessage =
error.response?.data?.error || error.message || "Unknown error occurred";
return {
content: [
{
type: "text",
text: `Error fetching leads: ${errorMessage}`,
},
],
isError: true,
};
}
}