Skip to main content
Glama

Drone spraying cost for a field

estimate_drone_spraying_cost
Read-onlyIdempotent

Cost of drone crop spraying for the buyer's field: every published per-acre, per-hectare, per-mu (China) and per-10-are (Japan) drone spraying rate in the dataset x area x passes, with the best-matching rate for the country (national, recent first), the same-country span, flags taken from the source (chemicals extra, minimum area, starting price, older than 12 months) and every rate's source_url and as_of. Same maths as whirrwork.com/tools/drone-spraying-cost/. Only unit conversion (1 ha = 2.4710538 acres = 15 mu = 10 x 10 a); currencies are NEVER converted. Not a quote and not a Whirrwork estimate: say so. If country_has_rates is false, say there is no published rate for that country rather than borrowing one. Examples: {"area":100,"unit":"acre","country":"US"}; {"area":40,"unit":"ha","passes":3,"country":"BR"}; {"area":250,"unit":"ha","country":"CN"}.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "estimate_drone_spraying_cost"
  }
}

Input Schema

NameRequiredDescriptionDefault
areaNoField area in the chosen unit
unitNoArea unit (default: the unit of the best-matching rate)
passesNoNumber of spray passes (default 1)
countryNoBuyer country, ISO 3166-1 alpha-2
currencyNoCurrency of own_rate (ISO 4217)
languageNoLanguage for use-case text (machine-translated; English is authoritative). Default en.
own_rateNoA rate the buyer was quoted, per chosen unit, to compare
rate_indexNoUse this published rate (index from rates[].index) as the headline instead of the automatic pick

Output Schema

NameRequiredDescriptionDefault
jobNo
urlYes
areaNo
toolYes
unitNo
inputNo
labelNo
ratesYes
methodNo
passesNo
formulaYes
versionNo
languageNo
selectedNoBest-matching published rate for the country (null when none applies)
your_rateNo
hectare_in_acresNo
country_has_ratesNo
same_country_spanNo
countries_with_ratesNo
hourly_rates_not_convertedNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.4/5.0
Behavior5/5

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

Goes well past the read-only/idempotent annotations by disclosing the rate-selection logic (national, most-recent-first, same-country span), the flag set returned (chemicals extra, minimum area, starting price, older than 12 months), the strict no-currency-conversion policy, and the unit-conversion constants. It also names the external calculator it mirrors, so the agent knows the arithmetic is deterministic.

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

Conciseness5/5

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

Purpose is front-loaded in the first clause, followed by the computation, the caveats, and three worked examples. Dense but no sentence is filler — each clause carries either selection logic, an output flag, or a required disclaimer.

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?

An output schema exists, so return values need no explanation, and the description still calls out the key output flag country_has_rates and its correct handling. The remaining gap is the comparison path (own_rate/rate_index/currency), which is left entirely to the schema.

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

Parameters3/5

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

Schema description coverage is 100%, so all eight parameters are already documented in the schema. The description reinforces the '$area x passes' semantics and the allowed unit conversions, but says nothing about own_rate, rate_index, currency or language, so it adds little beyond the structured fields.

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?

Opens with a specific verb+resource ('Cost of drone crop spraying for the buyer's field') and scopes it to drone spraying in the dataset, which cleanly separates it from the generic estimate_cost and from estimate_drone_show_cost. An agent can select it 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 Guidelines4/5

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

Gives explicit edge-case handling: if country_has_rates is false, report no published rate rather than borrowing one, and state it is 'not a quote and not a Whirrwork estimate'. It stops short of naming sibling alternatives (estimate_cost, compare_providers) or stating when this tool is the wrong choice.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources