Skip to main content
Glama
gabrielmahia

kilimo-mcp

by gabrielmahia

Server Quality Checklist

58%
Profile completionA complete profile improves this server's visibility in search results.
  • Latest release: v0.1.3

  • Disambiguation5/5

    Each tool targets a distinct agricultural domain: planting schedule, fertilizer, pests, market timing, varieties, and input costs. No overlap in purpose, making tool selection unambiguous.

    Naming Consistency5/5

    All tool names use a consistent lowercase snake_case pattern with noun-noun combinations (e.g., crop_calendar, fertilizer_guide). The naming is uniform and descriptive, making it easy to predict tool functions.

    Tool Count5/5

    Six tools is a well-scoped set for an agricultural advisory server, covering key aspects without being overwhelming. Each tool has a clear purpose, and the count is within the ideal range.

    Completeness4/5

    The tools cover the core planting-to-selling lifecycle: planting calendar, fertilizer, pest/disease management, market timing, variety selection, and cost calculation. Minor gaps exist (e.g., weather or irrigation guidance), but the surface is largely complete for its stated purpose.

  • Average 2.7/5 across 6 of 6 tools scored. Lowest: 2.1/5.

    See the Tool Scores section below for per-tool breakdowns.

    • No community issues in the last 6 months
    • 33 commits in the last 12 weeks
    • Last stable release on
    • No critical vulnerability alerts
    • No high-severity vulnerability alerts
    • No code scanning findings
    • CI is passing
  • This repository is licensed under MIT License.

  • This repository includes a README.md file.

  • No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.

    Tip: use the "Try in Browser" feature on the server page to seed initial usage.

  • Add a glama.json file to provide metadata about your server.

  • If you are the author, simply .

    If the server belongs to an organization, first add glama.json to the root of your repository:

    {
      "$schema": "https://glama.ai/mcp/schemas/server.json",
      "maintainers": [
        "your-github-username"
      ]
    }

    Then . Browse examples.

  • Add related servers to improve discoverability.

How to sync the server with GitHub?

Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.

To manually sync the server, click the "Sync Server" button in the MCP server admin interface.

How is the quality score calculated?

The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).

Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.

Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).

Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.

