Skip to main content
Glama
vehemont

Stardew Save MCP

by vehemont

sdv-mcp

This is a read-only MCP server that reads a Stardew Valley save and answers questions about it, and is pulls your most recent save data per-call. I recently got into the game with my wife and noticed I was spending more time reading the Stardew Wiki rather than playing, so I made this to answer the questions I had. It includes 58 tools, and also allows Stardew Wiki search through MediaWiki API. I made this with mainly vanilla in mind, so YMMV with mods.

CAUTION

This MCP is read-only and should not cause any issues, but safety first is always the best approach! Use a save copy first, not an original. Then once you feel comfortable, you can point it at your real save to receive the save-per-night updates.

Example questions that utilize the state of your save, tailoring responses to you depending on the season, day, location, and what you already have:

"What is my best money maker that I should be utilizing?"

"What should I focus on next?"

"Can anything be completed with what I have?"

"Best way to get coal?"

"Give me a priority step-by-step list on completing my fishing bundle."

"Where is the chest that has the pearl I need to gift to Clint?"

"How many sprinklers will I need to water all my Cauliflower seeds I have?"

Requirements

  • Python 3.10 or newer.

  • A Stardew Valley save file. The game stores saves at:

    • Windows: %APPDATA%\StardewValley\Saves\<FarmName>_<id>\<FarmName>_<id>

    • macOS/Linux: ~/.config/StardewValley/Saves/<FarmName>_<id>/<FarmName>_<id>

    Point the server at that save file or its folder (--save / --save-dir, or the SDV_SAVE_PATH / SDV_SAVE_DIR env var). The server never searches for saves on its own.

  • One Python dependency — the mcp SDK (mcp>=1.2.0,<2). Everything else uses the Python standard library (the wiki client is stdlib urllib), so there is nothing else to install.

  • uv — only needed for the recommended uvx install method below (it provides the uvx command). Install it from docs.astral.sh/uv. Not required if you instead pip install the package or run from this folder.

Install it with either:

  • uvx sdv-mcp (recommended — runs the published package directly, no manual install; requires uv), or

  • pip install sdv-mcp (the published package), or

  • pip install -r requirements.txt then python sdv_mcp_server.py (to run from this folder).

Keep the four modules in the same folder — the server imports the others from its own dir.

Related MCP server: hayday-mcp-server

Install into a client

Needs uv, pass a save folder/directory with --save-dir or just --save with the actual save file, which is just the same name as the folder/directory:

--save-dir example on Windows with Claude Desktop and proper JSON escapes:

{
  "mcpServers": {
    "sdv-mcp": {
      "command": "uvx",
      "args": [
        "sdv-mcp", // use "sdv-mcp@latest" to always pull the latest version
        "--save-dir", "C:\\Users\\you\\AppData\\Roaming\\StardewValley\\Saves\\FarmName_437005740"
      ]
    }
  }
}

uvx pulls the package from PyPI. Pin a version with sdv-mcp==0.1.0, or install the latest dev build straight from git by adding "--from", "git+https://github.com/vehemont/sdv-mcp" before "sdv-mcp".

Alternative: run a local checkout

{
  "mcpServers": {
    "sdv-mcp": {
      "command": "python",
      "args": [
        "/path/to/sdv-mcp/sdv_mcp_server.py",
        "--save-dir", "C:/Users/you/AppData/Roaming/StardewValley/Saves/FarmName_123456"
      ]
    }
  }
}

macOS/Linux use python3; pip install -r requirements.txt first.

Runs on stdio. You must point --save/--save-dir (or the env var) at the save you want; the server reads only that save and never scans your machine for others.

Disabling tools

By default, all tools are enabled. Any tool you consider cheating/unfair can be turned off so the model never sees it. Two knobs, both settable as a CLI arg (wins) or an env var:

  • Denylist--disable-tools a,b,c or SDV_DISABLE_TOOLS=a,b,c. Serves everything except those.

  • Allowlist--enable-tools a,b,c or SDV_ENABLE_TOOLS=a,b,c. Serves only those (disable is applied after).

{
  "mcpServers": {
    "sdv-mcp": {
      "command": "python",
      "args": [
        "/path/to/sdv-mcp/sdv_mcp_server.py",
        "--save-dir", "C:/Users/you/AppData/Roaming/StardewValley/Saves/FarmName_123456",
        "--disable-tools", "find_item,missing_museum,perfection"
      ]
    }
  }
}

Tools (46)

Save state

Tool

What

save_status

Save freshness: file path, last-modified time, age, in-game date. Every save-backed result also carries a _save stamp (in-game date + file mtime/size) so the model can tell if earlier data is stale — compare its _save.mtime_ns to a fresh save_status() (equal = current, different = re-run the tool)

overview

Date, players, shared money, lifetime earnings, deepest mine, version

players

Per-player levels, XP, XP-to-next, professions, spouse, backpack, house ({'players': [...]})

community_center

Rooms done/left, incomplete bundles + exact items needed, Vault status

museum

Donations / 95 + next milestone with its actual reward (60 = Rusty Key)

monster_goals

Guild eradication goals: kills vs target + reward ({'goals': [...]})

friendships

Villager hearts/points + spouse, per player

gift_log

Gifting planner: per-villager gifts today/this week (2/wk cap), status + full gift history (zero-count entries dropped)

player_stats

In-game Stats tab: all counters (steps, shipped, fish caught, geodes, quests...) + per-species monster kills

player_tools

Each player's tools + upgrade tier

wallet

Keys/special items (Rusty Key, Skull Key, Club Card, ...). 1.5 + 1.6 aware (reads mail flags)

unlocks

Which gated locations/vendors are reachable (Desert + Desert Trader, Sewers/Krobus, Skull Cavern, Casino, Quarry, Greenhouse, Minecarts, Movie Theater, Guild, Ginger Island) + how to unlock the rest

feed

Animals, silo hay, fiber, days of feed covered (+ fiber-as-grass-starters)

full_report

All of the above in one shot

Inventory + location

Tool

What

inventory

Backpacks + chests. full=True = all items; by_container=True = per-chest

processing

Held crops grouped fruit/veg/special by the save's own item category

machines

Inventory of placed machines (Furnace, Keg, Cask, Seed Maker, Kiln, Tapper, ...) by type with counts + state (ready/working/idle) + a by-location breakdown

buildings

Farm buildings + per-player farmhouse upgrades: barn/coop tiers, animal capacity vs occupancy, silo/stable/mill/greenhouse/obelisks, cellar & kitchen unlock status

chests

Every container: type (Chest/Stone/Big/special), map + tile, color, contents

find_item

Where is X? Searches backpacks, chests, machine outputs. Map + tile + color

net_worth

