{"ok":true,"site":{"host":"agrivision.expo.app","url":"https://agrivision.expo.app/","type":"live","desc":"","tools":[{"name":"analyze_crop","kind":"act","impl":"imperative","description":"Analyze a farmer-provided crop image to identify likely disease, pest, or nutrient issues. Use when the user wants an AI-assisted crop assessment; results are uncertain and not guaranteed.","title":"Analyze crop image","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"image":{"type":"string","description":"Crop image as a data image URL, file URI, http(s) URL, or sample token."},"crop":{"type":"string","description":"Crop name such as tomato, wheat, rice, potato, cotton, or maize."},"location":{"type":"string","description":"Optional farm or village location for context."},"farmSize":{"type":"number","description":"Optional farm size in acres for cost context."}},"required":["image","crop"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"get_weather","kind":"answer","impl":"imperative","description":"Retrieve weather context for farming decisions at a location. Use before recommending sprays, irrigation, or recovery timing. Returns demo-seed data unless a production weather API is wired.","title":"Get farming weather","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"location":{"type":"string","description":"Farm, village, city, or region."},"crop":{"type":"string","description":"Optional crop for crop-specific implications."}},"required":["location"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"find_treatment","kind":"answer","impl":"imperative","description":"Find treatment options from AgriVision knowledge for a known crop diagnosis. Use after analyze_crop or when the farmer provides a clear issue. Does not verify live label regulations.","title":"Find treatment options","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"crop":{"type":"string","description":"Crop name."},"diagnosis":{"type":"string","description":"Diagnosis returned by AgriVision, such as Late Blight or Aphid Infestation."},"severity":{"type":"string","description":"Optional severity: low, moderate, high, or critical."},"budget":{"type":"number","description":"Optional maximum INR per acre."},"constraints":{"type":"string","description":"Optional farming constraints, for example organic-only or no spray before rain."}},"required":["crop","diagnosis"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"calculate_treatment_cost","kind":"act","impl":"imperative","description":"Calculate estimated treatment cost for a farm size using AgriVision pricing anchors. Use a treatment returned by find_treatment for the most reliable estimate.","title":"Calculate treatment cost","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"treatment":{"type":"string","description":"Treatment name or instruction."},"farmSize":{"type":"number","description":"Farm size."},"unit":{"type":"string","enum":["acre","hectare"],"description":"Farm size unit."},"region":{"type":"string","description":"Optional region for future pricing differences."},"estimatedCostPerAcre":{"type":"number","description":"Optional INR per-acre estimate from find_treatment."}},"required":["treatment","farmSize"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"create_recovery_plan","kind":"act","impl":"imperative","description":"Create an actionable crop recovery plan with tasks, monitoring, warnings, and estimated costs. Use after diagnosis, weather, treatment, and cost checks. Does not save state.","title":"Create recovery plan","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"crop":{"type":"string","description":"Crop name."},"diagnosis":{"type":"string","description":"Diagnosis returned by AgriVision."},"severity":{"type":"string","description":"Severity: low, moderate, high, or critical."},"treatment":{"type":"string","description":"Chosen treatment option."},"budget":{"type":"number","description":"Optional maximum INR per acre."},"farmSize":{"type":"number","description":"Farm size in acres."},"weather":{"type":"object","description":"Optional weather object returned by get_weather."}},"required":["crop","diagnosis","severity","treatment","farmSize"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"optimize_recovery_plan","kind":"act","impl":"imperative","description":"Revise a recovery plan when the farmer changes budget, farm size, or priorities. Use for human-agent collaboration before asking the farmer to approve the final plan.","title":"Optimize recovery plan","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"existingPlan":{"type":"object","description":"Existing AgriVision recovery plan. "},"maximumBudget":{"type":"number","description":"Maximum INR per acre."},"farmSize":{"type":"number","description":"Farm size in acres."},"priorities":{"type":"array","items":{"type":"string"},"description":"Optimization priorities. "},"constraints":{"type":"string","description":"Optional constraints such as organic-only or avoid spraying before rain."}},"required":["existingPlan","maximumBudget","farmSize","priorities"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"save_recovery_plan","kind":"act","impl":"imperative","description":"Save a finalized recovery plan to the signed-in farmer account after explicit human approval. This changes persistent app state and validates farm ownership.","title":"Save recovery plan","annotations":{"readOnlyHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"farmId":{"type":"string","description":"Farm ID owned by the signed-in farmer."},"recoveryPlan":{"type":"object","description":"Final AgriVision recovery plan object. "},"name":{"type":"string","description":"Optional saved plan name."},"confirmed":{"type":"boolean","description":"Must be true only after the farmer approves saving."}},"required":["farmId","recoveryPlan","confirmed"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"get_farm_summary","kind":"answer","impl":"imperative","description":"Read a structured summary for a farm owned by the signed-in farmer, including crop, alerts, analyses, and saved plans. Use before planning with farm-specific context.","title":"Get farm summary","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"farmId":{"type":"string","description":"Farm ID owned by the signed-in farmer."}},"required":["farmId"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"}],"category":"Productivity & Business","favicon":"/favicons/agrivision.expo.app.png","apiSurface":"spec","toolCount":8}}