Tool Scores

  • Behavior2/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations, the description carries the burden of disclosing behavior. 'DEMO' hints at a non-production or sample nature, but the description does not explain what the tool actually returns, whether it is read-only, or any side effects. The lack of behavioral detail beyond the 'DEMO' flag leaves significant uncertainty.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness2/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is extremely short, but this brevity is under-specification rather than efficiency. The sentence 'Kenya crop pest and disease management guide. DEMO.' is more like a title than a functional description, providing almost no actionable information. It does not earn its place given the tool's complexity.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Although an output schema exists (which reduces the need to explain return values), the description still lacks essential context. With two parameters, no annotations, and sibling tools that are similarly vague, the description does not provide enough information to select this tool over others or to understand expected inputs and behavior.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters1/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    The schema has 0% description coverage and the description does not mention the crop or symptom parameters. The required 'crop' parameter and optional 'symptom' are not given any semantic meaning, allowed values, or examples. The description adds negligible value over the raw schema.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose3/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description identifies the topic area (Kenya crop pest and disease management) but lacks an explicit action verb or outcome. It is not a tautology, but does not clearly state whether the tool identifies pests, recommends treatments, or provides general guidance. This makes the purpose somewhat vague, especially compared to sibling tools that also appear to be guides.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    No guidance is provided on when to use this tool versus alternatives such as fertilizer_guide or crop_calendar. The description does not mention intended scenarios, prerequisites, or exclusions. A user would have to infer usage solely from the tool name and schema.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior2/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations, the description carries the full burden of behavioral disclosure. It only mentions 'DEMO', which signals a demo environment, but does not state whether the operation is read-only, what the output format is, or any limitations.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is a single sentence, very brief and front-loaded. The phrase 'KALRO improved crop variety recommendations for Kenya' is informative, and the trailing 'DEMO' adds minor context. It is concise but not over-verbose.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    For a tool with two parameters and an output schema, the description is too sparse. It doesn't explain how parameters influence the recommendation output, nor does it provide enough context for an agent to know when to invoke it among the sibling tools. The output schema exists but the description adds little value.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters1/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    The input schema has two parameters with 0% description coverage. The description does not explain what 'crop' or 'condition' mean, how they relate to variety recommendations, or provide any examples. It completely fails to compensate for the schema's lack of descriptions.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose4/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly identifies the tool as providing KALRO improved crop variety recommendations for Kenya. This distinguishes it from sibling tools like crop_calendar and fertilizer_guide. However, it lacks an explicit action verb (e.g., 'get', 'list'), so it's slightly less than a 5.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    The description provides no guidance on when to use this tool versus the sibling tools. It implies use for variety recommendations but does not specify context, prerequisites, or exclusions.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior2/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations, the description must carry the full burden of behavioral disclosure. It only adds the word 'DEMO', which vaguely suggests a non-production version, but fails to disclose data sources, limitations, or any operational side effects. This is insufficient for an agent to understand the tool's behavior.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is a single, concise sentence that expresses the core purpose without waste. However, the abrupt 'DEMO' inclusion and lack of detail make it less effective as a structured, informative description, dropping it slightly from a perfect score.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    While the tool has an output schema that covers return values, the description still lacks context about parameter usage, data sources, and the significance of 'DEMO'. It reads like a placeholder rather than a complete guide for an agent, especially compared to more detailed sibling descriptions.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters1/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema description coverage is 0%, so the description must compensate by explaining parameters. However, it does not mention 'commodity' or 'county' at all, leaving the agent without any guidance on what values to supply or how they affect the timing advice.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose4/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly states the tool's function: providing optimal selling timing for Kenya produce based on price cycles. This differentiates it from sibling tools like crop_calendar and fertilizer_guide, though it lacks an explicit verb (e.g., 'provides' or 'calculates').

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    No guidance is given on when to use this tool versus alternatives. The description does not mention scenarios, exclusions, or comparisons with sibling tools, leaving the agent to infer appropriate usage.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior2/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations, the description must disclose behavioral traits. It only adds 'DEMO' as a behavioral caveat, but does not describe what data is returned, how invalid crops are handled, or any limitations. The transparency burden is largely unmet.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is a single sentence with the 'DEMO' marker, very efficient and front-loaded. It uses no unnecessary words, though the brevity sacrifices detail. For its length, it is concise and structurally clear.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Despite having an output schema, the description lacks contextual completeness. It does not specify typical use cases, input constraints, or behavioral expectations. With two parameters and no annotations, more context is needed to make the tool usable. The description is minimal and leaves the agent to guess at details.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters2/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema description coverage is 0%, so the description should compensate for parameter meaning. It mentions 'by region' which maps to the region parameter, but fails to explain the required 'crop' parameter or provide allowed values/examples. The description adds minimal value beyond the schema itself.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly states the tool provides a Kenya crop planting and harvesting calendar by region, which distinguishes it from sibling tools like fertilizer_guide or pest_disease_alert. Although no explicit verb is used, the resource and scope are specific and unambiguous.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    The description gives no guidance on when to use this tool versus alternatives. There is no mention of suitable scenarios, exclusions, or why it should be chosen over fertilizer_guide, market_timing_guide, etc. The purpose implies use for calendar data, but no explicit direction is provided.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior2/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations, the description carries full responsibility for disclosing behavior. It states the tool calculates and compares costs, but does not clarify whether it is a read-only operation, what inputs are needed, or any limitations of the DEMO version.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is very short and front-loaded with the primary purpose, but the trailing 'DEMO' adds unnecessary noise without explanation. It is concise but lacks detail.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    The tool is a simple calculator with two parameters and an output schema, yet the description omits any operational context, such as how to interpret results, what crops are supported, or how acreage affects the calculation. This is inadequate for an agent to use it correctly without additional inference.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters2/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    The description adds minimal meaning: it indicates the domain (Kenya farm inputs) but does not elaborate on the 'crop' or 'acreage' parameters. Since schema description coverage is 0%, this is insufficient for an agent to know what values to provide.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly identifies the tool as a cost calculator and comparison for Kenya farm inputs, using a specific verb and resource that distinguishes it from sibling tools focused on calendars, guides, and alerts.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    No guidance is provided on when to use this tool versus the siblings. The description does not mention alternatives or exclusion criteria, leaving the agent to infer usage from the name alone.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior2/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    No annotations are provided, so the description carries the burden. It only discloses that it is a 'DEMO', which hints at limited functionality, but offers no information about read-only behavior, data sources, or any side effects. This minimal disclosure leaves many behavioral aspects unknown.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is a single concise phrase with no wasted words. It is front-loaded and easy to skim. However, it is so brief that it sacrifices useful detail, though this is more a completeness concern than a conciseness flaw.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness3/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    The tool is simple with only 2 parameters and an output schema, which mitigates the need for extensive return-value documentation. Still, the description gives only a high-level purpose and does not explain how to use the parameters or any limitations beyond 'DEMO'. It is minimally sufficient but leaves gaps.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters2/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    The schema has 0% description coverage, so the description must compensate. It mentions 'crop' and 'soil type', matching the two parameters, but provides no details about accepted values, defaults, or the meaning of the 'medium' default for soil_type. This is inadequate for guiding an agent on what to pass.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose4/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly states the tool's function: providing fertilizer recommendations based on Kenya crop and soil type. It distinguishes itself from siblings like crop_calendar or input_cost_calculator by focusing on fertilizer recommendations. However, it lacks an explicit verb like 'provides' or 'recommends', making it slightly less direct.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines3/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    Usage is implied: if you need fertilizer recommendations for Kenyan crops, this is the tool. There is no explicit guidance on when not to use it or alternatives, but the sibling tools cover different areas (pests, market timing, costs), so the differentiation is clear enough.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

GitHub Badge

Glama performs regular codebase and documentation scans to:

  • Confirm that the MCP server is working as expected.
  • Confirm that there are no obvious security issues.
  • Evaluate tool definition quality.

Our badge communicates server capabilities, safety, and installation instructions.

Card Badge

kilimo-mcp MCP server

Copy to your README.md:

Score Badge

kilimo-mcp MCP server

Copy to your README.md:

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/gabrielmahia/kilimo-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server