Gold + sellable value of everything held (from each item's own price)

Planning + completion

Tool

What

quests

Per-player quest journal + special-orders board (objectives + progress); item quests show requested item, on-hand count, and completable_now. research=True attaches a wiki how_to_obtain summary + infobox for each requested item

can_complete_now

CC bundles you could finish from what's in your chests right now

bundle_sourcing

Incomplete bundles + per missing-item wiki how-to-obtain + unlock-aware locked_source_hints (flags sources behind gated locations)

missing_museum

Undonated minerals + artifacts, with where they drop

collections

Collection tabs (multiplayer-aware, unioned across all farmers): fish caught (count + personal-record size), minerals/artifacts found — each checked against the SHARED farm museum (what the farm still needs). Fish are never donatable; only artifacts + minerals are

cooking

Cooking recipes known-but-not-made, with ingredients + on-hand count (cookable now). Kitchen access is farm-wide — anyone can cook if ANY house is upgraded (or they hold a Cookout Kit)

missing_recipes

Cooking/crafting recipes learned-but-not-made (+ how many not yet learned), per player

shipping_tracker

Items shipped by name + qty; distinct count vs the 154 Full-Shipment target

golden_walnuts

Ginger Island walnut progress: found vs 130, unspent, island-unlock + repeatable sources

secret_notes

Secret Notes found (1-25) with per-note found/missing flags

tailoring

Every item you've tailored at the sewing machine / Emily's (resolved to names)

raccoon

The 1.6 Raccoon storyline: requests completed, stage, times fed, current-request season

perfection

Real weighted Perfection %: 11 categories, each with have/total + earned %. 1.6-accurate (Farmer Level = player.Level/25) + per-player co-op breakdown

daily_briefing

Morning digest: luck, today/tomorrow weather, day-of-week + traveling cart (Fri/Sun), birthdays, festivals, open quests/special orders with due/days_left, machines/crops ready, pets due

gift_helper

Birthdays (from save) + your hearts + loved gifts, flags what you already hold

ready_to_collect

Machines with product ready (name, product, location + tile) + crops ready to harvest

fish_available

Fish catchable now (season/weather/time), only_uncaught filters

mods

Detect mods; list what couldn't map to vanilla (modded ids, unmapped bundle/museum)

Calculators (save + verified game formulas)

Tool

What

skill_xp_forecast

Actions to hit a target skill level (farming XP formula)

fishing_xp_forecast

Catches to a target fishing level (difficulty/perfect/treasure/legendary)

processing_planner

Kegs/jars to clear the crop backlog in N days + est. gross gold

processing_value

Raw vs wine/juice vs jelly/pickle for a crop (Tiller/Artisan/quality aware)

crop_planner

Crops that mature in the window + profit/tile (quality_weighted optional)

crop_quality_odds

Gold/silver/normal/iridium % from farming level + fertilizer + food buff

sprinkler_plan

Sprinklers + materials for N tiles, and whether your bars can build them

build_planner

Total materials to craft a set of machines (e.g. '20 Keg, 5 Tapper'), with bars rolled down to ore + coal + furnace-time and resin/syrup to tapper-nights, vs your inventory

fish_pond_forecast

Days to fill a pond to capacity + roe notes

friendship_forecast

Loved gifts + weeks to a target heart level

animal_product_quality

Iridium/gold/silver produce odds per animal (friendship + mood + prof)

animal_product_value

Raw (Rancher) vs processed (Artisan) value of milk/egg/wool

list_buffs

Food buffs that raise a skill level (Farmer's Lunch +3, Trout Soup +1)

Wiki verification

Tool

What

wiki_search

Search the Stardew Valley Wiki (titles + snippets)

wiki_page

A page (or one section) as clean text — to verify facts / pull context. Rough input (puffer fish, sturgeon) is auto-resolved to the right page

wiki_infobox

A page's infobox as structured fields (price/season/location). Auto-resolves rough input

wiki_category

Every page in a wiki category (e.g. Spring fish, Summer crops) — answer "all X in season Y" exhaustively. Case-insensitive (Summer Crops works) with near-match suggestions

how_to_obtain

Every way to get an item (drops, shops, trades, gifting) — the wiki lead summary + infobox source. Plan how to get a quest/bundle item. Auto-resolves rough input (bat wing, large goat milk)

villager_schedule

A villager's wiki schedule + your save's date/weather/hearts

Files

  • sdv_parser.py — the read-only save parser (ElementTree)

  • sdv_wiki.py — MediaWiki Action API client (api.php; the wiki's rest.php returns empty, so Action API it is), cached + rate-limited

  • sdv_calc.py — the calculators + reference tables

  • sdv_mcp_server.py — the 58 tools

Known limits

  • Vanilla + whatever the wiki documents only. Modded content lives on separate wikis.

  • missing_recipes lists recipes you've learned but not made; recipes not yet learned show only as a count (they aren't in the save). shipping_tracker lists what you've shipped by name — a by-name "still to ship" list isn't modelled (the save only stores what shipped), so its remaining count is approximate vs the 154-item set.

  • quests: completable_now covers item delivery/harvest/resource quests (you still hand the item in); monster/fishing/socialize quests report progress counters instead. Special-order objectives resolve their item (e.g. "Juice") and show due/days_left. days_left is omitted for untimed quests (billboard/fetch quests have no timer).

  • Item names come from a bundled catalog (sdv_items.py) generated from the game's unpacked assets, plus a fallback that resolves anything present in your save. Regenerate for a new game version with python scripts/gen_items.py.

  • Wiki tools need outbound network. The save tools don't.

Available Tools

49 tools
animal_product_qualityA

Iridium/gold/silver/normal produce odds per animal (friendship + mood + Coopmaster/Shepherd). Reads all save animals, or models one.

ParametersJSON Schema
NameRequiredDescriptionDefault
moodNoMood/happiness 0-255 for the hypothetical.
save_pathNoPath to a save file OR a save folder (e.g. .../Saves/Farm_123 or .../Saves/Farm_123/Farm_123). Leave empty to use the save configured at server startup (--save/--save-dir or SDV_SAVE_PATH/SDV_SAVE_DIR). The server never auto-discovers saves; one must be configured or passed explicitly.
friendshipNoModel one animal: friendship 0-1000. -1 = read save's animals.
animal_typeNoAnimal type label for the hypothetical.
profession_bonusNoApply +0.333 Coopmaster/Shepherd bonus for the hypothetical.

Output Schema

ParametersJSON Schema
NameRequiredDescription
noteNo
errorNo
from_No
resultNo
animalsNo
animal_typeNo

TDQS

A3.8/5.0
Behavior3/5

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

Describes core behavior: reads save animals or models a hypothetical. No annotations provided, so description carries full burden. Lacks detail on non-destructive nature, performance, or auth needs, but sufficient for a query tool.

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?

Single sentence that is concise and front-loaded with the result (Iridium/gold/silver/normal produce odds), making it immediately understandable.

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?

Given output schema exists, return values need not be explained. The description covers both modes (read vs model) and key inputs. Could mention the mathematical relationship but not necessary for completeness.

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 coverage is 100% with clear parameter descriptions. The description adds integration context by grouping parameters (friendship, mood, profession bonus) but does not add substantial new meaning beyond the schema.

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?

Clearly states it computes Iridium/gold/silver/normal produce odds per animal based on friendship, mood, and profession bonus. Distinguishes from sibling 'animal_product_value' which focuses on value, and from 'crop_quality_odds' which is for crops.

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?

Implies two modes: read all save animals (by default) or model one (by providing parameters). However, no explicit guidance on when to choose this over alternatives like 'animal_product_value' or when not to use.

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

animal_product_valueC

Raw (Rancher +20% + quality) vs processed (Artisan +40%) value of an animal product.

ParametersJSON Schema
NameRequiredDescriptionDefault
artisanNoApply Artisan +40% to the processed good: auto/true/false.auto
productYesRaw product, e.g. 'Milk', 'Large Milk', 'Egg', 'Wool'.
qualityNoStar quality for the raw-sale comparison.normal
rancherNoApply Rancher +20% to raw: auto/true/false.auto
save_pathNoPath to a save file OR a save folder (e.g. .../Saves/Farm_123 or .../Saves/Farm_123/Farm_123). Leave empty to use the save configured at server startup (--save/--save-dir or SDV_SAVE_PATH/SDV_SAVE_DIR). The server never auto-discovers saves; one must be configured or passed explicitly.

Output Schema

ParametersJSON Schema
NameRequiredDescription
bestNo
noteNo
errorNo
valuesNo
artisanNo
productNo
rancherNo
base_priceNo

TDQS

C2.7/5.0
Behavior2/5

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

No annotations are provided, so the description carries full burden. It mentions the comparison but does not disclose behavioral traits such as being read-only, required permissions, or any side effects. For a calculation tool, this is minimal.

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 conveys the core purpose. It is front-loaded and has no wasted words. However, it could be slightly improved by adding a brief usage hint.

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?

With 5 parameters and an output schema, the description is too abstract. It does not explain how parameters relate to each other or what the output represents. Despite the output schema, the description lacks completeness for a comparison tool.

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 100%, so baseline is 3. However, the description does not add any parameter-specific details beyond what the schema already provides. For example, it does not explain the meaning of 'auto' for artisan/rancher, leaving the agent to rely solely on schema 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 states the tool compares raw value (with Rancher and quality) vs processed value (with Artisan). It uses specific verbs and bonuses, making the purpose understandable. However, it does not distinguish itself from related siblings like 'animal_product_quality' or 'processing_value'.

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 like 'processing_value' or 'crop_planner'. The description lacks context for appropriate usage scenarios.

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

buildingsA

Farm buildings and farmhouse upgrades: what's built (barns, coops, silo, stable, mill, greenhouse, obelisks, etc.) with animal-house tier and total animal capacity vs current occupancy, plus each player's house upgrade level (kitchen at 1, cellar at 3). Use this to reason about what to build/upgrade next and whether there's room for more animals or which house perks (cooking, cellar aging) are unlocked.

ParametersJSON Schema
NameRequiredDescriptionDefault
save_pathNoPath to a save file OR a save folder (e.g. .../Saves/Farm_123 or .../Saves/Farm_123/Farm_123). Leave empty to use the save configured at server startup (--save/--save-dir or SDV_SAVE_PATH/SDV_SAVE_DIR). The server never auto-discovers saves; one must be configured or passed explicitly.

TDQS

A3.7/5.0
Behavior2/5

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

No annotations are provided, so the description must carry the full burden of behavioral disclosure. It does not mention any side effects, authentication needs, rate limits, or whether the tool is read-only. This is a significant gap for an otherwise helpful description.

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 concise, using two sentences to convey content and usage. It is front-loaded with the resource and purpose, though a more structured format (e.g., bullet points) could improve readability.

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?

Given that there is no output schema, the description adequately explains what the tool returns: buildings, upgrades, capacities, and house levels. It provides enough context for an agent to decide when to invoke it, though it could be slightly more detailed about the scope (e.g., all farm buildings).

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?

The input schema already provides a detailed description for the save_path parameter with 100% coverage. The tool description does not add any additional meaning or context for the parameter, so it meets the baseline but does not exceed it.

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's function: showing farm buildings, farmhouse upgrades, animal capacities, and house upgrade levels. It uses specific verbs and resources, distinguishing it from sibling tools like 'build_planner' which focus on planning rather than current state.

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?

The description explicitly says to use this tool for reasoning about what to build/upgrade next and checking animal capacity or house perks. While it doesn't mention when not to use it or provide alternatives, the context is clear and actionable.

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

build_plannerA

Total materials to craft a set of machines, with bars rolled down to ore + coal + furnace-time and tapper products (Oak Resin, Maple Syrup, Pine Tar) rolled down to tapper-nights, then compared against the save's inventory (still_needed). Answers 'what do I need to build 20 kegs + 5 tappers, and how much ore/coal/furnace time?'

ParametersJSON Schema
NameRequiredDescriptionDefault
specYesMachines to build, e.g. '20 Keg, 5 Tapper' or '20 kegs'.
tappersNoSpare tappers available, to estimate resin/syrup gathering time.
furnacesNoFurnaces available, to estimate parallel smelting time.
save_pathNoPath to a save file OR a save folder (e.g. .../Saves/Farm_123 or .../Saves/Farm_123/Farm_123). Leave empty to use the save configured at server startup (--save/--save-dir or SDV_SAVE_PATH/SDV_SAVE_DIR). The server never auto-discovers saves; one must be configured or passed explicitly.

TDQS

A4.3/5.0
Behavior4/5

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

With no annotations provided, the description fully discloses its behavior: it rolls down bars and tapper products, compares against save inventory, and outputs 'still_needed'. It explains the core calculations and what the answer covers, without omitting key traits.

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, info-dense sentence that front-loads the main purpose and efficiently conveys the roll-down logic and inventory comparison. It could be broken into two sentences for readability, but every clause earns its place with no wasted words.

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?

For a planner with 4 parameters and no output schema, the description adequately explains the output ('what do I need...') and the computational steps. It covers material breakdown, time estimates, and inventory comparison, meeting the needs of a complex planning tool.

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

Parameters4/5

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

The input schema already describes all parameters (100% coverage). The description adds value by explaining how parameters are used: 'spec' defines machines, 'tappers' and 'furnaces' estimate gathering/smelting time, and 'save_path' defaults. This goes beyond bare schema descriptions.

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 uses a specific verb ('Total materials to craft') and resource ('set of machines'), and clearly distinguishes from siblings by detailing the roll-down logic to ore/coal/furnace-time and tapper-nights, plus inventory comparison.

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?

The description implies when to use the tool: when you need material breakdowns for crafting machines, including ore and tapper products. It does not explicitly state when not to use or name alternatives, but the context of sibling tools like 'processing_planner' provides differentiation.

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

bundle_sourcingA

Incomplete Community Center bundles with, for each still-needed item, a wiki how-to-obtain summary AND reachability hints: if the summary references a gated location that isn't unlocked in this save (e.g. Desert, Ginger Island), it's flagged via locked_source_hints (a hint - the item may have an ungated source too). Includes the full unlocks snapshot.

ParametersJSON Schema
NameRequiredDescriptionDefault
researchNoFetch a wiki how_to_obtain summary for each missing bundle item. Needs network.
save_pathNoPath to a save file OR a save folder (e.g. .../Saves/Farm_123 or .../Saves/Farm_123/Farm_123). Leave empty to use the save configured at server startup (--save/--save-dir or SDV_SAVE_PATH/SDV_SAVE_DIR). The server never auto-discovers saves; one must be configured or passed explicitly.
research_limitNoMax distinct items to research (caps wiki calls).

TDQS

A4/5.0
Behavior4/5

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

Without annotations, the description carries the burden. It discloses that the tool fetches wiki summaries (network-dependent), provides locked_source_hints, and includes unlocks snapshot. It does not mention side effects but is accurate for a read operation.

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?

Two well-structured sentences with front-loaded purpose. Every sentence adds value without 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?

Although no output schema, the description describes the output format sufficiently: items with summaries, hints, and unlocks snapshot. It covers the key aspects for an AI agent to understand the tool's behavior.

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 coverage is 100%, so baseline is 3. The description adds minimal extra meaning beyond the schema, only briefly connecting research and research_limit to wiki summaries.

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 that the tool returns incomplete Community Center bundles with wiki summaries and reachability hints for each needed item, plus locked_source_hints for gated locations. This distinguishes it from siblings like community_center, how_to_obtain, and unlocks.

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?

The description does not explicitly state when to use this tool vs alternatives. It implies usage for checking needed items and gating, but lacks clear 'when to use' or 'when not to use' guidance.

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

can_complete_nowC

Incomplete CC bundles finishable from items currently held (presence-only).

ParametersJSON Schema
NameRequiredDescriptionDefault
save_pathNoPath to a save file OR a save folder (e.g. .../Saves/Farm_123 or .../Saves/Farm_123/Farm_123). Leave empty to use the save configured at server startup (--save/--save-dir or SDV_SAVE_PATH/SDV_SAVE_DIR). The server never auto-discovers saves; one must be configured or passed explicitly.

TDQS

C2.8/5.0
Behavior2/5

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

With no annotations, the description carries full burden. It mentions 'presence-only' but does not explain what that means (e.g., does it ignore quality? quantity?). No information about whether it is read-only or requires specific game state.

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

Conciseness3/5

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

The description is very short (one sentence, 7 words), which is concise but at the expense of completeness. It front-loads the core concept but omits necessary details.

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?

Without an output schema, the description must clarify the return value, but it does not. The phrase 'finishable from items currently held' is ambiguous—does it return a list of finished bundles, a boolean, or a count? The term 'presence-only' is unexplained.

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 the schema already explains the 'save_path' parameter adequately. The description adds no additional meaning to the parameter, meeting the baseline for high coverage.

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 identifies a specific resource ('incomplete CC bundles') and a specific check ('finishable from items currently held'), making the purpose reasonably clear despite the cryptic 'CC' abbreviation. It implicitly distinguishes from sibling tools like 'bundle_sourcing' by focusing on completion rather than sourcing.

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 alternatives (e.g., 'bundle_sourcing'), nor does it mention any prerequisites or limitations. The agent must infer context from similar tools.

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

chestsB

Every container with identity + location: type (Chest/Stone Chest/Big Chest/ special), map + tile (X,Y), color label, item count, and full contents.

ParametersJSON Schema
NameRequiredDescriptionDefault
save_pathNoPath to a save file OR a save folder (e.g. .../Saves/Farm_123 or .../Saves/Farm_123/Farm_123). Leave empty to use the save configured at server startup (--save/--save-dir or SDV_SAVE_PATH/SDV_SAVE_DIR). The server never auto-discovers saves; one must be configured or passed explicitly.

TDQS

B3.3/5.0
Behavior2/5

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

No annotations are provided, so the description must disclose behavioral traits. It describes what information is returned but does not mention whether it is a read-only operation, side effects, authorization needs, or performance implications. Minimal disclosure.

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?

The description is a single concise sentence that clearly and efficiently states the tool's purpose with no extraneous words.

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?

Despite 100% schema coverage for the single parameter, the description lacks details about the output structure, potential scope (all chests vs. specific), or behavior. It is adequate but could be more complete for a tool with no output 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?

The only parameter 'save_path' is fully described in the input schema (100% coverage), so the description does not add extra meaning. Baseline 3 is appropriate as the schema already documents the parameter adequately.

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 explicitly states the tool returns information about containers (chests) including type, location, color, item count, and full contents. It uses specific verbs and clearly identifies the resource, distinguishing it from sibling tools like 'inventory'.

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 on when to use this tool vs alternatives. It does not mention conditions, prerequisites, or when not to use it. The description only states what it does without context.

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

community_centerB

Community Center: rooms done/left, every incomplete bundle with exact items still required, and Vault payment status.

ParametersJSON Schema
NameRequiredDescriptionDefault
save_pathNoPath to a save file OR a save folder (e.g. .../Saves/Farm_123 or .../Saves/Farm_123/Farm_123). Leave empty to use the save configured at server startup (--save/--save-dir or SDV_SAVE_PATH/SDV_SAVE_DIR). The server never auto-discovers saves; one must be configured or passed explicitly.

TDQS

B3.3/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden. It only describes output content but does not disclose whether the tool is read-only, requires authentication, or has side effects. For a query tool, this is a minor gap.

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 conveys the key information without unnecessary words. However, it could be structured more clearly with bullet points or separated clauses for readability.

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?

Given one parameter with full schema coverage and no output schema, the description adequately explains what the tool returns. It covers the main aspects (rooms, bundles, vault) and is complete enough for an informational tool.

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?

The input schema provides a detailed description for the single parameter 'save_path', covering 100% of schema properties. The tool description adds no additional parameter information beyond what the schema already provides.

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 provides community center progress including rooms done/left, incomplete bundles with exact items, and vault payment status. It uses specific nouns but does not explicitly differentiate from sibling tools like 'bundle_sourcing' or 'can_complete_now'.

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?

The description implies usage for checking community center status, but no explicit guidance on when to use this tool versus alternatives like 'bundle_sourcing' or 'full_report'. No when-not-to-use or prerequisites are mentioned.

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

crop_plannerA

Which crops fully mature in the window and profit per tile. Tiller +10% auto-applied. Base prices unless quality_weighted.

ParametersJSON Schema
NameRequiredDescriptionDefault
topNoHow many crops to return.
budgetNoGold budget for the best-crop tile calc. 0 = skip.
seasonNo
days_leftNoDays remaining in the season. 0 = derive from save date.
save_pathNoPath to a save file OR a save folder (e.g. .../Saves/Farm_123 or .../Saves/Farm_123/Farm_123). Leave empty to use the save configured at server startup (--save/--save-dir or SDV_SAVE_PATH/SDV_SAVE_DIR). The server never auto-discovers saves; one must be configured or passed explicitly.
fertilizerNoFertilizer level for quality weighting: 0 none, 1 Basic, 2 Quality, 3 Deluxe.
quality_weightedNoWeight prices by expected crop quality (uses best farming level + fertilizer).

Output Schema

ParametersJSON Schema
NameRequiredDescription
noteNo
cropsNo
budgetNo
seasonNo
days_leftNo
note_emptyNo
tiller_appliedNo
best_crop_tiles_affordableNo

TDQS

A4/5.0
Behavior3/5

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

With no annotations provided, the description partially compensates by mentioning the Tiller +10% auto-application and the base prices default. However, it does not disclose whether the tool modifies any data, requires specific permissions, or is read-only. More behavioral context would be beneficial.

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?

The description is extremely concise, consisting of two short sentences that convey the core functionality without any redundant or extraneous information. It is well front-loaded.

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?

Given the 7 parameters, 0 required, high schema coverage (86%), and the presence of an output schema, the description is sufficiently complete. It explains the main goal and key behaviors, though additional details about the output format could be mentioned but are not necessary due to the output schema.

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

Parameters4/5

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

The description adds meaning beyond the input schema by clarifying that 'base prices' are used unless 'quality_weighted' is enabled, and that Tiller +10% is automatically applied. This enriches the parameter semantics, especially given the high schema coverage (86%).

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 it determines which crops fully mature within a given window and calculates profit per tile. It specifies the Tiller profession bonus auto-applied and the use of base prices unless quality_weighted is enabled. This clearly defines the tool's purpose and distinguishes it from other crop-related tools.

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?

The description implies the tool is used for crop planning but does not provide explicit guidance on when to use this tool over alternatives like 'crop_quality_odds' or 'sprinkler_plan'. It lacks when-not-to-use or exclusion criteria.

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

crop_quality_oddsC

Gold/silver/normal (and iridium with Deluxe) crop-quality percentages.

ParametersJSON Schema
NameRequiredDescriptionDefault
playerNoPlayer/farmhand name; empty = host player.
food_buffNoFarming levels from food (e.g. 3 = Farmer's Lunch); effective level caps at 14.
save_pathNoPath to a save file OR a save folder (e.g. .../Saves/Farm_123 or .../Saves/Farm_123/Farm_123). Leave empty to use the save configured at server startup (--save/--save-dir or SDV_SAVE_PATH/SDV_SAVE_DIR). The server never auto-discovers saves; one must be configured or passed explicitly.
fertilizerNo0 none, 1 Basic, 2 Quality, 3 Deluxe.
farming_levelNoFarming level 0-10; -1 = use save's level.

Output Schema

ParametersJSON Schema
NameRequiredDescription
noteNo
errorNo
gold_pctNo
food_buffNo
normal_pctNo
silver_pctNo
iridium_pctNo
fertilizer_levelNo
base_farming_levelNo
effective_farming_levelNo

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description bears full responsibility for behavioral disclosure. It does not mention any side effects, restrictions, or behavior beyond the basic output. For example, it doesn't state that it reads from a save file or requires specific parameters to function correctly.

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 one sentence, very concise. It gets to the point but lacks structure. Could be improved with a brief explanation of output or use case, but it is not 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?

Given 5 parameters and an output schema, the description is too minimal. It does not explain the output format, scale of percentages, or how factors like farming level or fertilizer affect results. The output schema likely provides structure, but the description should still contextualize the output for easy interpretation.

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 the baseline is 3. The description adds no additional meaning beyond what is in the schema. It does not explain parameter interactions or provide examples.

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 returns gold/silver/normal (and iridium with Deluxe) crop-quality percentages. It specifies the resource (crop-quality percentages) and implies a calculation. However, it does not differentiate from siblings like animal_product_quality or animal_product_value, which are distinct but similar in style.

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 on when to use this tool versus alternatives (e.g., other quality tools or general calculators). There is no mention of prerequisites, context, or scenarios where this tool is appropriate.

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

daily_briefingB

One-call morning digest from the save: date, daily luck, upcoming birthdays with the exact loved gift to give (from your inventory) or ideas to acquire + current hearts, open quests and active special orders with objectives/deadlines (the real tasks), festivals in the next 7 days, next_goals (closest progression wins: skills near a level/profession, nearest bundles, museum milestone and perfection categories), and the routine chores (machines, crops, animals to pet).

ParametersJSON Schema
NameRequiredDescriptionDefault
save_pathNoPath to a save file OR a save folder (e.g. .../Saves/Farm_123 or .../Saves/Farm_123/Farm_123). Leave empty to use the save configured at server startup (--save/--save-dir or SDV_SAVE_PATH/SDV_SAVE_DIR). The server never auto-discovers saves; one must be configured or passed explicitly.

TDQS

B3/5.0
Behavior2/5

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

No annotations provided. Description focuses on output content but does not disclose read-only nature, performance implications, or any side effects. It carries the full burden but fails to mention that it does not modify the save.

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?

Single run-on sentence with dense listing; lacks front-loading and structure. Could be broken into bullet points or paragraphs for readability.

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?

Lists all included digest items, which partially compensates for no output schema. However, missing format details, example output, or any constraints on data volume.

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?

Only one parameter with 100% schema coverage; schema already fully describes save_path. Description adds no additional meaning or constraints beyond what schema provides.

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?

Description clearly defines the tool as a one-call morning digest listing specific save state details (date, luck, birthdays, gifts, hearts, quests, orders, festivals, goals, chores). Verb 'digest' is specific and resource is the save, distinguishing it from other tools like full_report.

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 explicit guidance on when to use this tool vs alternatives like full_report or other summary tools. Description implies morning use but does not clarify contexts or exclusions.

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

feedC

Animal feed status: animals, silo hay, fiber, and days of feed covered.

ParametersJSON Schema
NameRequiredDescriptionDefault
save_pathNoPath to a save file OR a save folder (e.g. .../Saves/Farm_123 or .../Saves/Farm_123/Farm_123). Leave empty to use the save configured at server startup (--save/--save-dir or SDV_SAVE_PATH/SDV_SAVE_DIR). The server never auto-discovers saves; one must be configured or passed explicitly.

TDQS

C2.8/5.0
Behavior2/5

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

No annotations are provided, and the description does not explicitly state that the tool is read-only or non-destructive. The name 'feed' could imply action, but the description mitigates this somewhat by describing status.

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

Conciseness3/5

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

The description is very short (11 words), which is concise but lacks a verb and feels incomplete. It is not structured with sections or examples.

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?

With no output schema and no description of the return format, an agent may not know what to expect. The description lists components but not their structure or types.

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 coverage is 100% and the schema description for save_path is detailed. The tool description adds no parameter-specific information, so it meets the baseline but does not exceed it.

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 lists the items the tool provides (animals, silo hay, fiber, days of feed covered), but lacks an explicit verb like 'get' or 'retrieve'. It distinguishes itself from sibling tools by focusing on feed status.

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 on when to use this tool versus alternatives, and no conditions or prerequisites are mentioned. The agent must 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.

find_itemA

Locate an item across player backpacks, all chests, and machine outputs. Returns each place holding it with quantity and container location (map + tile + color) - answers 'where is my X?'.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesItem name to locate, e.g. 'Ancient Fruit'.
fuzzyNoSubstring match (e.g. 'wine' finds all wines). False = exact name.
save_pathNoPath to a save file OR a save folder (e.g. .../Saves/Farm_123 or .../Saves/Farm_123/Farm_123). Leave empty to use the save configured at server startup (--save/--save-dir or SDV_SAVE_PATH/SDV_SAVE_DIR). The server never auto-discovers saves; one must be configured or passed explicitly.

TDQS

A3.5/5.0
Behavior2/5

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

No annotations are provided, so the description bears full burden. It states the search scope and return structure (quantity, container location), but omits critical behavioral details like read-only nature, performance implications, side effects, or what happens if the item is not found.

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?

The description is two sentences, each with clear purpose: first defines action and scope, second describes return format and intent. No superfluous words.

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?

Given no output schema and no annotations, the description provides a reasonable outline of return values (quantity and location) but lacks detail on result structure, error handling, or pagination. For a search tool, this is adequate but not comprehensive.

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 baseline is 3. The description adds no additional semantics beyond the schema, which already details 'name', 'fuzzy' (substring match), and 'save_path' (with path guidance).

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 verb 'locate', the resource 'item', and the scope 'across player backpacks, all chests, and machine outputs', directly answering 'where is my X?'. This purpose is well-distinguished from sibling tools like 'inventory' and 'chests'.

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?

The description implies usage for finding a specific item's location via 'where is my X?', but lacks explicit when-to-use, when-not-to-use, or comparisons to alternatives. Sibling tools like 'how_to_obtain' suggest different use cases, but no direct guidance is given.

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

fish_availableA

Fish catchable under given conditions (defaults to the save's current season, any weather). Each entry lists seasons, weather, locations, time, already-caught.

ParametersJSON Schema
NameRequiredDescriptionDefault
seasonNo
weatherNo
save_pathNoPath to a save file OR a save folder (e.g. .../Saves/Farm_123 or .../Saves/Farm_123/Farm_123). Leave empty to use the save configured at server startup (--save/--save-dir or SDV_SAVE_PATH/SDV_SAVE_DIR). The server never auto-discovers saves; one must be configured or passed explicitly.
only_uncaughtNoHide fish the host already caught.

TDQS

A3.8/5.0
Behavior3/5

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

The description does not disclose its read-only nature or any authentication requirements. With no annotations provided, the description carries the full burden but only mentions defaults and output fields. It is adequate but not comprehensive, lacking details on side effects or data freshness.

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?

The description is concise with two sentences. The first sentence states the core purpose and defaults, and the second lists output fields. Every phrase is informative with no waste.

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?

Given the tool's simplicity and lack of an output schema, the description provides sufficient context about the output fields. It could be more complete by explicitly stating the return format (e.g., list of fish names), but it is adequate for a basic query tool.

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

Parameters4/5

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

The description adds value by explaining default behaviors for 'season' (current save's season) and 'weather' (any weather), which compensates for the lack of descriptions in the schema for these parameters. The schema already describes 'save_path' and 'only_uncaught' well.

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 returns fish catchable under given conditions, with explicit defaults. It distinguishes itself from sibling tools like fishing_xp_forecast by focusing on availability rather than experience or pond forecasts.

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 any context for choosing this tool over other fishing-related tools, nor does it provide any exclusion criteria.

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

fishing_xp_forecastB

Catches needed to reach a target fishing level from save XP. XP = ((quality+1)*3) + (difficulty/3), x-multipliers stack (see note).

ParametersJSON Schema
NameRequiredDescriptionDefault
fishNoKnown fish name to look up difficulty, e.g. 'Sturgeon'.
playerNoPlayer/farmhand name; empty = host player.
perfectNoPerfect catch (x2.4).
qualityNoFish quality used in the XP formula.normal
treasureNoCaught a treasure chest (x2.2).
legendaryNoLegendary fish (x5).
save_pathNoPath to a save file OR a save folder (e.g. .../Saves/Farm_123 or .../Saves/Farm_123/Farm_123). Leave empty to use the save configured at server startup (--save/--save-dir or SDV_SAVE_PATH/SDV_SAVE_DIR). The server never auto-discovers saves; one must be configured or passed explicitly.
difficultyNoFish difficulty 5-110. 0 = look up from `fish`.
target_levelYesGoal fishing level 1-10.

Output Schema

ParametersJSON Schema
NameRequiredDescription
fishNo
noteNo
errorNo
playerNo
perfectNo
qualityNo
treasureNo
legendaryNo
target_xpNo
current_xpNo
difficultyNo
known_fishNo
target_levelNo
xp_per_catchNo
xp_remainingNo
catches_neededNo
current_fishing_levelNo

TDQS

B3.1/5.0
Behavior2/5

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

With no annotations, the description carries the full burden. It provides the XP formula and mentions multiplicative stacking, but does not explain how save XP is retrieved, how the save_path parameter is used, or what happens if no save is configured. The note reference is unresolved, leaving behavior partially unspecified.

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 two sentences with a formula, front-loading the purpose. However, the unresolved note reference ('see `note`') adds an element of confusion and assumes external knowledge, slightly detracting from conciseness.

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?

Given the tool has 9 parameters and an output schema, the description does not explain what the tool returns (e.g., number of catches, detailed breakdown). The formula and stacking info are useful but omit key behavioral details like save file requirements or error handling.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3. The description adds value by explaining the XP formula and how multipliers (perfect, treasure, legendary) stack, which clarifies the meaning of those boolean parameters beyond the schema's basic 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 states the tool calculates 'Catches needed to reach a target fishing level' and provides the XP formula, which is specific and distinguishes it from siblings like 'skill_xp_forecast' or 'fish_available'. However, the reference to a missing note reduces clarity slightly.

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 sibling tools like 'skill_xp_forecast' or 'fish_available'. The description does not mention any conditions or exclusions, leaving the agent without context for appropriate invocation.

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

fish_pond_forecastC

Days to fill a fish pond to capacity via reproduction.

ParametersJSON Schema
NameRequiredDescriptionDefault
fishNoModel a hypothetical pond of this fish; empty = read save's ponds.
capacityNoTarget capacity (1-10).
save_pathNoPath to a save file OR a save folder (e.g. .../Saves/Farm_123 or .../Saves/Farm_123/Farm_123). Leave empty to use the save configured at server startup (--save/--save-dir or SDV_SAVE_PATH/SDV_SAVE_DIR). The server never auto-discovers saves; one must be configured or passed explicitly.
spawn_daysNoOverride reproduction interval in days. 0 = use table.
current_popNoCurrent population for the hypothetical. -1 = unknown.

Output Schema

ParametersJSON Schema
NameRequiredDescription
noteNo
from_No
pondsNo
forecastNo

TDQS

C2.8/5.0
Behavior2/5

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

No annotations exist, so description must disclose behavior. It only states the core function but omits whether it modifies data, requires authentication, or has side effects. The save_path parameter implies reading saves, but this is not explicitly stated in the description.

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

Conciseness3/5

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

The description is concise (one sentence, 9 words) and front-loaded. However, it is too sparse given the tool has 5 parameters, sacrificing necessary context for brevity.

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 an output schema, the description does not mention the return value or behavior (e.g., integer days). Missing context about hypothetical vs real ponds, save requirements, and relation to other fish tools.

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 coverage is 100% with detailed parameter descriptions. The tool description adds no additional meaning beyond the schema, meeting the baseline of 3.

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 calculates days to fill a fish pond via reproduction, using specific verb and resource. However, it could be more explicit about 'forecast' and does not strongly differentiate from other forecast tools, though the resource is unique.

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 on when to use this tool vs alternatives (e.g., fish_available) or when not to use it. No prerequisites or context are mentioned.

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

friendship_forecastC

Loved gifts + weeks to reach a target heart level from current save points.

ParametersJSON Schema
NameRequiredDescriptionDefault
playerNoPlayer/farmhand name; empty = host player.
villagerYesVillager name, e.g. 'Robin'.
save_pathNoPath to a save file OR a save folder (e.g. .../Saves/Farm_123 or .../Saves/Farm_123/Farm_123). Leave empty to use the save configured at server startup (--save/--save-dir or SDV_SAVE_PATH/SDV_SAVE_DIR). The server never auto-discovers saves; one must be configured or passed explicitly.
target_heartsNoGoal heart level.
loved_gifts_per_weekNoLoved gifts given per week (max 2).

Output Schema

ParametersJSON Schema
NameRequiredDescription
noteNo
errorNo
knownNo
playerNo
villagerNo
target_heartsNo
current_heartsNo
current_pointsNo
points_remainingNo
loved_gifts_neededNo
weeks_at_2_loved_per_weekNo

TDQS

C2.9/5.0
Behavior2/5

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

No annotations provided, so description must convey behavioral traits. It hints at reading save data ('from current save points') but does not state it is read-only, nor does it disclose any side effects, authorization needs, or error conditions.

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 concise at one sentence. It is front-loaded with key information (loved gifts, weeks, target hearts). However, brevity sacrifices some clarity and completeness.

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?

Given 5 parameters and an output schema, the description lacks sufficient context. It does not explain what the tool returns (e.g., number of weeks, breakdown by week), how current friendship points are used, or edge cases like unreachable targets.

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 coverage is 100% with adequate field descriptions. The tool description adds minimal extra meaning beyond the schema, so baseline score of 3 is appropriate.

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 indicates the tool calculates weeks to reach a target heart level using loved gifts from save data. It distinguishes itself from sibling tools like 'friendships' (current state) and 'gift_helper' (gift suggestions) by focusing on forecasting.

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 explicit guidance on when to use this tool versus alternatives. Does not mention prerequisites, such as requiring an active save, or when not to use it (e.g., if friendship is already at max).

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

friendshipsB

Per-player villager hearts/points and spouse status.

ParametersJSON Schema
NameRequiredDescriptionDefault
save_pathNoPath to a save file OR a save folder (e.g. .../Saves/Farm_123 or .../Saves/Farm_123/Farm_123). Leave empty to use the save configured at server startup (--save/--save-dir or SDV_SAVE_PATH/SDV_SAVE_DIR). The server never auto-discovers saves; one must be configured or passed explicitly.

TDQS

B3.2/5.0
Behavior2/5

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

No annotations exist, and the description does not disclose behavioral traits such as read-only nature, required permissions, or side effects. The agent must assume the tool is safe to use, but this is not stated.

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, efficient sentence that covers the core purpose. It is appropriately sized for a simple tool, though slightly more detail about output could be added without breaking conciseness.

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 has no output schema, so the description should ideally explain return values. While it mentions hearts/points and spouse status, it lacks detail on the format or scope, making it minimally acceptable but not complete.

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?

With 100% schema description coverage, the schema already documents the save_path parameter. The description adds no additional meaning beyond what the schema provides, so a baseline score of 3 is appropriate.

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 'Per-player villager hearts/points and spouse status' clearly identifies the tool's function (displaying friendship data) and distinguishes it from sibling tools like 'villager_schedule' or 'gift_helper' which have different purposes.

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. There is no mention of prerequisites, context, or exclusions, leaving the agent to infer usage without explicit direction.

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

full_reportC

Everything at once: overview, players, CC, inventory, processing, feed, museum, monster goals, friendships, perfection, tools, wallet, mods.

ParametersJSON Schema
NameRequiredDescriptionDefault
save_pathNoPath to a save file OR a save folder (e.g. .../Saves/Farm_123 or .../Saves/Farm_123/Farm_123). Leave empty to use the save configured at server startup (--save/--save-dir or SDV_SAVE_PATH/SDV_SAVE_DIR). The server never auto-discovers saves; one must be configured or passed explicitly.

TDQS

C2.8/5.0
Behavior2/5

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

No annotations are present, so the description must cover behavioral traits. It does not disclose whether the operation is read-only, potential performance implications, or error handling for invalid save paths. The description only lists contents.

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

Conciseness3/5

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

The description is very concise, but it is merely a list without structure or explanatory text. It could be better organized to improve readability.

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?

Given the tool's complexity (many sub-reports) and lack of output schema, the description should explain the format or nature of the returned report. It only lists sections, leaving the agent uncertain about what the output looks like.

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?

The save_path parameter has a comprehensive description in the schema (100% coverage), so the description adds no new parameter meaning. Baseline score of 3 is appropriate.

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 lists the components of the report (overview, players, etc.), making it clear what the tool provides. However, it does not explicitly state that it returns a single comprehensive report, and it lacks differentiation from sibling tools that cover individual components.

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 individual report tools like 'overview' or 'players'. There is no mention of alternatives or conditions for use.

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

gift_helperA

Per-villager birthday (read from the save) + your current hearts + notable loved gifts, flagging which loved gifts you currently hold. Also lists birthdays within upcoming_days. Loved-gift lists are a curated summary - use wiki_page(villager) for the authoritative full list.

ParametersJSON Schema
NameRequiredDescriptionDefault
save_pathNoPath to a save file OR a save folder (e.g. .../Saves/Farm_123 or .../Saves/Farm_123/Farm_123). Leave empty to use the save configured at server startup (--save/--save-dir or SDV_SAVE_PATH/SDV_SAVE_DIR). The server never auto-discovers saves; one must be configured or passed explicitly.
upcoming_daysNoWindow for 'upcoming birthdays'.

TDQS

A4.2/5.0
Behavior4/5

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

With no annotations, the description bears full burden. It discloses the tool reads from the save file, lists birthdays within a window, and flags held loved gifts. No destructive or side effects are implied. Transparency is adequate.

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?

The description is concise, front-loaded with main functionality, and uses only necessary sentences. It efficiently communicates the tool's purpose and limitations.

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?

Although no output schema exists, the description adequately explains what the tool returns (birthdays, hearts, loved gifts, flags). It lacks detail on return format but covers the essential content for a helper tool.

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 coverage is 100% with detailed parameter descriptions. The description adds minimal new information beyond the schema, such as the window for upcoming days. Baseline 3 is appropriate.

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's purpose: per-villager birthdays, current hearts, notable loved gifts, flagging held gifts, and listing upcoming birthdays. It explicitly distinguishes from wiki_page by noting loved-gift lists are a curated summary, not authoritative.

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?

The description implicitly guides when to use (for quick gift info and birthdays) and explicitly advises using wiki_page for authoritative lists. It does not provide explicit when-not-to-use scenarios, but the alternative is clear.

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

golden_walnutsA

Golden Walnut progress on Ginger Island: found vs 130, unspent balance, whether the island is unlocked, and repeatable-source progress.

ParametersJSON Schema
NameRequiredDescriptionDefault
save_pathNoPath to a save file OR a save folder (e.g. .../Saves/Farm_123 or .../Saves/Farm_123/Farm_123). Leave empty to use the save configured at server startup (--save/--save-dir or SDV_SAVE_PATH/SDV_SAVE_DIR). The server never auto-discovers saves; one must be configured or passed explicitly.

TDQS

A3.6/5.0
Behavior3/5

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

No annotations are provided. The description discloses what the tool returns but does not mention any behavioral traits such as read-only nature, side effects, or authentication needs. As a progress checker, it is likely safe, but this is not confirmed.

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 front-loads the tool's purpose. It is efficient, though it could be slightly more structured with bullet points or separate sentences.

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?

Given the lack of output schema, the description lists the return components but does not specify their format or structure. For a tool with one parameter, the description is adequate but could be more complete by detailing the output format.

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%; the description for the save_path parameter is detailed. The tool description does not add additional meaning beyond the schema, so baseline 3 is appropriate.

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 progress information about golden walnuts on Ginger Island, listing specific data points (found vs 130, unspent balance, island unlock status, repeatable-source progress). It distinguishes itself from siblings by being specifically about golden walnuts.

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?

The description implies usage for checking golden walnut progress but does not explicitly state when to use this tool vs alternatives. With many sibling tools, some guidance on when to prefer this would be helpful.

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

how_to_obtainA

How to get an item: the wiki's lead-section summary of every acquisition method (monster drops, shop purchases, trades, gifting, crafting) plus the structured infobox (source/season/price). Use this to plan the best way to obtain a quest/bundle item. Call wiki_page(item) for full drop-rate detail.

ParametersJSON Schema
NameRequiredDescriptionDefault
itemYesItem name, e.g. 'Bat Wing', 'Cauliflower', 'Solar Essence'.

TDQS

A4.2/5.0
Behavior3/5

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

With no annotations provided, the description must fully disclose behavior. It states the tool returns a 'lead-section summary' and 'structured infobox', but does not detail the output format (e.g., text vs. JSON) or any potential limitations like freshness of data. The description lacks explicit behavioral traits beyond the basic function.

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?

The description is two sentences, front-loaded with the main purpose, and no superfluous information. Every sentence adds value.

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?

Given the single parameter and absence of output schema, the description is mostly complete: it covers purpose, usage context, and relationship to sibling. However, it does not specify the return format (text vs. structured data), which would enhance completeness for an agent.

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 coverage is 100%, so the schema already documents the single parameter with examples. The description does not add additional semantic information about the parameter beyond what the schema provides. Baseline score of 3 is appropriate.

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 summary of acquisition methods from the wiki's lead section and structured infobox, using specific verbs like 'summary' and 'plan'. It distinguishes itself from sibling wiki_page by offering a condensed overview rather than full drop-rate details.

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

Usage Guidelines5/5

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

The description explicitly instructs when to use the tool ('to plan the best way to obtain a quest/bundle item') and when to use an alternative ('Call wiki_page(item) for full drop-rate detail'). This provides clear context and differentiation.

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

inventoryA

Items held: each player's backpack plus chest contents. Default merges all chests into one bag; set by_container=True for a per-container breakdown.

ParametersJSON Schema
NameRequiredDescriptionDefault
fullNoList every chest item instead of just the top 40 (merged view only).
save_pathNoPath to a save file OR a save folder (e.g. .../Saves/Farm_123 or .../Saves/Farm_123/Farm_123). Leave empty to use the save configured at server startup (--save/--save-dir or SDV_SAVE_PATH/SDV_SAVE_DIR). The server never auto-discovers saves; one must be configured or passed explicitly.
by_containerNoReturn a per-chest breakdown (type, location, tile, color, contents) instead of the merged bag.

TDQS

A3.8/5.0
Behavior3/5

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

No annotations provided, so description covers the merging behavior and the by_container option. However, it does not disclose read-only nature, performance implications, or any side effects. Adequate but could be more transparent.

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?

Two sentences, no filler. Essential information is front-loaded. Every word earns its place.

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?

Given the tool's modest complexity (3 boolean params) and no output schema, the description adequately covers functionality. Could mention what the output looks like, but not strictly necessary.

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 baseline is 3. The description adds context for by_container (merging vs breakdown) but not for full or save_path beyond what schema already provides. Minimal added value.

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?

Description clearly states the tool retrieves items from player backpack and chests, with two modes (merged and per-container). It implicitly distinguishes from sibling tool 'chests' by covering both backpack and chest contents.

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?

Provides guidance on when to use by_container parameter, but no explicit when-not or alternatives among the 50 sibling tools. Could be improved by mentioning that for per-container breakdown, use by_container or else default merged view.

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

list_buffsA

Food/consumable buffs that raise a skill LEVEL (Farmer's Lunch +3, Trout Soup +1). These change level-dependent effects, NOT XP gain.

ParametersJSON Schema
NameRequiredDescriptionDefault
skillNoFilter by skill (farming/fishing/...); empty = all.

TDQS

A4/5.0
Behavior4/5

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

With no annotations, the description carries full burden. It discloses that buffs affect level-dependent effects but not XP gain, and scopes to food/consumable items. This provides useful behavioral context beyond the schema, though could mention if drinks are included.

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?

Two sentences with no wasted words. Front-loaded with the key purpose: 'Food/consumable buffs that raise a skill LEVEL'. Every sentence earns its place.

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?

For a simple list tool with one optional parameter and no output schema, the description is complete. It explains the domain (food/consumable), effect (raise skill level), and nuance (not XP). Could mention if it includes all buffs or only active ones, but not critical.

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 coverage is 100% with a clear description for the only parameter (skill filter). The tool description adds no additional parameter semantics beyond what the schema already provides. Baseline score of 3 is appropriate.

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 lists food/consumable buffs that raise skill levels, and distinguishes from XP gain. It uses specific examples (Farmer's Lunch +3, Trout Soup +1) and contrasts with sibling tools like skill_xp_forecast.

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?

The description implies usage for listing level-raising buffs but does not explicitly state when to choose this tool over alternatives or when not to use it. Lacks explicit guidance for when to use list_buffs vs. other tools like wiki_page or find_item.

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

machinesA

Inventory of every placed processing machine (Furnace, Keg, Cask, Seed Maker, Charcoal Kiln, Tapper, Bee House, Preserves Jar, etc.) grouped by type with counts and state (ready / working / idle). Excludes chests and decorative craftables. Use this to answer 'what/how many machines do I have'; machines_ready shows only machines with output ready to collect right now.

ParametersJSON Schema
NameRequiredDescriptionDefault
save_pathNoPath to a save file OR a save folder (e.g. .../Saves/Farm_123 or .../Saves/Farm_123/Farm_123). Leave empty to use the save configured at server startup (--save/--save-dir or SDV_SAVE_PATH/SDV_SAVE_DIR). The server never auto-discovers saves; one must be configured or passed explicitly.

TDQS

A4.4/5.0
Behavior4/5

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

No annotations provided, so description carries full burden. It discloses return structure (grouped by type, counts, state ready/working/idle) and exclusions. It is read-only in nature. Could mention if machines in all locations are included, but 'every placed processing machine' is sufficiently clear.

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?

Description is concise with two clear parts: inventory content and usage differentiation. No unnecessary words, front-loaded with purpose.

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?

Given no output schema and low complexity (1 param), description covers purpose, exclusions, and sibling differentiation. It doesn't detail exact return format but mentions grouping and state fields, which is adequate for a list-like tool.

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% for the single parameter `save_path`. The description repeats the same information from the schema ('leave empty to use configured save'), adding no new meaning. Baseline 3 is appropriate.

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 it is an inventory of processing machines grouped by type with counts and state, and specifies excluded items (chests and decorative craftables). It directly addresses the query 'what/how many machines do I have', showing a specific verb and resource.

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

Usage Guidelines5/5

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

Explicitly states when to use this tool ('answer what/how many machines do I have') and distinguishes from the sibling tool 'machines_ready' by noting the latter shows only machines ready to collect. Also specifies exclusions, reducing ambiguity.

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

missing_museumA

Undonated museum items (minerals + artifacts) with sourcing notes.

ParametersJSON Schema
NameRequiredDescriptionDefault
save_pathNoPath to a save file OR a save folder (e.g. .../Saves/Farm_123 or .../Saves/Farm_123/Farm_123). Leave empty to use the save configured at server startup (--save/--save-dir or SDV_SAVE_PATH/SDV_SAVE_DIR). The server never auto-discovers saves; one must be configured or passed explicitly.

TDQS

A3.5/5.0
Behavior2/5

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

No annotations provided; description only mentions output content (undonated items with sourcing notes) without disclosing behavioral traits such as read-only nature, required permissions, or side effects.

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?

Single sentence describing purpose efficiently. No unnecessary words, though could add brief usage note without harming conciseness.

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?

Simple tool with one optional parameter; description sufficiently conveys what it returns. Sufficient for a list tool, despite lacking output 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 coverage is 100% (save_path well-described). Description adds no extra meaning beyond the schema, so baseline score of 3 applies.

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?

Description clearly states it lists undonated museum items (minerals and artifacts) with sourcing notes, directly distinguishing from the 'museum' sibling tool which likely shows donated status.

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—use to see missing items—but no explicit guidance on when to use versus alternatives like 'museum' or 'community_center'.

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

missing_recipesA

Per player: cooking + crafting recipes you've LEARNED but not yet made (make these to progress Perfection), with known/made counts and how many you still haven't learned. Pairs with perfection Cooking/Crafting categories.

ParametersJSON Schema
NameRequiredDescriptionDefault
save_pathNoPath to a save file OR a save folder (e.g. .../Saves/Farm_123 or .../Saves/Farm_123/Farm_123). Leave empty to use the save configured at server startup (--save/--save-dir or SDV_SAVE_PATH/SDV_SAVE_DIR). The server never auto-discovers saves; one must be configured or passed explicitly.

TDQS

A3.8/5.0
Behavior3/5

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

No annotations provided, so description carries full burden. It describes return data (counts) but does not disclose operational requirements like needing a save file or side effects. Parameter behavior is covered in schema but not in description.

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?

Two sentences with no waste. Front-loaded with key information: per-player, learned but not made, counts, relation to Perfection.

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?

The description explains return values (counts, how many not learned) and context (Perfection). Minor ambiguity about 'Per player' (multiple players?) but otherwise complete for a simple tool with one optional parameter.

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 baseline is 3. The tool description adds no additional meaning for the 'save_path' parameter beyond the schema.

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 it lists cooking and crafting recipes learned but not yet made, with counts related to Perfection. This distinguishes it from sibling tools like 'perfection' and 'how_to_obtain'.

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?

The description implies usage for progressing Perfection and pairs with 'perfection' categories, but lacks explicit when-to-use or when-not-to-use guidance, nor does it mention alternatives.

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

modsC

Detect mods and list what couldn't be mapped to vanilla references (modded item ids, unmapped bundle/museum entries).

ParametersJSON Schema
NameRequiredDescriptionDefault
save_pathNoPath to a save file OR a save folder (e.g. .../Saves/Farm_123 or .../Saves/Farm_123/Farm_123). Leave empty to use the save configured at server startup (--save/--save-dir or SDV_SAVE_PATH/SDV_SAVE_DIR). The server never auto-discovers saves; one must be configured or passed explicitly.

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations, the description must fully convey behavioral traits. It only states that the tool detects mods and lists unmapped entries. It does not indicate whether this is a read-only operation, whether it modifies the save file, or any prerequisites (e.g., need for load order). The description is insufficient for an agent to understand side effects or permissions.

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 of 20 words, which is concise. The main action 'Detect mods' is front-loaded. However, the latter part could be restructured for better readability, perhaps by separating the purpose from the details.

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?

For a tool with one optional parameter and no output schema, the description covers the core function but lacks specifics: format of the list, what constitutes 'vanilla references', or how mods are detected. The absence of output schema makes the description's role more critical, and it falls short of fully informing an agent.

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?

The input schema provides a detailed description of the 'save_path' parameter (100% coverage). The tool description adds no additional meaning beyond what the schema already conveys. Baseline score of 3 is appropriate.

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 'Detect mods' and specifies the output: listing what couldn't be mapped to vanilla references. This purpose is distinct from sibling tools, which focus on specific game mechanics. However, the phrase 'modded item ids, unmapped bundle/museum entries' could be clearer, and the description does not explicitly differentiate from siblings.

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. Given the many sibling tools, the agent may struggle to decide when to invoke this tool instead of, e.g., 'find_item' or 'wiki_search'. The description offers no context for selection.

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

monster_goalsB

Adventurer's Guild eradication goals: kills vs target + reward per category.

ParametersJSON Schema
NameRequiredDescriptionDefault
save_pathNoPath to a save file OR a save folder (e.g. .../Saves/Farm_123 or .../Saves/Farm_123/Farm_123). Leave empty to use the save configured at server startup (--save/--save-dir or SDV_SAVE_PATH/SDV_SAVE_DIR). The server never auto-discovers saves; one must be configured or passed explicitly.

TDQS

B3.3/5.0
Behavior2/5

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

No annotations are provided, so the description carries full burden. It does not disclose whether the tool is read-only, requires a specific save state, or has side effects. This is insufficient for a simple retrieval tool.

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?

One sentence, no unnecessary words. Every word is functional.

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?

Given no output schema, the description explains the return content (kills vs target, reward per category). However, it does not indicate the format (list, table) or whether multiple categories are shown. Adequate but not thorough.

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?

The input schema already covers the single parameter 'save_path' with a detailed description. The tool description adds no parameter-specific meaning, achieving the baseline for high schema coverage.

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 resource (Adventurer's Guild eradication goals) and the specific data shown (kills vs target, reward per category). It distinguishes itself from sibling tools, which cover different game aspects.

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 on when to use this tool versus alternatives like 'quests' or 'daily_briefing'. The agent has no context for selection.

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

museumC

Museum donations out of 95 and the next milestone (e.g. 60 = Rusty Key).

ParametersJSON Schema
NameRequiredDescriptionDefault
save_pathNoPath to a save file OR a save folder (e.g. .../Saves/Farm_123 or .../Saves/Farm_123/Farm_123). Leave empty to use the save configured at server startup (--save/--save-dir or SDV_SAVE_PATH/SDV_SAVE_DIR). The server never auto-discovers saves; one must be configured or passed explicitly.

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations, the description carries the full burden. It mentions outputs (donations count and next milestone) but does not specify the return format, whether it reads or modifies data, or what happens if the input is invalid. The behavioral scope is vague.

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 that conveys the core information concisely, with an example added for clarity. It is front-loaded with the key action and resource. The lack of structure is acceptable given brevity.

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?

Given the tool's simplicity (one optional parameter, no output schema), the description is incomplete. It fails to clarify the return value's structure (e.g., text, number, or object) and the exact meaning of 'next milestone'. Domain experts might infer, but general agents need more.

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?

The schema description for 'save_path' is already detailed with 100% coverage, so the tool description adds no parameter semantics. The description does not provide additional meaning beyond the schema, resulting in a baseline score of 3.

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 that the tool reports museum donations out of 95 and provides the next milestone with an example (60 = Rusty Key). It is specific about the resource (museum donations) and action (reporting count and next milestone). However, it does not explicitly differentiate from sibling tools like 'missing_museum', though the purpose is distinct enough.

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 usage context is implied (checking museum progress), but there are no explicit conditions, prerequisites, or comparisons to sibling tools.

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

net_worthA

Gold + sellable value of everything held (backpacks + chests + machine outputs), data-driven from each item's base sell price. Economy snapshot.

ParametersJSON Schema
NameRequiredDescriptionDefault
save_pathNoPath to a save file OR a save folder (e.g. .../Saves/Farm_123 or .../Saves/Farm_123/Farm_123). Leave empty to use the save configured at server startup (--save/--save-dir or SDV_SAVE_PATH/SDV_SAVE_DIR). The server never auto-discovers saves; one must be configured or passed explicitly.

TDQS

A3.6/5.0
Behavior4/5

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

Without annotations, the description carries the full burden. It discloses the data-driven nature (base sell prices) and scope (backpacks, chests, machine outputs). It implies a read-only calculation with no side effects, which is transparent enough.

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?

Two sentences, each providing essential information. No redundant or unnecessary text. Front-loaded with the core concept.

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 description explains what the tool computes but omits mention of the optional save_path parameter and does not describe the output format. Since there is no output schema, some indication of the return structure would improve completeness. However, for a simple value tool, it is minimally adequate.

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 100% coverage for the single parameter 'save_path', but the description does not mention this parameter at all. No additional meaning or usage nuances are provided beyond the schema.

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 computes net worth as gold plus sellable value of all items in backpacks, chests, and machine outputs, using base sell prices. It distinguishes itself as an 'economy snapshot' from sibling tools like 'golden_walnuts' or 'wallet'.

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. The description does not mention prerequisites, exclusions, or contexts where it is appropriate.

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

overviewB

Headline state: farm name, players, in-game date, shared money, lifetime earnings, deepest mine level, game version.

ParametersJSON Schema
NameRequiredDescriptionDefault
save_pathNoPath to a save file OR a save folder (e.g. .../Saves/Farm_123 or .../Saves/Farm_123/Farm_123). Leave empty to use the save configured at server startup (--save/--save-dir or SDV_SAVE_PATH/SDV_SAVE_DIR). The server never auto-discovers saves; one must be configured or passed explicitly.

TDQS

B3.1/5.0
Behavior2/5

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

No annotations provided, so the description must convey behavioral traits. It lists what fields are returned but does not state that the operation is read-only, has no side effects, or requires specific permissions. The parameter description hints at save configuration but is not part of the main description.

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?

The description is a single, well-structured sentence that lists the fields. It is concise with no redundant information, and the key purpose is front-loaded.

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?

Given the tool's simplicity and no output schema, the description covers the returned fields adequately. However, it lacks behavioral context (e.g., read-only nature, dependency on save configuration) and does not clarify what constitutes a 'headline' selection versus other reports.

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 coverage is 100%, so the parameter is already described in the input schema. The description adds no semantic value about how 'save_path' affects the output or how to use it.

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 states it provides 'headline state' of the farm, listing specific fields. This clearly indicates the tool returns a summary overview, but does not explicitly differentiate it from siblings like 'full_report' or 'daily_briefing' that might also provide summary data.

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 on when to use this tool versus alternatives. It does not mention prerequisites, context, or when not to use it. Given many sibling tools with similar scope, this is a significant gap.

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

perfectionB

Full weighted Perfection %: the 11 in-game categories (shipped, obelisks, golden clock, monster slayer, great friends, skills, stardrops, cooking, crafting, fish, walnuts) with each one's have/total and earned %. Verified weights.

ParametersJSON Schema
NameRequiredDescriptionDefault
save_pathNoPath to a save file OR a save folder (e.g. .../Saves/Farm_123 or .../Saves/Farm_123/Farm_123). Leave empty to use the save configured at server startup (--save/--save-dir or SDV_SAVE_PATH/SDV_SAVE_DIR). The server never auto-discovers saves; one must be configured or passed explicitly.

TDQS

B3.2/5.0
Behavior3/5

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

With no annotations provided, the description carries full burden. It addresses the output behavior (11 categories, have/total, earned %, verified weights) but does not disclose whether the tool is read-only, requires authentication, or has side effects. For a stat retrieval tool, this is minimally adequate but not complete.

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 two sentences, front-loaded with the core purpose and output details. It is concise with no wasted words, though it could benefit from a more structured listing of the categories.

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?

Given the lack of annotations and output schema, the description adequately summarizes the output (11 categories, have/total, earned %, verified weights) but omits details on how 'verified weights' are determined or how the overall perfection percentage is calculated. It provides enough to understand the tool's purpose but not full completeness.

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?

The input schema fully describes the single parameter (save_path) with a detailed description, achieving 100% coverage. The description adds no additional semantic value for the parameter, only describing the output. With full schema coverage, baseline 3 is appropriate.

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 that the tool provides a 'Full weighted Perfection %' with breakdowns of 11 categories including have/total and earned percentages. It identifies the resource (perfection stats) and the output structure, though it lacks an explicit action verb like 'returns' or 'calculates', making it slightly less directive.

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 siblings like 'full_report' or 'overview'. There is no mention of prerequisites, when not to use it, or alternatives. The description solely focuses on what the tool returns, not on usage context.

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

playersB

Every player: skill levels, XP, XP-to-next-level, professions, spouse, backpack size, house-upgrade level.

ParametersJSON Schema
NameRequiredDescriptionDefault
save_pathNoPath to a save file OR a save folder (e.g. .../Saves/Farm_123 or .../Saves/Farm_123/Farm_123). Leave empty to use the save configured at server startup (--save/--save-dir or SDV_SAVE_PATH/SDV_SAVE_DIR). The server never auto-discovers saves; one must be configured or passed explicitly.

TDQS

B3.1/5.0
Behavior2/5

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

No annotations provided. The description states 'Every player' indicating it returns all players, but it does not disclose read-only nature, side effects, or requirements. The burden falls entirely on the description, which is insufficient.

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?

Extremely concise: a single sentence listing fields with no redundancy. Every word adds value.

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 description lists the output fields, which is helpful, but lacks explicit statement of the tool's action (e.g., 'Get player information'). With no output schema, the description should be more explicit about the return structure. Overall, minimally adequate.

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 coverage is 100% (save_path has a detailed description). The tool description adds no parameter information, but the schema already covers it adequately, earning a baseline 3.

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 lists the fields returned for every player, which clearly implies a retrieval operation. However, it lacks an explicit verb like 'get' or 'list', reducing specificity. It does not differentiate from siblings such as 'friendships' or 'inventory'.

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 on when to use this tool versus alternatives. The description merely enumerates output fields without context about prerequisites or comparison to siblings.

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

player_toolsB

Each player's tools (pickaxe/axe/hoe/watering can/rod) and upgrade tier.

ParametersJSON Schema
NameRequiredDescriptionDefault
save_pathNoPath to a save file OR a save folder (e.g. .../Saves/Farm_123 or .../Saves/Farm_123/Farm_123). Leave empty to use the save configured at server startup (--save/--save-dir or SDV_SAVE_PATH/SDV_SAVE_DIR). The server never auto-discovers saves; one must be configured or passed explicitly.

TDQS

B3.4/5.0
Behavior2/5

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

No annotations are provided, and the description does not mention any behavioral aspects such as read-only nature, side effects, or required permissions. The description lacks transparency about what the tool does beyond its output.

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 effectively communicates the tool's purpose. It is front-loaded with the key information, though it lacks structural elements like bullet points or separated sections.

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?

Given the complexity of the tool (1 parameter, no output schema, no annotations), the description is minimally adequate. It specifies the output but does not detail the format or additional context that might be needed for full understanding.

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?

The input schema covers the single parameter completely with a detailed description. The tool description adds no additional meaning beyond the schema, so the baseline score of 3 applies.

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 each player's tools and upgrade tier, specifying the exact resources (pickaxe, axe, hoe, watering can, rod). This distinguishes it from siblings like 'inventory' or 'players'.

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?

No explicit guidance on when to use this tool versus alternatives. The usage is implied but there are no exclusions or alternative tool names provided for comparison.

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

processingA

Keg/jar planning data: held crops grouped into fruit/veg/special (by the save's own item category) + machine counts. Modded items are excluded and listed separately.

ParametersJSON Schema
NameRequiredDescriptionDefault
save_pathNoPath to a save file OR a save folder (e.g. .../Saves/Farm_123 or .../Saves/Farm_123/Farm_123). Leave empty to use the save configured at server startup (--save/--save-dir or SDV_SAVE_PATH/SDV_SAVE_DIR). The server never auto-discovers saves; one must be configured or passed explicitly.

TDQS

A4/5.0
Behavior4/5

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

The description discloses key behaviors: crops are grouped by the save's own item categories, machine counts are included, and modded items are excluded and listed separately. This adds value beyond the schema, which only describes the save_path parameter.

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?

The description is a single, well-structured sentence that conveys the core purpose without unnecessary words. It is front-loaded with the main action.

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?

Given the tool's simplicity (one parameter, no output schema), the description adequately covers the purpose and key behaviors. However, it could briefly mention the return format to help the agent interpret results.

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 coverage is 100% and the parameter description is already detailed. The tool description does not add any extra meaning to the single parameter, so baseline 3 is appropriate.

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 specifies the tool's function: providing keg/jar planning data with grouped crops and machine counts. It distinguishes itself from siblings like 'processing_planner' and 'processing_value' by focusing on held crops and item categories.

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?

The description implies use for planning keg/jar processing but does not explicitly state when to use this tool versus alternatives, nor does it mention when not to use it.

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

processing_plannerC

From held crops + machines owned: kegs/jars needed to clear the backlog in days and estimated gross gold (see note for multipliers/cycle-day caveats).

ParametersJSON Schema
NameRequiredDescriptionDefault
daysNoPlanning horizon in in-game days.
artisanNoApply Artisan +40%: auto-detect from professions, or force.auto
save_pathNoPath to a save file OR a save folder (e.g. .../Saves/Farm_123 or .../Saves/Farm_123/Farm_123). Leave empty to use the save configured at server startup (--save/--save-dir or SDV_SAVE_PATH/SDV_SAVE_DIR). The server never auto-discovers saves; one must be configured or passed explicitly.
extra_jarsNoHypothetical extra jars to add.
extra_kegsNoHypothetical extra kegs to add.

Output Schema

ParametersJSON Schema
NameRequiredDescription
vegNo
daysNo
noteNo
fruitNo
artisanNo
specialNo
jars_ownedNo
kegs_ownedNo
items_pricedNo
kegs_to_buildNo
cycles_per_kegNo
est_gross_goldNo
keg_items_heldNo
items_without_priceNo
kegs_needed_to_clear_in_daysNo

TDQS

C2.6/5.0
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 mentions relying on held crops and machines owned but does not disclose limitations, dependencies (e.g., save configuration), or the content of the referenced 'note' with multipliers/cycle-day caveats.

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

Conciseness3/5

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

The description is a single short sentence, but its structure is somewhat cryptic with backtick formatting and missing explanation of the note. It is concise but at the cost of clarity.

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?

With an output schema present, return values are covered, but the description omits prerequisites (e.g., save configuration) and does not explain the note's caveats, leaving the tool's overall context incomplete for an agent.

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 coverage is 100%, but the description adds no additional meaning to parameters like artisan, extra_jars, extra_kegs, or save_path. Only 'days' is mentioned, which is already in the schema. Description fails to augment the schema.

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 calculates kegs/jars needed and estimated gross gold from held crops and machines owned, distinct from siblings like processing or processing_value by focusing on planning to clear a backlog.

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 explicit guidance on when to use this tool versus siblings like processing or processing_value. The reference to a 'note' for caveats is mentioned but not provided, leaving usage context incomplete.

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

processing_valueA

Rank ways to sell a crop: raw (Tiller + quality) vs keg (wine/juice) vs jar (jelly/pickle). See note for multipliers.

ParametersJSON Schema
NameRequiredDescriptionDefault
itemYesCrop name, e.g. 'Cranberries'.
kindNoForce fruit/veg; empty = auto-detect from save.
artisanNoApply Artisan +40%: auto/true/false.auto
qualityNoStar quality for the raw-sale comparison.normal
save_pathNoPath to a save file OR a save folder (e.g. .../Saves/Farm_123 or .../Saves/Farm_123/Farm_123). Leave empty to use the save configured at server startup (--save/--save-dir or SDV_SAVE_PATH/SDV_SAVE_DIR). The server never auto-discovers saves; one must be configured or passed explicitly.
base_priceNoOverride base sell price. 0 = look up.

Output Schema

ParametersJSON Schema
NameRequiredDescription
bestNo
itemNo
kindNo
noteNo
errorNo
tillerNo
valuesNo
artisanNo
base_priceNo
best_valueNo
quality_for_rawNo

TDQS

A3.7/5.0
Behavior3/5

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

No annotations are provided, so the description carries the full burden. It mentions ranking methods and references multipliers, hinting at calculations. However, it does not detail how processing time, seed costs, or artisan profession are handled. The input schema lists relevant parameters (artisan, quality, base_price) but the description does not elaborate on their role.

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?

Two sentences efficiently communicate the tool's purpose and a key detail (multipliers). No redundant information, and the structure is front-loaded with the main action. Could add a bit more context without bloating, but it's well-sized.

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?

Given the complete input schema and existence of an output schema (not shown but indicated), the description sufficiently explains the tool's function. It lacks explicit mention of output format, but that is covered by the output schema. Additional details about edge cases or prerequisites would be nice, but not essential.

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% with clear parameter descriptions. The description adds context by explaining the ranking purpose and referring to multipliers, which complements the schema. It does not provide additional detail beyond the schema and the overall goal, so the added value is moderate.

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 it ranks ways to sell a crop, specifying raw (with Tiller + quality), keg (wine/juice), and jar (jelly/pickle). This distinguishes it from sibling tools like 'processing' and 'processing_planner' which likely focus on processing plans or general processing, not value comparison.

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?

The description implies usage when you have a crop and want to compare selling methods, but it does not explicitly state when to use versus alternatives. No 'when not to use' or exclusions are provided, despite a large sibling list including tools like 'animal_product_value' and 'crop_quality_odds'.

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

questsA

Every player's active quest journal + the special-orders board. For item delivery/harvest/resource quests it names the requested item, counts how many are on hand (across all backpacks + chests), and flags completable_now when you already hold enough to turn in. Monster/fishing/socialize quests report progress counters. Set research=True to attach wiki guidance per quest.

ParametersJSON Schema
NameRequiredDescriptionDefault
researchNoFetch wiki context to explain how to complete each quest: the requested item's infobox (how/where to obtain) for item quests, plus a wiki search for the quest title. Needs network.
save_pathNoPath to a save file OR a save folder (e.g. .../Saves/Farm_123 or .../Saves/Farm_123/Farm_123). Leave empty to use the save configured at server startup (--save/--save-dir or SDV_SAVE_PATH/SDV_SAVE_DIR). The server never auto-discovers saves; one must be configured or passed explicitly.
research_limitNoMax quests to research when research=True (caps wiki calls).

TDQS

A4.6/5.0
Behavior5/5

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

With no annotations, the description fully bears the burden of behavioral disclosure. It accurately describes what the tool returns for each quest type, including item counts across all containers, the `completable_now` flag, and progress counters. It also explains the research parameter's effect.

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?

The description is concise: two sentences front-load the main purpose and detail, with no extraneous information. Every sentence adds value.

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?

Despite no output schema, the description provides substantial context about what is returned (quest details, counts, flags). It lacks explicit mention of the output structure or format, but is complete enough for an agent to understand the tool's function.

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

Parameters4/5

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

Schema coverage is 100%, so baseline 3. The description adds meaning beyond the schema by explaining that research fetches wiki context (infobox for items, wiki search for quest title) and clarifying save_path behavior for default saves.

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 that the tool returns 'every player's active quest journal + the special-orders board' and details what information is provided for different quest types (item delivery/harvest/resource, monster/fishing/socialize). This distinguishes it from siblings by being the primary quest status tool.

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?

The description explains when to use the tool (to view active quests and check completion readiness) and the optional research parameter. It does not explicitly state when not to use it, but given the sibling list, no alternative tool exists for this purpose.

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

ready_to_collectB

What's ready right now: placed machines whose product is ready to collect (kegs/jars/mayo/cheese/tappers/mushroom boxes/crab pots) and crops ready to harvest in tilled soil.

ParametersJSON Schema
NameRequiredDescriptionDefault
save_pathNoPath to a save file OR a save folder (e.g. .../Saves/Farm_123 or .../Saves/Farm_123/Farm_123). Leave empty to use the save configured at server startup (--save/--save-dir or SDV_SAVE_PATH/SDV_SAVE_DIR). The server never auto-discovers saves; one must be configured or passed explicitly.

TDQS

B3.4/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden for behavioral disclosure. It only lists the items checked, without explaining whether the tool is read-only, if it modifies game state, or any other behavioral traits like required permissions or rate limits. This is a significant gap for a tool that likely runs a complex check.

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 that clearly conveys the tool's purpose without unnecessary words. However, it lacks structural elements like bullet points or separation of ideas that could improve readability for an AI agent.

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?

Given the tool has one parameter and no output schema, the description sufficiently explains what resources are checked. However, it does not describe the output format (e.g., a list of item names) or any other return details, leaving some ambiguity for the agent.

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 coverage is 100% with a single parameter 'save_path' whose description is thorough. The tool description adds no additional information beyond the schema, so the baseline score of 3 is appropriate.

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?

Description clearly specifies the tool's function: listing ready-to-collect items from machines and harvestable crops. It uses specific verbs ('collect' and 'harvest') and enumerates resource types (kegs, jars, mayo, cheese, tappers, mushroom boxes, crab pots, tilled soil crops). This distinguishes it from sibling tools like 'machines' or 'crop_planner' that may have overlapping but distinct purposes.

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?

The description implies the tool should be used to check what is currently ready to collect or harvest, but it does not explicitly state when to use it versus alternatives like 'machines' for machine status or 'overview' for general farm status. No exclusions or when-not-to-use guidance is provided.

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

shipping_trackerB

What the host has shipped (basicShipped) by name with lifetime quantities, plus distinct count vs the 154-item Full Shipment / perfection target.

ParametersJSON Schema
NameRequiredDescriptionDefault
save_pathNoPath to a save file OR a save folder (e.g. .../Saves/Farm_123 or .../Saves/Farm_123/Farm_123). Leave empty to use the save configured at server startup (--save/--save-dir or SDV_SAVE_PATH/SDV_SAVE_DIR). The server never auto-discovers saves; one must be configured or passed explicitly.

TDQS

B3.2/5.0
Behavior2/5

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

No annotations are provided, so the description must fully convey behavioral traits. It does not mention if the tool is read-only, modifies state, or requires specific permissions. While the description implies a read operation by showing data, it does not explicitly disclose non-destructive behavior or potential side effects.

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?

The description is a single, well-structured sentence that conveys the core functionality without any wasted words. It fully explains the output in a front-loaded manner.

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?

Given the single optional parameter and no output schema, the description adequately explains what the tool returns (items with quantities and a distinct count). It covers the key behavioral aspects for an experienced user, though a novice might need more context on 'basicShipped' or the '154-item target'. Still, it is sufficiently complete for typical use.

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 coverage is 100% with a detailed description of 'save_path'. The tool description does not mention the parameter or add any context beyond the schema. According to the calibration, high coverage (>80%) gives a baseline of 3, and since the description adds no extra value for parameters, a score of 3 is appropriate.

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 shows shipped items with quantities and a comparison to a perfection target. It uses the verb 'has shipped' which implies a retrieval/display function, and distinguishes the output from sibling tools like 'inventory' or 'perfection' by focusing on shipped items and the specific 154-item target.

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 on when to use this tool versus alternatives like 'inventory' or 'perfection'. The description does not mention prerequisites, when not to use it, or how it differs from siblings. The context signals list many similar tools but no differentiation is provided.

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

skill_xp_forecastA

Actions needed to reach a target skill level from current save XP. Supply item_price (crop harvest) OR per_action_xp. Food buffs do NOT change XP.

ParametersJSON Schema
NameRequiredDescriptionDefault
skillYesWhich skill to forecast.
playerNoPlayer/farmhand name; empty = host player.
save_pathNoPath to a save file OR a save folder (e.g. .../Saves/Farm_123 or .../Saves/Farm_123/Farm_123). Leave empty to use the save configured at server startup (--save/--save-dir or SDV_SAVE_PATH/SDV_SAVE_DIR). The server never auto-discovers saves; one must be configured or passed explicitly.
item_priceNoBase sell price of a crop harvest -> uses the farming XP formula. 0 = unused.
target_levelYesGoal level 1-10.
per_action_xpNoXP per action override (e.g. 5 for petting/collecting; use for fishing). 0 = unused.

Output Schema

ParametersJSON Schema
NameRequiredDescription
noteNo
errorNo
skillNo
actionNo
playerNo
target_xpNo
current_xpNo
target_levelNo
xp_remainingNo
current_levelNo
xp_per_actionNo
actions_neededNo

TDQS

A4.2/5.0
Behavior3/5

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

With no annotations, the description carries full burden. It discloses that food buffs do not affect XP, which is a key behavioral trait, but does not cover error handling, default behaviors, or what happens if both parameters are supplied.

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?

Two concise sentences with essential information front-loaded. No wasted words or repetition of schema details.

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?

Given the presence of an output schema, the description adequately covers the tool's purpose, key parameters, and a behavioral note. It misses details on save path handling or default player, but for a forecasting tool this is sufficient.

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

Parameters4/5

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

Schema coverage is 100%, baseline 3. The description adds value by explaining the conditional OR relationship between item_price and per_action_xp, and clarifies that food buffs are irrelevant, going beyond schema descriptions.

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 forecasts actions needed to reach a target skill level. It distinguishes from siblings like fishing_xp_forecast by covering all skills, and includes specific parameter guidance.

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?

Provides clear context on when to use (forecast XP actions) and parameter choices (item_price OR per_action_xp). However, does not explicitly contrast with the sibling fishing_xp_forecast or state exclusions.

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

sprinkler_planC

Sprinklers + materials to water tiles, and whether the save's bars can build them.

ParametersJSON Schema
NameRequiredDescriptionDefault
tilesYesNumber of tilled tiles to water.
save_pathNoPath to a save file OR a save folder (e.g. .../Saves/Farm_123 or .../Saves/Farm_123/Farm_123). Leave empty to use the save configured at server startup (--save/--save-dir or SDV_SAVE_PATH/SDV_SAVE_DIR). The server never auto-discovers saves; one must be configured or passed explicitly.
sprinklerNoSprinkler type (coverage 4/8/24).Quality

Output Schema

ParametersJSON Schema
NameRequiredDescription
noteNo
errorNo
tilesNo
shortfallNo
sprinklerNo
buildable_nowNo
coverage_eachNo
materials_neededNo
materials_on_handNo
sprinklers_neededNo

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations, the description should disclose behavioral traits. It only hints at output (materials and affordability check) without details on side effects, limitations, or return format. The output schema exists but the description does not complement it.

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?

Single sentence covering core functionality. No unnecessary words. Could be slightly more structured, but effective.

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 description covers the main purpose but omits details like output interpretation or edge cases. Given the output schema exists, it is partially complete but leaves the agent to infer return values.

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 the baseline is 3. The description ties parameters together but adds minimal new semantic meaning beyond what is already in the schema (e.g., tiles, sprinkler type).

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 purpose: providing sprinkler and material requirements to water a given number of tiles, and checking affordability. However, it does not explicitly distinguish from sibling planning tools like crop_planner or processing_planner.

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 on when to use this tool versus other planning tools. The description lacks context about prerequisites, alternatives, or typical use cases.

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

unlocksA

Which gated locations/vendors are reachable in THIS save (Desert + Desert Trader, Sewers/Krobus, Skull Cavern, Casino, Quarry, Greenhouse, Minecarts, Movie Theater, Adventurer's Guild, Ginger Island) with what each gates and, if locked, how to unlock it. Use this to filter item-acquisition advice to what's actually available (e.g. don't suggest the Desert Trader if the bus isn't fixed).

ParametersJSON Schema
NameRequiredDescriptionDefault
save_pathNoPath to a save file OR a save folder (e.g. .../Saves/Farm_123 or .../Saves/Farm_123/Farm_123). Leave empty to use the save configured at server startup (--save/--save-dir or SDV_SAVE_PATH/SDV_SAVE_DIR). The server never auto-discovers saves; one must be configured or passed explicitly.

TDQS

A3.9/5.0
Behavior3/5

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

No annotations are provided, so the description carries the full burden. It describes the tool's output (which locations and unlock info) but does not explicitly state read-only nature, prerequisites, or side effects. The implication is read-only, but it could be more explicit.

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?

Description is structured with a clear first sentence defining purpose, followed by usage guidance. It is slightly verbose due to listing all locations, but every sentence adds value and it is well front-loaded.

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?

Given the simple input (one optional param with schema coverage) and no output schema, the description adequately explains what the tool returns: reachable locations with gate info and unlock methods. It provides sufficient context for an agent to use the tool correctly.

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 coverage is 100% with a detailed description of the only parameter (save_path). The tool description does not add additional parameter semantics beyond what the schema already provides, so baseline 3 is appropriate.

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?

Description uses specific verb (list) and clearly specifies the resource (gated locations/vendors reachable in current save), including a list of examples and a concrete use case that distinguishes it from siblings (e.g., filtering item-acquisition advice).

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?

Description explicitly states when to use the tool: 'Use this to filter item-acquisition advice to what's actually available' with an illustrative example. It does not provide exclusions or when-not-to-use, but the context is clear.

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

villager_scheduleA

A villager's daily schedule from the wiki, paired with YOUR save context (current date, weather, and hearts) so you can pick the matching conditional branch. Schedules depend on season/day/weather/hearts/events, so read the wiki text against the context provided.

ParametersJSON Schema
NameRequiredDescriptionDefault
villagerYesVillager name, e.g. 'Abigail'.
save_pathNoPath to a save file OR a save folder (e.g. .../Saves/Farm_123 or .../Saves/Farm_123/Farm_123). Leave empty to use the save configured at server startup (--save/--save-dir or SDV_SAVE_PATH/SDV_SAVE_DIR). The server never auto-discovers saves; one must be configured or passed explicitly.

TDQS

A3.7/5.0
Behavior3/5

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

With no annotations, the description carries the behavioral disclosure burden. It explains the tool uses save context to filter schedules and is paired with user context, but does not state read-only nature, error handling, or output format.

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?

Two sentences, each earning its place: first defines purpose, second provides usage guidance. No redundancy or filler.

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?

Given no output schema and moderate complexity, the description adequately explains the tool's job but lacks details on return structure or specific behavior when context is missing.

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 coverage is 100% with clear parameter descriptions. The tool description adds 'paired with context' but no additional semantic value beyond the schema. Baseline 3 applies.

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?

Describes a specific verb-resource pair: retrieving a villager's schedule and pairing it with save context to pick the correct conditional branch. Clearly distinguishes from sibling wiki tools by emphasizing context integration.

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?

Tells the agent to 'read the wiki text against the context' and mentions dependencies (season, day, etc.), but does not explicitly differentiate from alternatives like wiki_page or daily_briefing.

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

walletA

Special keys/items owned (Rusty Key, Skull Key, Club Card, etc.). Reads 1.6 mail flags + legacy booleans, so it's correct on 1.5 and 1.6 saves.

ParametersJSON Schema
NameRequiredDescriptionDefault
save_pathNoPath to a save file OR a save folder (e.g. .../Saves/Farm_123 or .../Saves/Farm_123/Farm_123). Leave empty to use the save configured at server startup (--save/--save-dir or SDV_SAVE_PATH/SDV_SAVE_DIR). The server never auto-discovers saves; one must be configured or passed explicitly.

TDQS

A3.8/5.0
Behavior4/5

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

Without annotations, the description discloses how it works (reads 1.6 mail flags + legacy booleans) and confirms correctness across save versions. This provides good behavioral context beyond just naming the output.

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?

Two sentences covering purpose and technical nuance. Every word earns its place; no redundancy or fluff.

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?

For a simple retrieval tool with one optional parameter and no output schema, the description is adequate. It specifies type of items and version handling; could optionally list more items but not necessary.

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 coverage is 100%, so baseline is 3. The description does not add further parameter details; it only states the purpose. No added value or contradiction.

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's purpose: retrieving owned special keys/items (Rusty Key, Skull Key, Club Card, etc.), which distinguishes it from sibling tools like 'inventory' or 'chests'.

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 explicit guidance on when to use this tool vs. alternatives (e.g., inventory). The description only mentions version compatibility, not context or exclusions.

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

wiki_infoboxA

A page's infobox as structured key/value fields (price/season/location) - the most reliable surface for verification.

ParametersJSON Schema
NameRequiredDescriptionDefault
titleYesExact page title, e.g. 'Sturgeon'.

TDQS

A3.5/5.0
Behavior3/5

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

No annotations are provided, so the description carries full burden. It discloses that the output is structured key/value fields, which is helpful. However, it doesn't state whether the tool is read-only, requires authentication, or has any limitations. With no annotations, a score of 3 is appropriate as it provides core behavior but lacks depth.

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 that efficiently conveys purpose and value. It is front-loaded with the core function and ends with a compelling reason to use it. No unnecessary words.

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?

Given the tool's simplicity (one parameter, no nested objects, no output schema) and the rich set of sibling tools, the description provides sufficient context. It explains what the tool returns and hints at when to prefer it over others ('most reliable for verification'). Completeness is adequate for this scope.

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 coverage is 100% (single required parameter 'title' with a clear description). The tool description adds no additional meaning beyond the schema's 'Exact page title, e.g. 'Sturgeon''. Baseline of 3 is warranted as the schema already does the heavy lifting.

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?

Description clearly states the tool retrieves a page's infobox as structured key/value fields, referencing common fields like price/season/location. It distinguishes from siblings by calling it the 'most reliable surface for verification', implying use for fact-checking. However, it doesn't explicitly state the verb (e.g., 'get' or 'retrieve').

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?

The description implies usage for verification (most reliable surface) but provides no explicit when-to-use or when-not-to-use guidance. It does not mention alternatives such as 'wiki_page' for full content or 'wiki_search' for finding pages, so usage context is only implied.

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

wiki_pageA

Fetch a wiki page as cleaned plain text - to VERIFY facts and pull context (prices, seasons, locations, event schedules).

ParametersJSON Schema
NameRequiredDescriptionDefault
rawNoReturn raw wikitext instead of cleaned text.
titleYesExact page title, e.g. 'Sturgeon'. Redirects are followed.
sectionNoOptional heading (e.g. 'Prizes', 'Fish Pond') to return only that section.

TDQS

A4.2/5.0
Behavior4/5

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

No annotations exist, so the description carries full burden. It discloses output format ('cleaned plain text'), the raw option, redirect behavior, but does not mention error cases (e.g., non-existent pages) or rate limits. Adequate but not exhaustive.

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?

Single sentence with dash and parenthetical list, front-loaded with the action and purpose. No wasted words; every element adds value.

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 explains return type ('cleaned plain text') and includes a raw option. It does not detail exact return structure but is sufficient for a simple fetch tool. Could be more specific about what 'cleaned' means.

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 coverage is 100%, so baseline is 3. The description reinforces the purpose but adds no new semantic detail beyond the schema definitions for the parameters.

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 states a specific verb ('Fetch') and resource ('wiki page'), with a clear purpose ('VERIFY facts and pull context') and concrete examples of content types. This distinguishes it from siblings like wiki_infobox or wiki_search.

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?

The description provides clear context for when to use the tool (fact verification, context extraction) but does not explicitly mention when not to use it or name alternative tools.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 49 tool updatesv0.2.12
    • First observedanimal_product_quality
    • First observedanimal_product_value
    • First observedbuild_planner
    • First observedbuildings
    • First observedbundle_sourcing
    • First observedcan_complete_now
    • First observedchests
    • First observedcommunity_center
    • First observedcrop_planner
    • First observedcrop_quality_odds
    • First observeddaily_briefing
    • First observedfeed
    • First observedfind_item
    • First observedfish_available
    • First observedfish_pond_forecast
    • First observedfishing_xp_forecast
    • First observedfriendship_forecast
    • First observedfriendships
    • First observedfull_report
    • First observedgift_helper
    • First observedgolden_walnuts
    • First observedhow_to_obtain
    • First observedinventory
    • First observedlist_buffs
    • First observedmachines
    • First observedmissing_museum
    • First observedmissing_recipes
    • First observedmods
    • First observedmonster_goals
    • First observedmuseum
    • First observednet_worth
    • First observedoverview
    • First observedperfection
    • First observedplayer_tools
    • First observedplayers
    • First observedprocessing
    • First observedprocessing_planner
    • First observedprocessing_value
    • First observedquests
    • First observedready_to_collect
    • First observedshipping_tracker
    • First observedskill_xp_forecast
    • First observedsprinkler_plan
    • First observedunlocks
    • First observedvillager_schedule
    • First observedwallet
    • First observedwiki_infobox
    • First observedwiki_page
    • First observedwiki_search

TDQS

B3.4/5.0

Scored across 49 tools

Disambiguation5/5

Each tool has a clearly distinct purpose, covering specific aspects of the game like crops, animals, fishing, community center, etc. Even closely related tools like animal_product_quality and animal_product_value measure different metrics.

Naming Consistency4/5

Most tool names follow a descriptive noun_verb or verb_noun pattern (e.g., crop_planner, find_item), but some are single words (e.g., buildings, friends) without a verb, creating minor inconsistency.

Tool Count2/5

With 49 tools, the server is overly large for a typical MCP. While each tool serves a specific purpose, the set could be consolidated (e.g., combining related queries). This number exceeds the recommended range and may overwhelm agents.

Completeness5/5

The tool set covers nearly every facet of Stardew Valley—crops, animals, fishing, mining, community center, friendships, museum, perfection, and more. It includes planning, analysis, and lookup tools, leaving few gaps for the intended domain.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Read-only MCP server for Rocket Money that lets you browse your accounts, transactions, spending, budgets, net worth, and subscriptions through natural language.
    9
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    A read-only MCP server that serves live HayDay game data (crops, products, animals, machines, level unlocks) for AI agents to help plan your farm without interacting with the game itself.
    11
    MIT
  • F
    license
    Not graded
    quality
    C
    maintenance
    Exposes the Stardew Valley Wiki as structured data via MCP tools for keyword/semantic search, page retrieval, and entity listings.
    -
  • F
    license
    Not graded
    quality
    D
    maintenance
    MCP server that exposes RuneScape 3 data from the RuneMetrics, Grand Exchange, and RuneScape Wiki APIs, enabling natural language queries for player profiles, XP gains, quests, item prices, and wiki content.
    -