Tool tree
gradeNot graded
analyze_cropAction
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.
View tool JSON
{
"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.",
"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"
]
}
}get_weatherAnswer
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.
View tool JSON
{
"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.",
"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"
]
}
}find_treatmentAnswer
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.
View tool JSON
{
"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.",
"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"
]
}
}calculate_treatment_costAction
Calculate estimated treatment cost for a farm size using AgriVision pricing anchors. Use a treatment returned by find_treatment for the most reliable estimate.
View tool JSON
{
"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.",
"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"
]
}
}create_recovery_planAction
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.
View tool JSON
{
"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.",
"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"
]
}
}optimize_recovery_planAction
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.
View tool JSON
{
"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.",
"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"
]
}
}save_recovery_planAction
Save a finalized recovery plan to the signed-in farmer account after explicit human approval. This changes persistent app state and validates farm ownership.
View tool JSON
{
"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.",
"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"
]
}
}get_farm_summaryAnswer
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.
View tool JSON
{
"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.",
"inputSchema": {
"type": "object",
"properties": {
"farmId": {
"type": "string",
"description": "Farm ID owned by the signed-in farmer."
}
},
"required": [
"farmId"
]
}
}