eu.gridgarden/studio
Measured conclusion: Alive, not deep-tested. L2 outcome: not_attempted.
Design & price modular raised garden beds and walls: exact bill of materials, EUR price + checkout.
| Author | eu.gridgarden |
|---|---|
| Access | remote |
| Publisher key required | No |
| Measured state | Alive, not deep-tested |
| L1 liveness | alive |
| L1 latency | 112 ms |
| Last measured | 2026-10-26 |
Add to your agent
Copy this into your MCP client config:
{
"mcpServers": {
"studio": {
"url": "https://studio.gridgarden.eu/mcp",
"transport": "streamable-http"
}
}
}
Measured tools (11)
studio_pricing_quoteread-onlyCompute 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.
Parameters:
shape(required) — string — Design 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.layers(required) — integer — Number of brick layers. Raised beds 2-13, walls 1-25 (1 = a single 60mm top-cap course). Each layer ≈120mm tall (top layer +60mm).width— number — Rectangle: outer width in mm.length— number — Rectangle: outer length in mm.width1— number — L-shape: first leg width in mm.width2— number — L-shape: second leg width in mm.country— string — 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.length1— number — L-shape: first leg length in mm.length2— number — L-shape: second leg length in mm.topWidth— number — U-shape: back (top) width in mm.arm1Width— number — U-shape: arm 1 width in mm.arm2Width— number — U-shape: arm 2 width in mm.topLength— number — U-shape: back (top) length in mm.arm1Length— number — U-shape: arm 1 length in mm.arm2Length— number — U-shape: arm 2 length in mm.wallLength— number — Wall: single straight segment length in mm.
Hints: read-only yes · destructive not declared · idempotent not declared · open-world yes
studio_create_designPrepare 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.
Parameters:
beds— integer — How many identical beds (1–20). Needs shape. Price and parts are for all of them.link— string — Optional: 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.plot— string — Plot shape: rect | narrow | l | other (other = rectangle for now).entry— string — Where the gate/entrance is: left | middle | right (on the street side unless entrySide).house— string — Where the house stands (street at the bottom): street | middle | back | corner | none.north— number — North direction in degrees 0–360 (accepted, not used yet)plotD— number — Plot depth away from the street, mm (3000–200000)plotW— number — Plot width at the street, mm (3000–200000; 12 m = 12000)shape— string — Raised bed / wall type: rectangle | lshape | ushape | wall. Needs its dimensions and layers (see studio_design_options).style— string — Garden style: modern-minimal | cottage | scandinavian | naturalistic | family-productive | mediterranean-gravel | japanese | formal | open (let the design decide).wants— array — What the user wants: veg, seating, kids, pets, lowcare, nolawn.width— number — rectangle: outer width, mmentryX— number — Entrance position along the boundary, mmhouseD— number — House depth, mmhouseW— number — House width, mmhouseX— number — House x, mm from the lower-left plot corner at the street (with houseY)houseY— number — House y, mm from the street (with houseX)layers— integer — Brick layers (raised beds 2–13, walls 1–25; each ≈120 mm tall).length— number — rectangle: outer length, mmlocale— string — Language 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.plants— array — Plant 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.width1— number — lshape: first leg width, mmwidth2— number — lshape: second leg width, mmassumed— array — Fields the user did NOT say and you guessed (they are shown as "estimated" in Studio). Always list them honestly.country— string — Delivery 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).length1— number — lshape: first leg length, mmlength2— number — lshape: whole second leg length incl. the corner, mmplotCut— string — plot=l: which corner is missing (default ne = back right; the street is at the bottom).terrace— string — Existing terrace as a grid cell "1"–"9" (or "none").plotArea— number — Plot area in m2 if the user knows only that (9–40000); the plot becomes a rectangle estimateplotCutD— number — plot=l: depth of the missing corner, mmplotCutW— number — plot=l: width of the missing corner, mmterraceX— number — Terrace x, mm (with terraceY)terraceY— number — Terrace y, mm (with terraceX)topWidth— number — ushape: back width, mmarm1Width— number — ushape: arm 1 width, mmarm2Width— number — ushape: arm 2 width, mmentrySide— string — Boundary of the entrance: street (default) | left | right | back.houseCell— integer — House position as a 3x3 grid cell 1–9, keypad layout 7 8 9 / 4 5 6 / 1 2 3 (street below 1 2 3).houseSide— string — house=corner: which side.topLength— number — ushape: back length, mmarm1Length— number — ushape: arm 1 length, mmarm2Length— number — ushape: arm 2 length, mmfrom_agent— string — Which assistant you are (chatgpt, claude, perplexity, gemini, copilot, or mcp/agent). Used only for anonymous counting. Default mcp.wallLength— number — wall: length, mm
Hints: read-only no · destructive no · idempotent no · open-world yes
studio_design_optionsread-onlyEverything 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).
Hints: read-only yes · destructive not declared · idempotent not declared · open-world no
studio_plant_catalogread-onlySearch the GridGarden plant catalog (408 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).
Parameters:
q— string — Search text in Slovak, Czech, English, German or Latin name (e.g. "basil", "rajčina").sun— string — Required light.limit— integeredible— boolean — true = only edible plants.category— stringraised_bed_ok— boolean — true = only plants suitable for raised beds.
Hints: read-only yes · destructive not declared · idempotent not declared · open-world no
studio_delivery_countriesread-onlyList 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.
Hints: read-only yes · destructive not declared · idempotent not declared · open-world no
studio_ai_designer_linkread-onlyGet links to GridGarden's AI garden design: the AI designer from a photo of the garden, and the AI design inside Studio. This tool ONLY returns links - it never starts AI generation (that costs money and needs the user's own action on the website). Use it when the user wants an AI-generated design or visualisation from a photo.
Parameters:
locale— string — Language of the pages. Default en.
Hints: read-only yes · destructive not declared · idempotent not declared · open-world no
studio_faqread-onlyVerified 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.
Hints: read-only yes · destructive not declared · idempotent not declared · open-world no
studio_templates_listread-onlyList the design shapes GridGarden Studio supports, with the dimension parameters each one needs.
Hints: read-only yes · destructive not declared · idempotent not declared · open-world no
studio_catalog_bricksread-onlyList 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.
Hints: read-only yes · destructive not declared · idempotent not declared · open-world yes
studio_bom_to_cartdestructivePurchasing 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.
Parameters:
shape(required) — string — Design 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.layers(required) — integer — Number of brick layers. Raised beds 2-13, walls 1-25 (1 = a single 60mm top-cap course). Each layer ≈120mm tall (top layer +60mm).width— number — Rectangle: outer width in mm.length— number — Rectangle: outer length in mm.width1— number — L-shape: first leg width in mm.width2— number — L-shape: second leg width in mm.country— string — 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.length1— number — L-shape: first leg length in mm.length2— number — L-shape: second leg length in mm.topWidth— number — U-shape: back (top) width in mm.arm1Width— number — U-shape: arm 1 width in mm.arm2Width— number — U-shape: arm 2 width in mm.topLength— number — U-shape: back (top) length in mm.arm1Length— number — U-shape: arm 1 length in mm.arm2Length— number — U-shape: arm 2 length in mm.utm_source— string — Attribution source recorded on the Shopify cart (UTM). Defaults to "mcp".wallLength— number — Wall: single straight segment length in mm.
Hints: read-only no · destructive yes · idempotent not declared · open-world yes
studio_design_rulesread-onlyList 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.
Parameters:
step(required) — string — Design 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.
Hints: read-only yes · destructive not declared · idempotent not declared · open-world no
Measured by MCPYP probing. Untested fields are omitted, never estimated. Listing is always free; MCPYP never proxies calls or stores user tokens.