import { apiClient } from "../lib/apiClient.js";
export async function getWebHarvestStatusTool(args: any) {
try {
const result = await apiClient.getWebHarvestStatus();
// Format the response for better readability
let statusMessage = "";
if (!result.hasAgent) {
statusMessage = "No web harvest agent exists yet. Run web harvest to create one.";
} else {
const { status, isRunning, leads } = result;
statusMessage = `
Web Harvest Agent Status:
- Status: ${status} ${isRunning ? "(Currently Running)" : "(Idle)"}
- Total Leads: ${leads.total}
- Completed Leads: ${leads.completed}
- Pending Leads: ${leads.pending}
- Failed Leads: ${leads.failed}
${isRunning ? "Agent is currently running. Check back in a few moments for updated results." : "Agent is idle. Use run_web_harvest to start a new search."}
`.trim();
}
return {
content: [
{
type: "text",
text: statusMessage,
},
],
};
} catch (error: any) {
const errorMessage =
error.response?.data?.error || error.message || "Unknown error occurred";
return {
content: [
{
type: "text",
text: `Error fetching status: ${errorMessage}`,
},
],
isError: true,
};
}
}