Skip to main content
Glama
Garden Design MCP Server

Garden Design MCP Server

get_objects

Retrieve garden objects such as plants, buildings, and ground shapes; filter by layer, or return aggregated counts for large scenes to avoid exceeding token limits.

Instructions

Get garden objects (plants, buildings, ground shapes). Default: full array. Optionally filter by layer. Pass count_only=true on large scenes to get aggregated counts ({total, byLayer, byType, byProductId}) instead of the array — avoids exceeding the tool-result token budget.

Tool call template

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

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

Input Schema

NameRequiredDescriptionDefault
layerNoOptional: Filter by layer
count_onlyNoWhen true, return { total, byLayer, byType, byProductId } instead of the full object array. Honors the layer filter. Recommended for scenes with many objects.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv2.9.3

TDQS

A4/5.0
Behavior4/5

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

With no annotations supplied, the description carries the full load and does reasonably well: it discloses the default return (full array), the exact shape of the alternative return ({total, byLayer, byType, byProductId}), and the token-budget rationale for choosing it. It does not mention ordering, result caps, or whether the layer filter applies to the default array as well as counts.

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?

Three compact sentences, front-loaded with the resource definition, then the default behavior, then the escape hatch for large scenes. No filler and no repetition.

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?

Since there is no output schema, the description usefully documents both possible return shapes and the condition that selects each. It stops short of describing what fields an individual object carries or any size limits, which is a minor gap for a tool whose whole point is managing result size.

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%, and both parameter descriptions already explain the layer enum and count_only behavior, so the schema does most of the work. The description mainly restates the count_only semantics while adding the output shape and the token-budget motivation behind 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 a specific verb and resource (get garden objects) and concretely enumerates what counts as an object (plants, buildings, ground shapes). It does not explicitly differentiate from the closely related sibling get_objects_in_zone, which keeps it from a 5.

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

Usage Guidelines4/5

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

It gives a clear decision rule for the optional branch: use count_only=true on large scenes, otherwise the default is the full array. The missing piece is routing guidance against siblings such as get_objects_in_zone or get_full_state, so the agent must infer when this tool is preferred over those.

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