Skip to main content
Glama

Server Details

Design & price modular raised garden beds and walls: exact bill of materials, EUR price + checkout.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Uptime
100.0% over 60 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A4.1/5.0

Scored across 11 tools

Disambiguation3/5

Several pairs overlap: studio_templates_list and studio_design_options both describe supported shapes and dimension parameters, while studio_create_design and studio_pricing_quote both compute prices and parts. Descriptions help distinguish them, but an agent could easily misselect, especially when a user asks for pricing alone or for a design overview.

Naming Consistency4/5

All tools use the same studio_ snake_case prefix, which makes the set predictable. The only minor inconsistency is that most names are noun phrases (design_options, plant_catalog) while one is verb_noun (create_design), but the convention is otherwise stable.

Tool Count5/5

Eleven tools is well-scoped for a garden design assistant: it covers design creation, pricing, catalogs, reference material, FAQ, and delivery checks without excessive duplication. Each tool has a plausible role, though studio_bom_to_cart is disabled and could be pruned.

Completeness4/5

The surface covers the core design workflow: understanding options, choosing plants, creating a design link, quoting prices, and checking delivery. Minor gaps exist around shipping estimates and order tracking, but purchasing is explicitly unavailable, and the disabled studio_bom_to_cart is a deliberate dead end rather than a missing capability.

Available Tools

11 tools
studio_bom_to_cartGridGarden purchase via AI assistant (temporarily unavailable)
Destructive
Inspect

Purchasing through an AI assistant is temporarily unavailable. The customer can buy on https://gridgarden.eu. This tool does not create a cart; use studio_pricing_quote for the bill of materials and price.

ParametersJSON Schema
NameRequiredDescriptionDefault
shapeYesDesign type and the dimension fields it needs (all in mm, auto-snapped to the 60mm build grid): rectangle → length + width; lshape → length1 + width1 + length2 + width2; ushape → topLength + topWidth + arm1Length + arm1Width + arm2Length + arm2Width; wall → wallLength. Layers: raised beds 2–13, walls 1–25. Call studio_templates_list for ready example dimensions.
widthNoRectangle: outer width in mm.
layersYesNumber of brick layers. Raised beds 2-13, walls 1-25 (1 = a single 60mm top-cap course). Each layer ≈120mm tall (top layer +60mm).
lengthNoRectangle: outer length in mm.
width1NoL-shape: first leg width in mm.
width2NoL-shape: second leg width in mm.
countryNoDelivery market as an ISO-3166-1 alpha-2 code (e.g. "DE", "AT", "SK"). Prices differ by market: SK is the base price list; every other market (CZ included) has its own list where structural pieces cost a little more (weight-based delivery surcharge; connector pins stay at base). Ask which country the order ships to; omit only if unknown — that returns SK (base) prices.
length1NoL-shape: first leg length in mm.
length2NoL-shape: second leg length in mm.
topWidthNoU-shape: back (top) width in mm.
arm1WidthNoU-shape: arm 1 width in mm.
arm2WidthNoU-shape: arm 2 width in mm.
topLengthNoU-shape: back (top) length in mm.
arm1LengthNoU-shape: arm 1 length in mm.
arm2LengthNoU-shape: arm 2 length in mm.
utm_sourceNoAttribution source recorded on the Shopify cart (UTM). Defaults to "mcp".
wallLengthNoWall: single straight segment length in mm.
studio_catalog_bricksGridGarden Brick Premium catalog + live pricesA
Read-only
Inspect

List the GridGarden Brick Premium modular components — middle and TOP planks in XS–XL sizes (plus a 1200mm XXL TOP) and the connector pin — with live EUR unit prices and availability from Shopify. Brick Premium only; no other materials are sold. Read-only.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
catalogYes
summaryYes
currencyYes

TDQS

A4.5/5.0
Behavior4/5

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

Annotations declare readOnlyHint and openWorldHint. The description adds that prices are live from Shopify and in EUR, and that the tool is read-only, consistent with annotations. No contradictions.

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 efficiently convey purpose, scope, and constraints. No wasted words.

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

Completeness5/5

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

For a simple listing tool with no parameters, the description fully covers what it does, what it lists, and the source of data. No gaps.

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?

