MCP server for Kenya precision agriculture — crop calendar, fertilizer guide, pest/disease management, market timing, KALRO varieties, and input cost calculator. DEMO data only.
All 6 tools have basic descriptions and visible input schemas with type definitions. However, descriptions are generic and lack LLM-optimized guidance on WHEN to use each tool or HOW to interpret results. Parameter descriptions are minimal (e.g., 'Crop name' without examples or constraints). No output schemas documented. No error handling guidance. Tools lack verb-noun naming convention (crop_calendar, fertilizer_guide are noun-based). No tool annotations (readOnlyHint, etc.). Schemas present but sparse, missing enums for constrained inputs like crop names and regions.
Kenya crop planting and harvesting calendar by region. DEMO.
Fertilizer recommendations by Kenya crop and soil type. DEMO.
Kenya farm input cost calculator and comparison. DEMO.
KALRO improved crop variety recommendations for Kenya. DEMO.
Best timing to sell Kenya produce based on price cycles. DEMO.
Kenya crop pest and disease management guide. DEMO.
Tool names lack action verbs. All 6 tools use noun-based names (crop_calendar, fertilizer_guide, pest_disease_alert, market_timing_guide, kalro_varieties, input_cost_calculator) instead of verb_noun pattern (get_crop_calendar, get_fertilizer_guide, etc.). LLMs infer intent from verb-first names; noun-first names are ambiguous.
Parameter descriptions are minimal and lack constraints. E.g., 'Crop name (e.g., maize, beans, tea, coffee, potato, tomato, sukuma_wiki)' includes examples but no enum constraint. LLMs treat examples as the only valid options and may hallucinate unlisted crops. No format, range, or validation guidance.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 45 | 2026-07-28+ | v2 |
No output schemas documented. Tool descriptions do not specify what fields are returned or their types. LLMs cannot plan downstream calls or extract data reliably. E.g., crop_calendar returns a dict with 'source', 'crop', 'region', 'plant', 'harvest', 'days_to_maturity', 'long_rains', 'short_rains', 'kalro', but this is not declared in the tool definition.
Descriptions are generic and lack LLM-optimized guidance. All 6 tools end with 'DEMO.' and lack context on WHEN to use each tool, what problem it solves, or how to interpret results. Descriptions are 40-60 chars; baseline for A+ tools is 50-200 chars with actionable context.
No error handling or recovery guidance. Tools return hardcoded demo data or generic fallbacks (e.g., 'Crop not in sample dataset', 'Consult county extension officer') without actionable next steps. LLMs cannot distinguish between missing data, invalid input, and service errors.