Skip to main content
Glama

usda_nass_get_crop_condition

Read-onlyIdempotent

Retrieve weekly USDA NASS crop condition percentages for a commodity and year, optionally filtered by state or condition category.

Instructions

Weekly crop condition: the percentage of a crop rated very poor through excellent.

One row per week and category, from the NASS Crop Progress survey (statisticcat_desc CONDITION, freq_desc WEEKLY), sorted by week. unit_desc names the category and value is the percentage.

Args: commodity: Upstream commodity_desc, e.g. "CORN", "SOYBEANS", "WINTER WHEAT". year: Crop year, e.g. 2024. state: Two-letter state code for the state series; None returns the national US TOTAL series. category: One of ConditionCategory.PCT_VERY_POOR, PCT_POOR, PCT_FAIR, PCT_GOOD, PCT_EXCELLENT; None returns all five.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "commodity": "<commodity>",
      "year": "<year>"
    },
    "name": "usda_nass_get_crop_condition"
  }
}

Input Schema

NameRequiredDescriptionDefault
yearYes
stateNo
categoryNo
commodityYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false, and openWorldHint, so safety is covered. The description adds meaningful behavioral detail beyond that: one row per week and category, results sorted by week, unit_desc carries the category and value the percentage. It does not state the time span of weeks returned or how missing state series are handled, which keeps it below a 5.

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 lead sentence is front-loaded and the return-shape sentences come before the Args block, so an agent can triage quickly. The Args block is well-formatted but the closing lines about unit_desc and category restate information already established in the opening paragraph, adding some redundancy.

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

Completeness4/5

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

With no output schema, the description does the right work by describing row granularity, ordering, and which fields carry the category and percentage. For a four-parameter read tool that is largely sufficient, though the enum name/value mismatch and the absence of any note on available year ranges or partial state coverage leave small gaps.

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

Parameters5/5

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

Schema description coverage is 0%, so the description carries the full burden and does so for all four parameters: commodity with concrete examples (CORN, SOYBEANS, WINTER WHEAT), year, state as a two-letter code with the None-means-US-TOTAL default, and category with enumeration and None-means-all-five behavior. The one blemish is that category members are cited as PCT_VERY_POOR while the schema enum values use spaces, which could mislead a caller.

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 opens with a precise statement of what is returned: weekly percentages of a crop rated very poor through excellent, sourced from the NASS Crop Progress survey with the exact filters (statisticcat_desc CONDITION, freq_desc WEEKLY). This is a specific verb+resource statement that lets an agent separate it from production, acreage, or progress siblings without opening the schema.

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 rather than prescribed: the agent can infer this tool is for condition ratings, and the argument docs explain the None-default behaviors for state and category. However, there is no explicit when-to-use versus when-not-to-use guidance and no mention of the sibling crop-progress or production tools, so the agent must infer routing from semantics alone.

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