update_farm_note
Update a Farm Note content and/or date. confirm:true.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| date | No | ||
| farmId | Yes | ||
| noteId | Yes | ||
| confirm | No | ||
| content | No |
Update a Farm Note content and/or date. confirm:true.
| Name | Required | Description | Default |
|---|---|---|---|
| date | No | ||
| farmId | Yes | ||
| noteId | Yes | ||
| confirm | No | ||
| content | No |
Changes observed during successful MCP inspections.
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the safety profile (readOnlyHint=false, destructiveHint=false, idempotentHint=false), so the description's main added value is the 'confirm:true' requirement — a real behavioral detail not present in annotations. However, it does not explain what confirm does, what happens if omitted, or why the operation is non-idempotent, leaving the hint under-explained.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Very short and front-loaded, which is good, but the dangling 'confirm:true.' fragment is cryptic and reads like a leftover note rather than a clear instruction, costing clarity for the sake of brevity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with no annotations contradiction, no output schema, and 0% schema coverage, the definition should carry far more weight. It omits parameter formats, the meaning of confirm, and any indication of what a successful update returns or changes.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across 5 parameters, so the description must compensate. It names content, date, and gestures at confirm, but adds no format, semantics, or meaning beyond the parameter names, and says nothing about the required farmId/noteId scope.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Update') and resource ('Farm Note') plus the updatable fields (content and/or date), which is clear enough to distinguish it from get_farm_note, list_farm_notes, and delete_farm_note. It does not explicitly name any sibling or scope, but the CRUD role is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use guidance, no prerequisites, and no pointer to alternatives like create_farm_note or get_farm_note. The only usage signal is the cryptic 'confirm:true' fragment, which hints at a confirmation flag but never explains when or why it is needed.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.