There are no parameters, so schema coverage is 100%. Baseline is 4. Description does not need to add parameter info; it is complete for a zero-parameter tool.

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 lists specific GridGarden Brick Premium components (planks and connector pin) with live prices and availability. It explicitly names the product line and components, distinguishing it from sibling tools like studio_pricing_quote.

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 specifies that it is a read-only catalog for Brick Premium only, indicating when to use it. It implies not for other materials or pricing quotes, but does not explicitly state alternatives.

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

studio_create_designCreate a GridGarden Studio design for the userAInspect

Prepare a design in GridGarden Studio for the user and return a link that opens it in the editor, plus the price WITH VAT and the parts list. Use it when the user wants to see/try a raised bed layout or a garden plan: a Brick Premium raised bed (rectangle / L / U / wall, mm) and optionally a whole garden (plot shape and size, house, entrance, style, wants, plants). Give what the user told you; for anything they did not say either omit it or pass it in assumed — never invent silently. Unknown values are rejected with a clear message (no silent fallback). The link opens the editor directly (no welcome window), the user can edit and order there. Price and parts are computed by Studio itself; quote price.total_incl_vat (with VAT) and say the country. Nothing is paid or ordered here, and no AI image generation is started. The design is saved anonymously (no personal data); anyone with the link can open it, the first edit makes the user their own copy.

ParametersJSON Schema
NameRequiredDescriptionDefault
bedsNoHow many identical beds (1–20). Needs shape. Price and parts are for all of them.
linkNoOptional: a ready GridGarden Studio link (https://gridgarden.eu/studio/<lang>/design/new?v=1&…). Its query is used as the input; the other fields below override it. Normally leave this out and pass the fields.
plotNoPlot shape: rect | narrow | l | other (other = rectangle for now).
entryNoWhere the gate/entrance is: left | middle | right (on the street side unless entrySide).
houseNoWhere the house stands (street at the bottom): street | middle | back | corner | none.
northNoNorth direction in degrees 0–360 (accepted, not used yet)
plotDNoPlot depth away from the street, mm (3000–200000)
plotWNoPlot width at the street, mm (3000–200000; 12 m = 12000)
shapeNoRaised bed / wall type: rectangle | lshape | ushape | wall. Needs its dimensions and layers (see studio_design_options).
styleNoGarden style: modern-minimal | cottage | scandinavian | naturalistic | family-productive | mediterranean-gravel | japanese | formal | open (let the design decide).
wantsNoWhat the user wants: veg, seating, kids, pets, lowcare, nolawn.
widthNorectangle: outer width, mm
entryXNoEntrance position along the boundary, mm
houseDNoHouse depth, mm
houseWNoHouse width, mm
houseXNoHouse x, mm from the lower-left plot corner at the street (with houseY)
houseYNoHouse y, mm from the street (with houseX)
layersNoBrick layers (raised beds 2–13, walls 1–25; each ≈120 mm tall).
lengthNorectangle: outer length, mm
localeNoLanguage of the Studio page the user will open (sk cs de en fr hu it nl pl ro). Use the language the user speaks. Default en.
plantsNoPlant keys from studio_plant_catalog. They are saved as the user's planting wishes in the design; the planting itself (where each plant stands) is done in Studio.
width1Nolshape: first leg width, mm
width2Nolshape: second leg width, mm
assumedNoFields the user did NOT say and you guessed (they are shown as "estimated" in Studio). Always list them honestly.
countryNoDelivery country, ISO-3166-1 alpha-2 (DE, AT, SK…). Prices differ by market; ask the user. Omit only if unknown (then SK base prices, said in the result).
length1Nolshape: first leg length, mm
length2Nolshape: whole second leg length incl. the corner, mm
plotCutNoplot=l: which corner is missing (default ne = back right; the street is at the bottom).
terraceNoExisting terrace as a grid cell "1"–"9" (or "none").
plotAreaNoPlot area in m2 if the user knows only that (9–40000); the plot becomes a rectangle estimate
plotCutDNoplot=l: depth of the missing corner, mm
plotCutWNoplot=l: width of the missing corner, mm
terraceXNoTerrace x, mm (with terraceY)
terraceYNoTerrace y, mm (with terraceX)
topWidthNoushape: back width, mm
arm1WidthNoushape: arm 1 width, mm
arm2WidthNoushape: arm 2 width, mm
entrySideNoBoundary of the entrance: street (default) | left | right | back.
houseCellNoHouse position as a 3x3 grid cell 1–9, keypad layout 7 8 9 / 4 5 6 / 1 2 3 (street below 1 2 3).
houseSideNohouse=corner: which side.
topLengthNoushape: back length, mm
arm1LengthNoushape: arm 1 length, mm
arm2LengthNoushape: arm 2 length, mm
from_agentNoWhich assistant you are (chatgpt, claude, perplexity, gemini, copilot, or mcp/agent). Used only for anonymous counting. Default mcp.
wallLengthNowall: length, mm

Output Schema

ParametersJSON Schema
NameRequiredDescription
modeYes
partsYes
priceYes
savedYes
designYesNormalized design (dimensions after snapping to the 60 mm grid).
assumedYes
snappedNo
summaryYes
scene_idNo
warningsYes
save_noteNo
design_urlYesOpen this: the saved design in Studio (or the prefill link when saved=false).
prefill_urlYesThe same design as a stateless prefill link (works without the saved scene).
link_versionYes
no_price_reasonNo

TDQS

A4.6/5.0
Behavior5/5

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

Beyond the annotations (readOnly=false, destructive=false, openWorld=true), it discloses a lot that the structured fields cannot: unknown values are rejected with no silent fallback, price/parts are computed by Studio and must be quoted as price.total_incl_vat with the country, nothing is paid or ordered, no AI image generation is started, and the design is stored anonymously with first-edit-copies ownership. The creation semantics align with readOnlyHint=false, so there is no contradiction.

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 dense and front-loaded: the core action and outputs come first, then usage, then input-filling rules and behavioral caveats, with no obvious filler. It runs several sentences long for an already 45-parameter tool, but each sentence carries distinct information.

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

Completeness5/5

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

For a tool this complex, the description is complete: an output schema exists so return values need not be restated, and the description still covers routing to studio_design_options (dimensions/layers) and studio_plant_catalog (plant keys), the pricing/VAT reporting rule, locale/country expectations, and the anonymity/link-sharing model.

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 parameter baseline would be 3, but the description adds cross-cutting semantics the schema does not: how to fill `assumed` honestly ("never invent silently"), that `country` drives market-specific pricing, that the link's query is overridden by explicit fields, and that shape parameters depend on dimensions and layers found via studio_design_options.

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 gives a concrete verb+resource ("Prepare a design in GridGarden Studio") and enumerates the exact outputs (editor link, price WITH VAT, parts list), which differentiates it from price-only and BOM-to-cart siblings in the same family. It also scopes the input domain (Brick Premium raised bed shapes, optional whole garden) so an agent knows precisely what this produces.

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 states an explicit trigger ("Use it when the user wants to see/try a raised bed layout or a garden plan") and sets boundaries ("Nothing is paid or ordered here, and no AI image generation is started"), implicitly excluding ordering and AI-image tools. It does not name an alternative sibling (e.g. studio_ai_designer_link) directly, so the routing is clear but not fully enumerated.

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

studio_delivery_countriesWhere GridGarden deliversA
Read-only
Inspect

List the countries GridGarden delivers Brick Premium raised beds to (ISO codes). Use it before quoting: pass the user's country as country to studio_pricing_quote or studio_create_design. Shipping costs are NOT returned here - they are calculated at checkout from the postcode; do not guess them. Delivery to the USA is not offered.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnlyHint=true, openWorldHint=false), so the bar is lower. The description still adds real context: shipping costs are not returned here, are computed at checkout from the postcode, and should not be guessed. It stops short of describing pagination or exact return shape, but that is minor for a static list.

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 sentences, all front-loaded with the highest-value information first (what it lists, when to call it, what it does not return). No filler.

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

Completeness5/5

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

For a parameterless read-only list tool with no output schema, the description covers what is returned (ISO country codes), the boundary condition (no shipping costs, USA not supported), and the intended downstream usage. Nothing needed to call it correctly is missing.

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 tool takes zero parameters, which is the baseline-4 case. The only parameter-ish detail (passing `country` to other tools) belongs to the downstream tools, not this one, so there is nothing further to add.

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?

States a specific verb (List) and resource (countries delivered to), scoped to Brick Premium raised beds, and notes the return format is ISO codes. This is clearly distinguishable from sibling tools like studio_pricing_quote or studio_catalog_bricks.

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 says when to use it (before quoting) and how to chain it (pass the user's country as `country` to studio_pricing_quote or studio_create_design). It also names an exclusion: delivery to the USA is not offered.

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

studio_design_optionsGridGarden Studio: shapes, sizes, products and link optionsA
Read-only
Inspect

Everything you can pass to studio_create_design (or put in a Studio link): bed shapes with their dimension keys and ready example sizes, plot shapes and size presets, house/entrance/style/wants values, limits, and the product line (Brick Premium only: 60 mm larch snap-in panels and connector pins). Call it first when unsure what values are allowed. Static, free, no prices (use studio_pricing_quote or studio_create_design for prices).

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.6/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and openWorldHint=false, so the safety profile is covered. The description adds meaningful complementary context: 'Static, free, no prices' tells the agent this is a non-mutating, zero-cost lookup and that pricing must be sought elsewhere. It does not describe pagination or response shape, but for a static reference read that 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?

Front-loaded with the scope of the inventory in the first sentence and the routing rule in the second. The mid-sentence enumeration is dense but each item plausibly maps to a value domain the caller needs, so it earns its space; slightly list-heavy but not padded.

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

Completeness5/5

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

There is no output schema, so the description must carry the return-value burden — and it does, enumerating the categories of options returned, including the product line caveat (Brick Premium only, 60 mm larch snap-in panels and connector pins). With zero parameters and annotations covering the safety profile, nothing an agent needs to call this correctly is missing.

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 tool takes zero parameters, so the baseline is 4. The description usefully characterizes the content the caller receives (shapes, dimension keys, size presets, enumerated value sets), which is the closest analogue to parameter meaning for a no-arg reference tool.

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 names a concrete inventory (bed shapes with dimension keys and example sizes, plot shapes and size presets, house/entrance/style/wants values, limits, product line) rather than restating the title. It explicitly contrasts itself with studio_pricing_quote and studio_create_design, so the agent can distinguish it without opening any sibling schema.

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?

It states the trigger condition directly: 'Call it first when unsure what values are allowed.' It also carves out the exclusion — this tool carries no prices, and pricing belongs to studio_pricing_quote or studio_create_design — giving both when-to-use and when-not-use guidance.

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

studio_design_rulesGridGarden garden-design rule book (by design step)A
Read-only
Inspect

List the design-knowledge-base rules relevant to one step of designing a garden (brief / koncept / dispozicia / vysadba / materialy) — up to 20 rules, each with its predicate, numeric thresholds, strength (must/should/may), confidence tag, and cited sources. No garden scene is read or required; this is reference knowledge, not a check against a specific design. Deterministic: the same step always returns the same rule set.

ParametersJSON Schema
NameRequiredDescriptionDefault
stepYesDesign process step to fetch rules for: brief, koncept, dispozicia, vysadba, materialy. Call this once per step you are working on — do not assume one step's rules cover another.

Output Schema

ParametersJSON Schema
NameRequiredDescription
stepYes
rulesYes
totalYes
summaryYes
truncatedYes

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already carry readOnlyHint=true and openWorldHint=false, and the description is consistent with both. It adds value beyond annotations by disclosing determinism ('the same step always returns the same rule set'), the reference-only nature ('No garden scene is read or required'), and the output structure (up to 20 rules with predicate, thresholds, strength, confidence, sources). No contradiction with annotations.

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?

Three dense sentences with no filler. The main purpose is front-loaded, followed by the reference-not-check clarification and the determinism guarantee. Slightly more detail than strictly needed given the schema and annotations, but every sentence earns its place.

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

Completeness5/5

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

Complete for a single-parameter reference tool. The output schema covers the return format, annotations cover the read-only safety profile, and the description adds the determinism guarantee and the no-scene-required clarification. An agent has everything needed to call it 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% and the enum fully specifies the step values with descriptions, so the schema already does the heavy lifting. The tool description merely restates the step values and adds the 'one step at a time' constraint, which the schema description already conveys. Baseline 3 is appropriate when the schema covers all parameter semantics.

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 names a specific verb ('List') and resource ('design-knowledge-base rules') scoped to a single design step, and enumerates the five valid steps (brief/koncept/dispozicia/vysadba/materialy). This clearly differentiates it from the sibling tools, which deal with BOM, catalog bricks, pricing, and templates — entirely different domains.

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 clarifies this is reference knowledge, not a check against a specific garden scene, and the schema description adds explicit per-step guidance: 'Call this once per step you are working on — do not assume one step's rules cover another.' It gives clear usage context but does not explicitly name exclusions against alternatives; differentiation from siblings is implied via domain rather than stated.

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

studio_faqGridGarden Studio facts / FAQA
Read-only
Inspect

Verified short facts about GridGarden Studio for answering users: what Studio is, that it is free, what the free AI design offer is, the beta credits, the product line, and what an AI assistant can and cannot do here. Use it instead of guessing. Returns plain facts, no prices.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4/5.0
Behavior4/5

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

Annotations already establish readOnlyHint=true and openWorldHint=false, so safety is covered. The description adds genuinely new behavioral context: the content is 'verified', it is 'short facts' rather than raw data, and it deliberately excludes pricing.

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 core purpose is front-loaded in the first clause, and the topic enumeration in the middle is informative rather than padding since it tells the agent exactly what questions this tool can answer. Slightly long as a single sentence, but every clause carries scoping 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?

For a zero-parameter, read-only FAQ tool with no output schema, the description covers what comes back ('plain facts, no prices') and the general subject matter well enough to call correctly. Only marginal detail, such as the format of the returned facts, is left unspecified.

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 tool takes zero parameters, so there is nothing for the description to disambiguate; per the baseline this lands at 4. It correctly implies a simple parameterless call with no filtering options.

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?

States a specific verb and resource (returns verified facts about GridGarden Studio) and enumerates the exact topics covered: what Studio is, the free offer, beta credits, product line, and assistant capabilities. The closing boundary 'no prices' implicitly separates it from studio_pricing_quote, though no sibling is named outright.

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?

'Use it instead of guessing' gives a clear trigger for answering user questions, and 'no prices' signals the one thing it should not be used for. No further exclusions or alternative routing are given, but the context is unambiguous for a zero-parameter lookup tool.

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

studio_plant_catalogGridGarden plant catalog (keys for planting)A
Read-only
Inspect

Search the GridGarden plant catalog (346 species) and get the keys you can pass as plants to studio_create_design. Filter by text, category, edible, sun, suitability for raised beds. Free, read-only. Returns at most 40 plants per call (see total).

ParametersJSON Schema
NameRequiredDescriptionDefault
qNoSearch text in Slovak, Czech, English, German or Latin name (e.g. "basil", "rajčina").
sunNoRequired light.
limitNo
edibleNotrue = only edible plants.
categoryNo
raised_bed_okNotrue = only plants suitable for raised beds.

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnlyHint and openWorldHint=false, so the safety profile is covered; the description adds genuinely new behavior: 'Free', a hard result cap of 40 plants per call, and a total count to check (implying a truncated result set the caller must handle). Return shape details beyond that are absent, keeping it at 4.

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 tight sentences, front-loaded with search scope and outcome, then filters, then cost/behavior, then the result cap. Nothing is redundant and every clause carries information.

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 carries the return burden and does so partially: it discloses the 40-item cap, references a total, and identifies the key field for the downstream tool. It does not describe the per-item shape (name, keys, attributes), which an agent building a `plants` payload would benefit from.

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 67% and the description enumerates the filter dimensions (text, category, edible, sun, raised beds), which mirrors the schema names rather than adding format, default, or combination semantics. `limit` is never mentioned in the description, and no guidance is given on how the filters compose. 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?

States a specific verb (Search) and resource (GridGarden plant catalog), quantifies the corpus (346 species), and states the concrete outcome: the keys to pass as `plants` to studio_create_design. That downstream link lets an agent place it precisely against siblings like studio_create_design and studio_catalog_bricks.

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?

Makes the when-to-use clear by tying it to studio_create_design's `plants` argument, and notes it is free and read-only so the agent knows it is safe to call speculatively. It offers no explicit when-not-to-use or named alternative catalog, so it stops short of 5.

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

studio_pricing_quoteGridGarden raised-bed / wall price quote
Read-only
Inspect

Compute the exact bill of materials (panels + connector pins) and total EUR price for a GridGarden modular Brick Premium raised bed (rectangle / L / U) or freestanding wall, from dimensions in millimetres. Quantities come from the same engine as the Studio configurator; prices are read live from the GridGarden product catalog for the delivery market you pass in country. The result carries the price WITH VAT (total_incl_vat, the main price — quote this one to the user, with the VAT rate) and WITHOUT VAT (total_excl_vat; the legacy field total_eur is also WITHOUT VAT). Without country the default market is Slovakia (SK, 23 % VAT) and the result says so.

ParametersJSON Schema
NameRequiredDescriptionDefault
shapeYesDesign type and the dimension fields it needs (all in mm, auto-snapped to the 60mm build grid): rectangle → length + width; lshape → length1 + width1 + length2 + width2; ushape → topLength + topWidth + arm1Length + arm1Width + arm2Length + arm2Width; wall → wallLength. Layers: raised beds 2–13, walls 1–25. Call studio_templates_list for ready example dimensions.
widthNoRectangle: outer width in mm.
layersYesNumber of brick layers. Raised beds 2-13, walls 1-25 (1 = a single 60mm top-cap course). Each layer ≈120mm tall (top layer +60mm).
lengthNoRectangle: outer length in mm.
width1NoL-shape: first leg width in mm.
width2NoL-shape: second leg width in mm.
countryNoDelivery market as an ISO-3166-1 alpha-2 code (e.g. "DE", "AT", "SK"). Prices differ by market: SK is the base price list; every other market (CZ included) has its own list where structural pieces cost a little more (weight-based delivery surcharge; connector pins stay at base). Ask which country the order ships to; omit only if unknown — that returns SK (base) prices.
length1NoL-shape: first leg length in mm.
length2NoL-shape: second leg length in mm.
topWidthNoU-shape: back (top) width in mm.
arm1WidthNoU-shape: arm 1 width in mm.
arm2WidthNoU-shape: arm 2 width in mm.
topLengthNoU-shape: back (top) length in mm.
arm1LengthNoU-shape: arm 1 length in mm.
arm2LengthNoU-shape: arm 2 length in mm.
wallLengthNoWall: single straight segment length in mm.

Output Schema

ParametersJSON Schema
NameRequiredDescription
bomYes
shapeYes
layersYes
countryYes
snappedNo
summaryYes
currencyYes
vat_rateYes
total_eurYes
bom_sourceYes
editor_urlYes
price_noteYes
vat_amountYes
vat_statusYes
price_basisYes
vat_countryYes
price_sourceYes
shopify_itemsYes
total_excl_vatYes
total_incl_vatYes
vat_rate_percentYes
price_source_noteYes
price_not_optimizedNo
vat_market_defaultedYes
studio_templates_listGridGarden Studio templatesA
Read-only
Inspect

List the design shapes GridGarden Studio supports, with the dimension parameters each one needs.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
templatesYes

TDQS

A4.3/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, so the description confirms a read operation. It adds that the tool lists shapes and dimension parameters, but no further behavioral details are needed.

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?

A single, clear sentence that conveys the purpose without any extraneous information.

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

Completeness5/5

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

With no parameters and an output schema present, the description fully covers the tool's functionality. It explains what the tool does and what the response includes.

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?

There are no parameters, so baseline is 4. The description adds value by explaining what the output will contain (shapes and dimension parameters), though schema coverage is 100%.

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 design shapes and their dimension parameters. The sibling tools involve BOM, catalog bricks, and pricing quotes, so this tool is distinctly about template listing.

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 usage for retrieving supported shapes, but does not explicitly state when to avoid it or contrast with siblings. However, the context of sibling tools makes the usage clear.

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. 6 tool updates
    • Addedstudio_ai_designer_link
    • Addedstudio_create_design
    • Addedstudio_delivery_countries
    • Addedstudio_design_options
    • Addedstudio_faq
    • Addedstudio_plant_catalog
  2. 1 tool update
    • Changedstudio_pricing_quote12 fields changed
      • addedOutput schema / properties / price_note
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / price_source
        Added value: +{
        +  "enum": [
        +    "catalog",
        +    "shopify"
        +  ],
        +  "type": "string"
        +}
      • addedOutput schema / properties / price_source_note
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / total_excl_vat
        Added value: +{
        +  "type": "number"
        +}
      • addedOutput schema / properties / total_incl_vat
        Added value: +{
        +  "type": [
        +    "number",
        +    "null"
        +  ]
        +}
      • addedOutput schema / properties / vat_amount
        Added value: +{
        +  "type": [
        +    "number",
        +    "null"
        +  ]
        +}
      • addedOutput schema / properties / vat_country
        Added value: +{
        +  "type": [
        +    "string",
        +    "null"
        +  ]
        +}
      • addedOutput schema / properties / vat_market_defaulted
        Added value: +{
        +  "type": [
        +    "boolean",
        +    "null"
        +  ]
        +}
      • addedOutput schema / properties / vat_rate
        Added value: +{
        +  "type": [
        +    "number",
        +    "null"
        +  ]
        +}
      • addedOutput schema / properties / vat_rate_percent
        Added value: +{
        +  "type": [
        +    "number",
        +    "null"
        +  ]
        +}
      • addedOutput schema / properties / vat_status
        Added value: +{
        +  "enum": [
        +    "included",
        +    "unavailable"
        +  ],
        +  "type": "string"
        +}
      • changedOutput schema / required
        Previous value: -[
        -  "shape",
        -  "layers",
        -  "bom",
        -  "shopify_items",
        -  "total_eur",
        -  "currency",
        -  "country",
        -  "price_basis",
        -  "bom_source",
        -  "summary",
        -  "editor_url"
        -]New value: +[
        +  "shape",
        +  "layers",
        +  "bom",
        +  "shopify_items",
        +  "total_eur",
        +  "currency",
        +  "country",
        +  "price_basis",
        +  "total_incl_vat",
        +  "total_excl_vat",
        +  "vat_amount",
        +  "vat_rate",
        +  "vat_rate_percent",
        +  "vat_country",
        +  "vat_market_defaulted",
        +  "vat_status",
        +  "price_source",
        +  "price_source_note",
        +  "price_note",
        +  "bom_source",
        +  "summary",
        +  "editor_url"
        +]
  3. 2 tool updates
    • Changedstudio_bom_to_cart2 fields changed
      • changedInput schema / properties / country / description
        Previous value: -"Delivery market as an ISO-3166-1 alpha-2 code (e.g. \"DE\", \"AT\", \"SK\"). Prices differ by market: SK and CZ are base, every other EU market adds €1 per structural piece. Ask which country the order ships to; omit only if unknown — that returns base (SK/CZ) prices."New value: +"Delivery market as an ISO-3166-1 alpha-2 code (e.g. \"DE\", \"AT\", \"SK\"). Prices differ by market: SK is the base price list; every other market (CZ included) has its own list where structural pieces cost a little more (weight-based delivery surcharge; connector pins stay at base). Ask which country the order ships to; omit only if unknown — that returns SK (base) prices."
      • changedOutput schema / (root)
        Previous value: -{
        -  "$schema": "http://json-schema.org/draft-07/schema#",
        -  "additionalProperties": false,
        -  "properties": {
        -    "cart_id": {
        -      "type": "string"
        -    },
        -    "checkout_url": {
        -      "type": "string"
        -    },
        -    "currency": {
        -      "const": "EUR",
        -      "type": "string"
        -    },
        -    "editor_url": {
        -      "type": "string"
        -    },
        -    "line_items": {
        -      "items": {
        -        "additionalProperties": false,
        -        "properties": {
        -          "quantity": {
        -            "type": "number"
        -          },
        -          "variant_id": {
        -            "type": "string"
        -          }
        -        },
        -        "required": [
        -          "variant_id",
        -          "quantity"
        -        ],
        -        "type": "object"
        -      },
        -      "type": "array"
        -    },
        -    "price_basis": {
        -      "const": "shopify_cart",
        -      "type": "string"
        -    },
        -    "snapped": {
        -      "items": {
        -        "additionalProperties": false,
        -        "properties": {
        -          "field": {
        -            "type": "string"
        -          },
        -          "requested": {
        -            "type": "number"
        -          },
        -          "used": {
        -            "type": "number"
        -          }
        -        },
        -        "required": [
        -          "field",
        -          "requested",
        -          "used"
        -        ],
        -        "type": "object"
        -      },
        -      "type": "array"
        -    },
        -    "summary": {
        -      "type": "string"
        -    },
        -    "total_eur": {
        -      "type": "number"
        -    },
        -    "total_quantity": {
        -      "type": "number"
        -    }
        -  },
        -  "required": [
        -    "checkout_url",
        -    "cart_id",
        -    "total_eur",
        -    "total_quantity",
        -    "currency",
        -    "price_basis",
        -    "line_items",
        -    "summary",
        -    "editor_url"
        -  ],
        -  "type": "object"
        -}New value: +null
    • Changedstudio_pricing_quote4 fields changed
      • changedInput schema / properties / country / description
        Previous value: -"Delivery market as an ISO-3166-1 alpha-2 code (e.g. \"DE\", \"AT\", \"SK\"). Prices differ by market: SK and CZ are base, every other EU market adds €1 per structural piece. Ask which country the order ships to; omit only if unknown — that returns base (SK/CZ) prices."New value: +"Delivery market as an ISO-3166-1 alpha-2 code (e.g. \"DE\", \"AT\", \"SK\"). Prices differ by market: SK is the base price list; every other market (CZ included) has its own list where structural pieces cost a little more (weight-based delivery surcharge; connector pins stay at base). Ask which country the order ships to; omit only if unknown — that returns SK (base) prices."
      • addedOutput schema / properties / bom_source
        Added value: +{
        +  "const": "studio_build",
        +  "type": "string"
        +}
      • addedOutput schema / properties / price_not_optimized
        Added value: +{
        +  "type": "boolean"
        +}
      • changedOutput schema / required
        Previous value: -[
        -  "shape",
        -  "layers",
        -  "bom",
        -  "shopify_items",
        -  "total_eur",
        -  "currency",
        -  "country",
        -  "price_basis",
        -  "summary",
        -  "editor_url"
        -]New value: +[
        +  "shape",
        +  "layers",
        +  "bom",
        +  "shopify_items",
        +  "total_eur",
        +  "currency",
        +  "country",
        +  "price_basis",
        +  "bom_source",
        +  "summary",
        +  "editor_url"
        +]
  4. 1 tool update
    • Addedstudio_design_rules
  5. 2 tool updates
    • Changedstudio_bom_to_cart3 fields changed
      • addedInput schema / properties / country
        Added value: +{
        +  "description": "Delivery market as an ISO-3166-1 alpha-2 code (e.g. \"DE\", \"AT\", \"SK\"). Prices differ by market: SK and CZ are base, every other EU market adds €1 per structural piece. Ask which country the order ships to; omit only if unknown — that returns base (SK/CZ) prices.",
        +  "maxLength": 2,
        +  "minLength": 2,
        +  "type": "string"
        +}
      • addedOutput schema / properties / price_basis
        Added value: +{
        +  "const": "shopify_cart",
        +  "type": "string"
        +}
      • changedOutput schema / required
        Previous value: -[
        -  "checkout_url",
        -  "cart_id",
        -  "total_eur",
        -  "total_quantity",
        -  "currency",
        -  "line_items",
        -  "summary",
        -  "editor_url"
        -]New value: +[
        +  "checkout_url",
        +  "cart_id",
        +  "total_eur",
        +  "total_quantity",
        +  "currency",
        +  "price_basis",
        +  "line_items",
        +  "summary",
        +  "editor_url"
        +]
    • Changedstudio_pricing_quote4 fields changed
      • addedInput schema / properties / country
        Added value: +{
        +  "description": "Delivery market as an ISO-3166-1 alpha-2 code (e.g. \"DE\", \"AT\", \"SK\"). Prices differ by market: SK and CZ are base, every other EU market adds €1 per structural piece. Ask which country the order ships to; omit only if unknown — that returns base (SK/CZ) prices.",
        +  "maxLength": 2,
        +  "minLength": 2,
        +  "type": "string"
        +}
      • addedOutput schema / properties / country
        Added value: +{
        +  "type": [
        +    "string",
        +    "null"
        +  ]
        +}
      • addedOutput schema / properties / price_basis
        Added value: +{
        +  "const": "shopify_live",
        +  "type": "string"
        +}
      • changedOutput schema / required
        Previous value: -[
        -  "shape",
        -  "layers",
        -  "bom",
        -  "shopify_items",
        -  "total_eur",
        -  "currency",
        -  "summary",
        -  "editor_url"
        -]New value: +[
        +  "shape",
        +  "layers",
        +  "bom",
        +  "shopify_items",
        +  "total_eur",
        +  "currency",
        +  "country",
        +  "price_basis",
        +  "summary",
        +  "editor_url"
        +]
  6. 4 tool updates
    • First observedstudio_bom_to_cart
    • First observedstudio_catalog_bricks
    • First observedstudio_pricing_quote
    • First observedstudio_templates_list

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables professional furniture design from dimensions and type to a complete manufacturing package, including structural validation, cut optimization, BOM generation, assembly instructions, interactive HTML report with 3D viewer, and optional FreeCAD export.
    3
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    Enables users to design flat-pack furniture such as bookcases, cabinets, cubes and desks through natural-language conversation, then generates CNC-ready DXFs, cut and hardware lists, printable assembly instructions and a quote request for a fabricator.
    6
    10
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Plan optimal container & truck loads: 3D layouts, right-size the container mix, and check utilization, centre of gravity, crush protection and securing across 200+ equipment types.
    9 npm
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    Enables an AI agent to create a building from a photo, generate a facade design, and order a line-by-line cost estimate and documentation album, using country-specific materials and construction norms.
    21
    87 npm
    1
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources