{"name":"ar.mueblito/mueblito","slug":"mueblito","title":null,"description":"Diseño de muebles 3D para Argentina: cotización en ARS, despiece para la maderera y catálogo.","url":"https://mcp.market/server/mueblito","rating":null,"grade":"C","score":69,"certified":false,"status":"active","category":"other","tags":[],"presence":{"score":8,"stars":null,"forks":null,"downloads_week":null,"last_push_at":null,"license":null},"uptime":{"percent":100,"checks":6,"ok":6,"last_checked_at":"2026-09-20T19:46:11.391Z","last_ok_at":"2026-09-20T19:46:11.391Z","latency_ms":868},"claimed":false,"transport":"remote","callable_via_gateway":true,"default_price_micros":0,"repository":"https://github.com/marce1994/proyecto-mueblito","website":"https://www.mueblito.ar","version":"1.0.0","remotes":[{"type":"streamable-http","url":"https://www.mueblito.ar/api/mcp"}],"packages":[],"tools":[{"name":"ajustar_mueble","description":"Itera sobre un diseño: aplica un DIFF de cambios sobre unos params base, los RE-VALIDA y devuelve los params nuevos, la vista actualizada (SVG), un resumen de cotización y despiece, y una revisión de factibilidad. Es el loop de refinamiento: proponés un cambio ('más ancho', 'un estante más', 'otro material') y ves el efecto al instante, sin rearmar todo. Pasá baseParams (los params válidos actuales, p.ej. los que devolvió una cotización) y cambios (sólo los campos a modificar). Si los cambios dejan el mueble inválido, la tool falla explicando el motivo. Encadená la salida (params) como baseParams de la próxima llamada. (iterate furniture design, edit parameters, refine, text-to-CAD loop)","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"baseParams":{"description":"Params paramétricos de partida (ya válidos). Ej: los que devolvió construir_mueble. El schema enumera todos los campos por kind. Modular: frontMaterial (mismo espesor que material), softClose, base, colgado, enCuerpos, slidingDoor, glassDoors y overlay. root admite cortes V/H anidados; cada hijo tiene f y, si genera cuerpo, alto/prof/colgado. En cortes H el alto se reparte con f, no con alto. height y depth deben abarcar todos los cuerpos. Cada hoja admite door, lock, push y led; content.c incluye cajonSecreto y cajones con content.lock/content.push. Shelf: shelves:0 deja solo carcasa; openFrame usa bastidor sin fondo. Cama: headboard modular, headboardShelves, drawersPerSide, bunk, bunkHeight, bunkLadderSide, mattressThickness, baseHeight. Sofá/banqueta: seatHeight (sofá), backrestAngle y cushionThickness. Otros tipos exponen sus opciones en el schema. Los avisos explican qué opción se recortó o no se aplicó y cómo corregirla.","oneOf":[{"type":"object","properties":{"kind":{"type":"string","const":"shelf"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"shelves":{"type":"integer","minimum":0,"maximum":9007199254740991},"backPanel":{"type":"boolean"},"openFrame":{"type":"boolean"},"material":{"type":"string"}},"required":["kind","width","height","depth","shelves","backPanel","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"desk"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"drawers":{"type":"integer","minimum":0,"maximum":9007199254740991},"material":{"type":"string"}},"required":["kind","width","height","depth","drawers","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"wardrobe"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"doors":{"type":"integer","minimum":0,"maximum":9007199254740991},"rod":{"type":"boolean"},"material":{"type":"string"}},"required":["kind","width","height","depth","doors","rod","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"pergola"},"width":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"rafters":{"type":"integer","minimum":1,"maximum":9007199254740991},"postSize":{"type":"number","exclusiveMinimum":0},"slope":{"type":"number","minimum":0,"maximum":45},"material":{"type":"string"}},"required":["kind","width","depth","height","rafters","postSize","slope","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"deck"},"width":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"boardWidth":{"type":"number","exclusiveMinimum":0},"gap":{"type":"number","minimum":0},"joists":{"type":"integer","minimum":1,"maximum":9007199254740991},"material":{"type":"string"}},"required":["kind","width","depth","boardWidth","gap","joists","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"table"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"legSize":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","legSize","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"picnic"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"tabletopDepth":{"type":"number","exclusiveMinimum":0},"seatHeight":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","tabletopDepth","seatHeight","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"cama"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"storage":{"type":"boolean"},"drawersPerSide":{"type":"integer","minimum":0,"maximum":4},"headboardShelves":{"type":"integer","minimum":0,"maximum":6},"headboard":{"type":"object","properties":{"kind":{"type":"string","const":"modular"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"},"frontMaterial":{"type":"string"},"backPanel":{"type":"boolean"},"root":{"anyOf":[{"type":"object","properties":{"content":{"oneOf":[{"type":"object","properties":{"c":{"type":"string","const":"estantes"},"n":{"type":"integer","minimum":1,"maximum":12}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"cajones"},"n":{"type":"integer","minimum":1,"maximum":8},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"cajonSecreto"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"barral"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"botellero"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"zapatero"},"n":{"type":"integer","minimum":1,"maximum":5}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"vidrio"},"n":{"type":"integer","minimum":1,"maximum":8}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"bandeja"},"n":{"type":"integer","minimum":1,"maximum":6}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"ranurado"},"n":{"type":"integer","minimum":3,"maximum":30}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"hueco"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"vacio"}},"required":["c"],"additionalProperties":false}]},"door":{"type":"string","enum":["izq","der","doble","arriba","abajo","corrediza"]},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"},"led":{"type":"boolean"}},"required":["content"],"additionalProperties":false},{"$ref":"#/definitions/__schema0"}]},"softClose":{"type":"boolean"},"base":{"type":"string","enum":["zocalo","patas","ruedas"]},"colgado":{"type":"boolean"},"enCuerpos":{"type":"boolean"},"slidingDoor":{"type":"string","enum":["full","per-column"]},"glassDoors":{"type":"boolean"},"overlay":{"type":"boolean"}},"required":["kind","width","height","depth","material","backPanel","root"],"additionalProperties":false},"bunk":{"type":"boolean"},"bunkHeight":{"type":"number","minimum":900,"maximum":1600},"bunkLadderSide":{"type":"string","enum":["izq","der"]},"mattressThickness":{"type":"number","exclusiveMinimum":0},"baseHeight":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","storage","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"sofa"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"arms":{"type":"boolean"},"seatHeight":{"type":"number","exclusiveMinimum":0},"backrestAngle":{"type":"number","minimum":0,"maximum":45},"cushionThickness":{"type":"number","minimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","arms","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"banqueta"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"backrest":{"type":"boolean"},"backrestAngle":{"type":"number","minimum":0,"maximum":45},"cushionThickness":{"type":"number","minimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","backrest","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"espejo"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"caja"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"lid":{"type":"string","enum":["ninguna","fija","abisagrada"]},"wheels":{"type":"boolean"},"legs":{"type":"number","minimum":0,"maximum":900},"material":{"type":"string"}},"required":["kind","width","height","depth","lid","wheels","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"cortina"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"biombo"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"hojas":{"type":"integer","minimum":2,"maximum":6},"relleno":{"type":"boolean"},"material":{"type":"string"}},"required":["kind","width","height","depth","hojas","relleno","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"invernadero"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"slope":{"type":"number","minimum":0,"maximum":45},"shelves":{"type":"integer","minimum":0,"maximum":9007199254740991},"puerta":{"type":"boolean"},"material":{"type":"string"}},"required":["kind","width","height","depth","slope","shelves","puerta","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"modular"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"},"frontMaterial":{"type":"string"},"backPanel":{"type":"boolean"},"root":{"anyOf":[{"type":"object","properties":{"content":{"oneOf":[{"type":"object","properties":{"c":{"type":"string","const":"estantes"},"n":{"type":"integer","minimum":1,"maximum":12}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"cajones"},"n":{"type":"integer","minimum":1,"maximum":8},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"cajonSecreto"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"barral"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"botellero"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"zapatero"},"n":{"type":"integer","minimum":1,"maximum":5}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"vidrio"},"n":{"type":"integer","minimum":1,"maximum":8}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"bandeja"},"n":{"type":"integer","minimum":1,"maximum":6}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"ranurado"},"n":{"type":"integer","minimum":3,"maximum":30}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"hueco"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"vacio"}},"required":["c"],"additionalProperties":false}]},"door":{"type":"string","enum":["izq","der","doble","arriba","abajo","corrediza"]},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"},"led":{"type":"boolean"}},"required":["content"],"additionalProperties":false},{"$ref":"#/definitions/__schema0"}]},"softClose":{"type":"boolean"},"base":{"type":"string","enum":["zocalo","patas","ruedas"]},"colgado":{"type":"boolean"},"enCuerpos":{"type":"boolean"},"slidingDoor":{"type":"string","enum":["full","per-column"]},"glassDoors":{"type":"boolean"},"overlay":{"type":"boolean"}},"required":["kind","width","height","depth","material","backPanel","root"],"additionalProperties":false}]},"cambios":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{},"description":"Diff a aplicar sobre baseParams (merge por campo). Ej: {width: 2400, shelves: 5}. El resultado se re-valida con el esquema; los objetos anidados (root, content, headboard) se reemplazan completos. Si queda inválido, la tool falla con el motivo."}},"required":["cambios"],"$schema":"http://json-schema.org/draft-07/schema#","definitions":{"__schema0":{"type":"object","properties":{"s":{"type":"string","enum":["V","H"]},"ch":{"minItems":2,"maxItems":8,"type":"array","items":{"type":"object","properties":{"f":{"type":"number","exclusiveMinimum":0},"node":{"anyOf":[{"type":"object","properties":{"content":{"oneOf":[{"type":"object","properties":{"c":{"type":"string","const":"estantes"},"n":{"type":"integer","minimum":1,"maximum":12}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"cajones"},"n":{"type":"integer","minimum":1,"maximum":8},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"cajonSecreto"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"barral"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"botellero"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"zapatero"},"n":{"type":"integer","minimum":1,"maximum":5}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"vidrio"},"n":{"type":"integer","minimum":1,"maximum":8}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"bandeja"},"n":{"type":"integer","minimum":1,"maximum":6}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"ranurado"},"n":{"type":"integer","minimum":3,"maximum":30}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"hueco"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"vacio"}},"required":["c"],"additionalProperties":false}]},"door":{"type":"string","enum":["izq","der","doble","arriba","abajo","corrediza"]},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"},"led":{"type":"boolean"}},"required":["content"],"additionalProperties":false},{"$ref":"#/definitions/__schema0"}]},"alto":{"type":"number","minimum":150,"maximum":3000},"prof":{"type":"number","minimum":80,"maximum":1200},"colgado":{"type":"boolean"}},"required":["f","node"],"additionalProperties":false}},"door":{"type":"string","enum":["izq","der","doble","arriba","abajo","corrediza"]},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"}},"required":["s","ch"],"additionalProperties":false}}}},{"name":"buscar_catalogo","description":"Busca por NOMBRE entre los muebles armables de Mueblito (los mismos que listar_presets), con stemming en español. Todo lo que devuelve es un mueble fabricable a medida (melamina/MDF) con un link al editor 3D (editor_url). Usala cuando el usuario describe lo que busca ('cama', 'silla comedor', 'placard') para encontrar el/los id y después construir_mueble (recomendado) con ese id. (search parametric furniture presets by name, find buildable furniture Argentina, cut list)","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"consulta":{"type":"string","minLength":1,"maxLength":200,"description":"Texto libre en español para buscar en el catálogo. Ejemplos: 'cama', 'silla comedor', 'banqueta de barra'. Soporta variantes morfológicas (plural/singular, acentos). Máximo 200 caracteres."}},"required":["consulta"],"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"construir_mueble","description":"TOOL PRINCIPAL para muebles. Construye un mueble (desde un preset, o a medida con params del motor recursivo) y devuelve LO QUE PIDAS: 'despiece' (piezas + cotización en ARS + factibilidad), 'imagen' (vista 2D frente/lateral/planta), 'modelo3d' (el MODELO 3D en GLB, embebido y listo para renderizar en cualquier visor), y/o 'visor' (link al editor 3D). SIEMPRE devuelve el link a mueblito.ar con el mueble cargado, donde se termina de diseñar, ajustar y cotizar. Para muebles a medida usá params kind='modular' con un árbol 'root' (V=columnas, H=filas de abajo→arriba). (build furniture, generate 3D model GLB, render, cutlist, quote, open in editor, get a 3d model)","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"preset":{"description":"ID del preset del mueble a construir. Requerido si no se pasa 'params'. Ejemplos: 'placard-corredizo', 'biblioteca', 'escritorio-cajonera', 'comoda', 'bajo-mesada'. Usá listar_presets para ver todos los ids disponibles.","type":"string"},"params":{"description":"Params a medida (alternativa a 'preset'). Para un mueble modular con el motor recursivo, kind='modular' + un árbol 'root'. El árbol: un nodo es un SPLIT {s:'V'|'H', ch:[{f,node},...]} o una HOJA {content:{c,...}, door?}. s='V' parte en columnas (izq→der); s='H' parte en filas (ABAJO→ARRIBA). f = peso relativo del hijo. content.c ∈ estantes{n}, cajones{n}, barral, zapatero{n}, vidrio{n}, bandeja{n}, botellero, vacio, o 'hueco' para el lugar de un electrodoméstico o de las piernas (si llega al piso, esa celda va sin piso, sin fondo y sin zócalo). door ∈ izq/der/doble/arriba/abajo/corrediza. material p.ej. 'mdf-18mm-blanco'. Ej. cómoda 80cm con puerta arriba y 2 cajones abajo: {kind:'modular',width:800,height:900,depth:450,material:'mdf-18mm-blanco',backPanel:true,base:'zocalo',root:{s:'H',ch:[{f:1,node:{content:{c:'cajones',n:2}}},{f:1,node:{content:{c:'estantes',n:2},door:'der'}}]}}. El mueble puede dejar de ser una caja: 'enCuerpos: true' lo arma en cuerpos separados (uno por columna, cada uno con sus laterales, para poder llevarlo), y cada hijo del corte de la RAÍZ acepta 'alto' y 'prof' propios (mm) y pasa a ser un CUERPO aparte —bajo escalera, escritorio con alzada, bajo mesada con torre—, alineados por atrás. Y 'colgado: true' (en el mueble o en un cuerpo) lo manda a la pared: el kit trae colgadores y riel en vez de patas. El schema enumera todos los campos por kind. Modular: frontMaterial (mismo espesor que material), softClose, base, colgado, enCuerpos, slidingDoor, glassDoors y overlay. root admite cortes V/H anidados; cada hijo tiene f y, si genera cuerpo, alto/prof/colgado. En cortes H el alto se reparte con f, no con alto. height y depth deben abarcar todos los cuerpos. Cada hoja admite door, lock, push y led; content.c incluye cajonSecreto y cajones con content.lock/content.push. Shelf: shelves:0 deja solo carcasa; openFrame usa bastidor sin fondo. Cama: headboard modular, headboardShelves, drawersPerSide, bunk, bunkHeight, bunkLadderSide, mattressThickness, baseHeight. Sofá/banqueta: seatHeight (sofá), backrestAngle y cushionThickness. Otros tipos exponen sus opciones en el schema. Los avisos explican qué opción se recortó o no se aplicó y cómo corregirla.","oneOf":[{"type":"object","properties":{"kind":{"type":"string","const":"shelf"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"shelves":{"type":"integer","minimum":0,"maximum":9007199254740991},"backPanel":{"type":"boolean"},"openFrame":{"type":"boolean"},"material":{"type":"string"}},"required":["kind","width","height","depth","shelves","backPanel","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"desk"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"drawers":{"type":"integer","minimum":0,"maximum":9007199254740991},"material":{"type":"string"}},"required":["kind","width","height","depth","drawers","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"wardrobe"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"doors":{"type":"integer","minimum":0,"maximum":9007199254740991},"rod":{"type":"boolean"},"material":{"type":"string"}},"required":["kind","width","height","depth","doors","rod","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"pergola"},"width":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"rafters":{"type":"integer","minimum":1,"maximum":9007199254740991},"postSize":{"type":"number","exclusiveMinimum":0},"slope":{"type":"number","minimum":0,"maximum":45},"material":{"type":"string"}},"required":["kind","width","depth","height","rafters","postSize","slope","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"deck"},"width":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"boardWidth":{"type":"number","exclusiveMinimum":0},"gap":{"type":"number","minimum":0},"joists":{"type":"integer","minimum":1,"maximum":9007199254740991},"material":{"type":"string"}},"required":["kind","width","depth","boardWidth","gap","joists","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"table"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"legSize":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","legSize","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"picnic"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"tabletopDepth":{"type":"number","exclusiveMinimum":0},"seatHeight":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","tabletopDepth","seatHeight","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"cama"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"storage":{"type":"boolean"},"drawersPerSide":{"type":"integer","minimum":0,"maximum":4},"headboardShelves":{"type":"integer","minimum":0,"maximum":6},"headboard":{"type":"object","properties":{"kind":{"type":"string","const":"modular"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"},"frontMaterial":{"type":"string"},"backPanel":{"type":"boolean"},"root":{"anyOf":[{"type":"object","properties":{"content":{"oneOf":[{"type":"object","properties":{"c":{"type":"string","const":"estantes"},"n":{"type":"integer","minimum":1,"maximum":12}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"cajones"},"n":{"type":"integer","minimum":1,"maximum":8},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"cajonSecreto"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"barral"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"botellero"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"zapatero"},"n":{"type":"integer","minimum":1,"maximum":5}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"vidrio"},"n":{"type":"integer","minimum":1,"maximum":8}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"bandeja"},"n":{"type":"integer","minimum":1,"maximum":6}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"ranurado"},"n":{"type":"integer","minimum":3,"maximum":30}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"hueco"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"vacio"}},"required":["c"],"additionalProperties":false}]},"door":{"type":"string","enum":["izq","der","doble","arriba","abajo","corrediza"]},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"},"led":{"type":"boolean"}},"required":["content"],"additionalProperties":false},{"$ref":"#/definitions/__schema0"}]},"softClose":{"type":"boolean"},"base":{"type":"string","enum":["zocalo","patas","ruedas"]},"colgado":{"type":"boolean"},"enCuerpos":{"type":"boolean"},"slidingDoor":{"type":"string","enum":["full","per-column"]},"glassDoors":{"type":"boolean"},"overlay":{"type":"boolean"}},"required":["kind","width","height","depth","material","backPanel","root"],"additionalProperties":false},"bunk":{"type":"boolean"},"bunkHeight":{"type":"number","minimum":900,"maximum":1600},"bunkLadderSide":{"type":"string","enum":["izq","der"]},"mattressThickness":{"type":"number","exclusiveMinimum":0},"baseHeight":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","storage","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"sofa"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"arms":{"type":"boolean"},"seatHeight":{"type":"number","exclusiveMinimum":0},"backrestAngle":{"type":"number","minimum":0,"maximum":45},"cushionThickness":{"type":"number","minimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","arms","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"banqueta"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"backrest":{"type":"boolean"},"backrestAngle":{"type":"number","minimum":0,"maximum":45},"cushionThickness":{"type":"number","minimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","backrest","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"espejo"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"caja"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"lid":{"type":"string","enum":["ninguna","fija","abisagrada"]},"wheels":{"type":"boolean"},"legs":{"type":"number","minimum":0,"maximum":900},"material":{"type":"string"}},"required":["kind","width","height","depth","lid","wheels","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"cortina"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"biombo"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"hojas":{"type":"integer","minimum":2,"maximum":6},"relleno":{"type":"boolean"},"material":{"type":"string"}},"required":["kind","width","height","depth","hojas","relleno","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"invernadero"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"slope":{"type":"number","minimum":0,"maximum":45},"shelves":{"type":"integer","minimum":0,"maximum":9007199254740991},"puerta":{"type":"boolean"},"material":{"type":"string"}},"required":["kind","width","height","depth","slope","shelves","puerta","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"modular"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"},"frontMaterial":{"type":"string"},"backPanel":{"type":"boolean"},"root":{"anyOf":[{"type":"object","properties":{"content":{"oneOf":[{"type":"object","properties":{"c":{"type":"string","const":"estantes"},"n":{"type":"integer","minimum":1,"maximum":12}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"cajones"},"n":{"type":"integer","minimum":1,"maximum":8},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"cajonSecreto"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"barral"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"botellero"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"zapatero"},"n":{"type":"integer","minimum":1,"maximum":5}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"vidrio"},"n":{"type":"integer","minimum":1,"maximum":8}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"bandeja"},"n":{"type":"integer","minimum":1,"maximum":6}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"ranurado"},"n":{"type":"integer","minimum":3,"maximum":30}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"hueco"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"vacio"}},"required":["c"],"additionalProperties":false}]},"door":{"type":"string","enum":["izq","der","doble","arriba","abajo","corrediza"]},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"},"led":{"type":"boolean"}},"required":["content"],"additionalProperties":false},{"$ref":"#/definitions/__schema0"}]},"softClose":{"type":"boolean"},"base":{"type":"string","enum":["zocalo","patas","ruedas"]},"colgado":{"type":"boolean"},"enCuerpos":{"type":"boolean"},"slidingDoor":{"type":"string","enum":["full","per-column"]},"glassDoors":{"type":"boolean"},"overlay":{"type":"boolean"}},"required":["kind","width","height","depth","material","backPanel","root"],"additionalProperties":false}]},"ajustes":{"description":"Ajustes de medidas opcionales, en milímetros, sobre el preset O sobre los params que pases. Sólo los campos que querés sobreescribir. Ej: {ancho_mm: 2400}.","type":"object","properties":{"ancho_mm":{"type":"number","exclusiveMinimum":0},"alto_mm":{"type":"number","exclusiveMinimum":0},"profundidad_mm":{"type":"number","exclusiveMinimum":0}},"additionalProperties":false},"salida":{"description":"Qué devolver (uno o varios): un string o una lista. 'despiece' = piezas+cotización+factibilidad (texto). 'imagen' = vista 2D frente/lateral/planta (SVG). 'modelo3d' = el modelo 3D GLB embebido para renderizar. 'visor' = link al editor 3D en el sitio. Default: ['despiece']. El link al sitio se incluye SIEMPRE.","anyOf":[{"type":"string","enum":["despiece","imagen","modelo3d","visor"]},{"minItems":1,"type":"array","items":{"type":"string","enum":["despiece","imagen","modelo3d","visor"]}}]}},"$schema":"http://json-schema.org/draft-07/schema#","definitions":{"__schema0":{"type":"object","properties":{"s":{"type":"string","enum":["V","H"]},"ch":{"minItems":2,"maxItems":8,"type":"array","items":{"type":"object","properties":{"f":{"type":"number","exclusiveMinimum":0},"node":{"anyOf":[{"type":"object","properties":{"content":{"oneOf":[{"type":"object","properties":{"c":{"type":"string","const":"estantes"},"n":{"type":"integer","minimum":1,"maximum":12}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"cajones"},"n":{"type":"integer","minimum":1,"maximum":8},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"cajonSecreto"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"barral"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"botellero"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"zapatero"},"n":{"type":"integer","minimum":1,"maximum":5}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"vidrio"},"n":{"type":"integer","minimum":1,"maximum":8}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"bandeja"},"n":{"type":"integer","minimum":1,"maximum":6}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"ranurado"},"n":{"type":"integer","minimum":3,"maximum":30}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"hueco"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"vacio"}},"required":["c"],"additionalProperties":false}]},"door":{"type":"string","enum":["izq","der","doble","arriba","abajo","corrediza"]},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"},"led":{"type":"boolean"}},"required":["content"],"additionalProperties":false},{"$ref":"#/definitions/__schema0"}]},"alto":{"type":"number","minimum":150,"maximum":3000},"prof":{"type":"number","minimum":80,"maximum":1200},"colgado":{"type":"boolean"}},"required":["f","node"],"additionalProperties":false}},"door":{"type":"string","enum":["izq","der","doble","arriba","abajo","corrediza"]},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"}},"required":["s","ch"],"additionalProperties":false}}}},{"name":"cotizar_mueble","description":"Calcula el presupuesto de materiales en ARS para fabricar un mueble a medida: placas/melamina, tapacanto, herrajes y servicio de corte en maderera. Devuelve un editor_url para ver el presupuesto por placa y comprar los materiales en el sitio. Tip: para armar + cotizar + modelo 3D en una sola llamada, usá construir_mueble. Usala cuando el usuario quiere saber cuánto sale hacer un mueble en Argentina. Prerrequisito: si no sabés el id del preset, llamá primero a listar_presets; los ids disponibles son los que acepta este campo (ej: 'placard-corredizo', 'biblioteca', 'escritorio-cajonera'). Podés ajustar las medidas del preset con el campo 'ajustes' sin necesidad de pasar todos los params. Limitación: precios ORIENTATIVOS en ARS, sin mano de obra ni instalación. Pueden estar desactualizados: confirmá el importe con la maderera antes de comprar. (quote furniture cost, materials budget Argentina, cut list price ARS)","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"preset":{"description":"ID del preset del mueble a cotizar. Requerido si no se pasa 'params'. Ejemplos: 'placard-corredizo', 'biblioteca', 'escritorio-cajonera', 'comoda', 'bajo-mesada'. Usá listar_presets para ver todos los ids disponibles.","type":"string"},"params":{"description":"Params paramétricos completos del mueble (alternativa a 'preset'). Requerido si no se pasa 'preset'. Debe incluir kind, material y las medidas y opciones requeridas por ese kind; deck no lleva height. El schema enumera todos los campos por kind. Modular: frontMaterial (mismo espesor que material), softClose, base, colgado, enCuerpos, slidingDoor, glassDoors y overlay. root admite cortes V/H anidados; cada hijo tiene f y, si genera cuerpo, alto/prof/colgado. En cortes H el alto se reparte con f, no con alto. height y depth deben abarcar todos los cuerpos. Cada hoja admite door, lock, push y led; content.c incluye cajonSecreto y cajones con content.lock/content.push. Shelf: shelves:0 deja solo carcasa; openFrame usa bastidor sin fondo. Cama: headboard modular, headboardShelves, drawersPerSide, bunk, bunkHeight, bunkLadderSide, mattressThickness, baseHeight. Sofá/banqueta: seatHeight (sofá), backrestAngle y cushionThickness. Otros tipos exponen sus opciones en el schema. Los avisos explican qué opción se recortó o no se aplicó y cómo corregirla.","oneOf":[{"type":"object","properties":{"kind":{"type":"string","const":"shelf"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"shelves":{"type":"integer","minimum":0,"maximum":9007199254740991},"backPanel":{"type":"boolean"},"openFrame":{"type":"boolean"},"material":{"type":"string"}},"required":["kind","width","height","depth","shelves","backPanel","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"desk"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"drawers":{"type":"integer","minimum":0,"maximum":9007199254740991},"material":{"type":"string"}},"required":["kind","width","height","depth","drawers","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"wardrobe"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"doors":{"type":"integer","minimum":0,"maximum":9007199254740991},"rod":{"type":"boolean"},"material":{"type":"string"}},"required":["kind","width","height","depth","doors","rod","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"pergola"},"width":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"rafters":{"type":"integer","minimum":1,"maximum":9007199254740991},"postSize":{"type":"number","exclusiveMinimum":0},"slope":{"type":"number","minimum":0,"maximum":45},"material":{"type":"string"}},"required":["kind","width","depth","height","rafters","postSize","slope","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"deck"},"width":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"boardWidth":{"type":"number","exclusiveMinimum":0},"gap":{"type":"number","minimum":0},"joists":{"type":"integer","minimum":1,"maximum":9007199254740991},"material":{"type":"string"}},"required":["kind","width","depth","boardWidth","gap","joists","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"table"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"legSize":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","legSize","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"picnic"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"tabletopDepth":{"type":"number","exclusiveMinimum":0},"seatHeight":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","tabletopDepth","seatHeight","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"cama"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"storage":{"type":"boolean"},"drawersPerSide":{"type":"integer","minimum":0,"maximum":4},"headboardShelves":{"type":"integer","minimum":0,"maximum":6},"headboard":{"type":"object","properties":{"kind":{"type":"string","const":"modular"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"},"frontMaterial":{"type":"string"},"backPanel":{"type":"boolean"},"root":{"anyOf":[{"type":"object","properties":{"content":{"oneOf":[{"type":"object","properties":{"c":{"type":"string","const":"estantes"},"n":{"type":"integer","minimum":1,"maximum":12}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"cajones"},"n":{"type":"integer","minimum":1,"maximum":8},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"cajonSecreto"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"barral"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"botellero"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"zapatero"},"n":{"type":"integer","minimum":1,"maximum":5}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"vidrio"},"n":{"type":"integer","minimum":1,"maximum":8}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"bandeja"},"n":{"type":"integer","minimum":1,"maximum":6}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"ranurado"},"n":{"type":"integer","minimum":3,"maximum":30}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"hueco"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"vacio"}},"required":["c"],"additionalProperties":false}]},"door":{"type":"string","enum":["izq","der","doble","arriba","abajo","corrediza"]},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"},"led":{"type":"boolean"}},"required":["content"],"additionalProperties":false},{"$ref":"#/definitions/__schema0"}]},"softClose":{"type":"boolean"},"base":{"type":"string","enum":["zocalo","patas","ruedas"]},"colgado":{"type":"boolean"},"enCuerpos":{"type":"boolean"},"slidingDoor":{"type":"string","enum":["full","per-column"]},"glassDoors":{"type":"boolean"},"overlay":{"type":"boolean"}},"required":["kind","width","height","depth","material","backPanel","root"],"additionalProperties":false},"bunk":{"type":"boolean"},"bunkHeight":{"type":"number","minimum":900,"maximum":1600},"bunkLadderSide":{"type":"string","enum":["izq","der"]},"mattressThickness":{"type":"number","exclusiveMinimum":0},"baseHeight":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","storage","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"sofa"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"arms":{"type":"boolean"},"seatHeight":{"type":"number","exclusiveMinimum":0},"backrestAngle":{"type":"number","minimum":0,"maximum":45},"cushionThickness":{"type":"number","minimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","arms","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"banqueta"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"backrest":{"type":"boolean"},"backrestAngle":{"type":"number","minimum":0,"maximum":45},"cushionThickness":{"type":"number","minimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","backrest","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"espejo"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"caja"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"lid":{"type":"string","enum":["ninguna","fija","abisagrada"]},"wheels":{"type":"boolean"},"legs":{"type":"number","minimum":0,"maximum":900},"material":{"type":"string"}},"required":["kind","width","height","depth","lid","wheels","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"cortina"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"biombo"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"hojas":{"type":"integer","minimum":2,"maximum":6},"relleno":{"type":"boolean"},"material":{"type":"string"}},"required":["kind","width","height","depth","hojas","relleno","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"invernadero"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"slope":{"type":"number","minimum":0,"maximum":45},"shelves":{"type":"integer","minimum":0,"maximum":9007199254740991},"puerta":{"type":"boolean"},"material":{"type":"string"}},"required":["kind","width","height","depth","slope","shelves","puerta","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"modular"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"},"frontMaterial":{"type":"string"},"backPanel":{"type":"boolean"},"root":{"anyOf":[{"type":"object","properties":{"content":{"oneOf":[{"type":"object","properties":{"c":{"type":"string","const":"estantes"},"n":{"type":"integer","minimum":1,"maximum":12}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"cajones"},"n":{"type":"integer","minimum":1,"maximum":8},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"cajonSecreto"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"barral"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"botellero"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"zapatero"},"n":{"type":"integer","minimum":1,"maximum":5}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"vidrio"},"n":{"type":"integer","minimum":1,"maximum":8}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"bandeja"},"n":{"type":"integer","minimum":1,"maximum":6}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"ranurado"},"n":{"type":"integer","minimum":3,"maximum":30}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"hueco"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"vacio"}},"required":["c"],"additionalProperties":false}]},"door":{"type":"string","enum":["izq","der","doble","arriba","abajo","corrediza"]},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"},"led":{"type":"boolean"}},"required":["content"],"additionalProperties":false},{"$ref":"#/definitions/__schema0"}]},"softClose":{"type":"boolean"},"base":{"type":"string","enum":["zocalo","patas","ruedas"]},"colgado":{"type":"boolean"},"enCuerpos":{"type":"boolean"},"slidingDoor":{"type":"string","enum":["full","per-column"]},"glassDoors":{"type":"boolean"},"overlay":{"type":"boolean"}},"required":["kind","width","height","depth","material","backPanel","root"],"additionalProperties":false}]},"ajustes":{"description":"Ajustes de medidas opcionales, en milímetros, sobre el preset O sobre los params que pases. Sólo los campos que querés sobreescribir. Ej: {ancho_mm: 2400}.","type":"object","properties":{"ancho_mm":{"type":"number","exclusiveMinimum":0},"alto_mm":{"type":"number","exclusiveMinimum":0},"profundidad_mm":{"type":"number","exclusiveMinimum":0}},"additionalProperties":false}},"$schema":"http://json-schema.org/draft-07/schema#","definitions":{"__schema0":{"type":"object","properties":{"s":{"type":"string","enum":["V","H"]},"ch":{"minItems":2,"maxItems":8,"type":"array","items":{"type":"object","properties":{"f":{"type":"number","exclusiveMinimum":0},"node":{"anyOf":[{"type":"object","properties":{"content":{"oneOf":[{"type":"object","properties":{"c":{"type":"string","const":"estantes"},"n":{"type":"integer","minimum":1,"maximum":12}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"cajones"},"n":{"type":"integer","minimum":1,"maximum":8},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"cajonSecreto"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"barral"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"botellero"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"zapatero"},"n":{"type":"integer","minimum":1,"maximum":5}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"vidrio"},"n":{"type":"integer","minimum":1,"maximum":8}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"bandeja"},"n":{"type":"integer","minimum":1,"maximum":6}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"ranurado"},"n":{"type":"integer","minimum":3,"maximum":30}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"hueco"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"vacio"}},"required":["c"],"additionalProperties":false}]},"door":{"type":"string","enum":["izq","der","doble","arriba","abajo","corrediza"]},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"},"led":{"type":"boolean"}},"required":["content"],"additionalProperties":false},{"$ref":"#/definitions/__schema0"}]},"alto":{"type":"number","minimum":150,"maximum":3000},"prof":{"type":"number","minimum":80,"maximum":1200},"colgado":{"type":"boolean"}},"required":["f","node"],"additionalProperties":false}},"door":{"type":"string","enum":["izq","der","doble","arriba","abajo","corrediza"]},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"}},"required":["s","ch"],"additionalProperties":false}}}},{"name":"crear_diseno","description":"Crea una escena 3D con VARIOS muebles (un ambiente) y devuelve un link editable directo al editor de Mueblito — el link /d/<code> abre el diseño listo para ver en 3D, mover piezas, ajustar medidas y generar presupuesto. Para UN solo mueble preferí construir_mueble; usá crear_diseno cuando hay 2+ muebles o querés armar un ambiente. Usala cuando el usuario quiere visualizar cómo quedarían los muebles en un espacio o compartir un diseño con un carpintero o cliente. Prerrequisito: si no sabés los ids de los presets, llamá primero a listar_presets. Cada mueble se especifica con preset o params; la posición y rotación son opcionales (si no se dan, los muebles se distribuyen en fila automáticamente). Limitación: el link es estático (no se guarda en servidor); no requiere cuenta. (create 3D design, furniture layout, shareable room design, Argentina interior design)","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"muebles":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"object","properties":{"preset":{"description":"ID del preset del mueble. Usá listar_presets para ver los disponibles. Requerido si no se pasa 'params'.","type":"string"},"params":{"description":"Params paramétricos completos (alternativa a 'preset'). El schema enumera todos los campos por kind. Modular: frontMaterial (mismo espesor que material), softClose, base, colgado, enCuerpos, slidingDoor, glassDoors y overlay. root admite cortes V/H anidados; cada hijo tiene f y, si genera cuerpo, alto/prof/colgado. En cortes H el alto se reparte con f, no con alto. height y depth deben abarcar todos los cuerpos. Cada hoja admite door, lock, push y led; content.c incluye cajonSecreto y cajones con content.lock/content.push. Shelf: shelves:0 deja solo carcasa; openFrame usa bastidor sin fondo. Cama: headboard modular, headboardShelves, drawersPerSide, bunk, bunkHeight, bunkLadderSide, mattressThickness, baseHeight. Sofá/banqueta: seatHeight (sofá), backrestAngle y cushionThickness. Otros tipos exponen sus opciones en el schema. Los avisos explican qué opción se recortó o no se aplicó y cómo corregirla.","oneOf":[{"type":"object","properties":{"kind":{"type":"string","const":"shelf"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"shelves":{"type":"integer","minimum":0,"maximum":9007199254740991},"backPanel":{"type":"boolean"},"openFrame":{"type":"boolean"},"material":{"type":"string"}},"required":["kind","width","height","depth","shelves","backPanel","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"desk"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"drawers":{"type":"integer","minimum":0,"maximum":9007199254740991},"material":{"type":"string"}},"required":["kind","width","height","depth","drawers","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"wardrobe"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"doors":{"type":"integer","minimum":0,"maximum":9007199254740991},"rod":{"type":"boolean"},"material":{"type":"string"}},"required":["kind","width","height","depth","doors","rod","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"pergola"},"width":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"rafters":{"type":"integer","minimum":1,"maximum":9007199254740991},"postSize":{"type":"number","exclusiveMinimum":0},"slope":{"type":"number","minimum":0,"maximum":45},"material":{"type":"string"}},"required":["kind","width","depth","height","rafters","postSize","slope","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"deck"},"width":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"boardWidth":{"type":"number","exclusiveMinimum":0},"gap":{"type":"number","minimum":0},"joists":{"type":"integer","minimum":1,"maximum":9007199254740991},"material":{"type":"string"}},"required":["kind","width","depth","boardWidth","gap","joists","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"table"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"legSize":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","legSize","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"picnic"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"tabletopDepth":{"type":"number","exclusiveMinimum":0},"seatHeight":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","tabletopDepth","seatHeight","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"cama"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"storage":{"type":"boolean"},"drawersPerSide":{"type":"integer","minimum":0,"maximum":4},"headboardShelves":{"type":"integer","minimum":0,"maximum":6},"headboard":{"type":"object","properties":{"kind":{"type":"string","const":"modular"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"},"frontMaterial":{"type":"string"},"backPanel":{"type":"boolean"},"root":{"anyOf":[{"type":"object","properties":{"content":{"oneOf":[{"type":"object","properties":{"c":{"type":"string","const":"estantes"},"n":{"type":"integer","minimum":1,"maximum":12}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"cajones"},"n":{"type":"integer","minimum":1,"maximum":8},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"cajonSecreto"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"barral"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"botellero"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"zapatero"},"n":{"type":"integer","minimum":1,"maximum":5}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"vidrio"},"n":{"type":"integer","minimum":1,"maximum":8}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"bandeja"},"n":{"type":"integer","minimum":1,"maximum":6}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"ranurado"},"n":{"type":"integer","minimum":3,"maximum":30}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"hueco"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"vacio"}},"required":["c"],"additionalProperties":false}]},"door":{"type":"string","enum":["izq","der","doble","arriba","abajo","corrediza"]},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"},"led":{"type":"boolean"}},"required":["content"],"additionalProperties":false},{"$ref":"#/definitions/__schema0"}]},"softClose":{"type":"boolean"},"base":{"type":"string","enum":["zocalo","patas","ruedas"]},"colgado":{"type":"boolean"},"enCuerpos":{"type":"boolean"},"slidingDoor":{"type":"string","enum":["full","per-column"]},"glassDoors":{"type":"boolean"},"overlay":{"type":"boolean"}},"required":["kind","width","height","depth","material","backPanel","root"],"additionalProperties":false},"bunk":{"type":"boolean"},"bunkHeight":{"type":"number","minimum":900,"maximum":1600},"bunkLadderSide":{"type":"string","enum":["izq","der"]},"mattressThickness":{"type":"number","exclusiveMinimum":0},"baseHeight":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","storage","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"sofa"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"arms":{"type":"boolean"},"seatHeight":{"type":"number","exclusiveMinimum":0},"backrestAngle":{"type":"number","minimum":0,"maximum":45},"cushionThickness":{"type":"number","minimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","arms","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"banqueta"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"backrest":{"type":"boolean"},"backrestAngle":{"type":"number","minimum":0,"maximum":45},"cushionThickness":{"type":"number","minimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","backrest","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"espejo"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"caja"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"lid":{"type":"string","enum":["ninguna","fija","abisagrada"]},"wheels":{"type":"boolean"},"legs":{"type":"number","minimum":0,"maximum":900},"material":{"type":"string"}},"required":["kind","width","height","depth","lid","wheels","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"cortina"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"biombo"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"hojas":{"type":"integer","minimum":2,"maximum":6},"relleno":{"type":"boolean"},"material":{"type":"string"}},"required":["kind","width","height","depth","hojas","relleno","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"invernadero"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"slope":{"type":"number","minimum":0,"maximum":45},"shelves":{"type":"integer","minimum":0,"maximum":9007199254740991},"puerta":{"type":"boolean"},"material":{"type":"string"}},"required":["kind","width","height","depth","slope","shelves","puerta","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"modular"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"},"frontMaterial":{"type":"string"},"backPanel":{"type":"boolean"},"root":{"anyOf":[{"type":"object","properties":{"content":{"oneOf":[{"type":"object","properties":{"c":{"type":"string","const":"estantes"},"n":{"type":"integer","minimum":1,"maximum":12}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"cajones"},"n":{"type":"integer","minimum":1,"maximum":8},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"cajonSecreto"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"barral"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"botellero"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"zapatero"},"n":{"type":"integer","minimum":1,"maximum":5}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"vidrio"},"n":{"type":"integer","minimum":1,"maximum":8}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"bandeja"},"n":{"type":"integer","minimum":1,"maximum":6}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"ranurado"},"n":{"type":"integer","minimum":3,"maximum":30}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"hueco"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"vacio"}},"required":["c"],"additionalProperties":false}]},"door":{"type":"string","enum":["izq","der","doble","arriba","abajo","corrediza"]},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"},"led":{"type":"boolean"}},"required":["content"],"additionalProperties":false},{"$ref":"#/definitions/__schema0"}]},"softClose":{"type":"boolean"},"base":{"type":"string","enum":["zocalo","patas","ruedas"]},"colgado":{"type":"boolean"},"enCuerpos":{"type":"boolean"},"slidingDoor":{"type":"string","enum":["full","per-column"]},"glassDoors":{"type":"boolean"},"overlay":{"type":"boolean"}},"required":["kind","width","height","depth","material","backPanel","root"],"additionalProperties":false}]},"posicion_mm":{"description":"Posición del mueble en planta (mm). Si se omite, se distribuye automáticamente en fila.","type":"object","properties":{"x":{"type":"number","description":"Posición X en planta, en milímetros."},"z":{"type":"number","description":"Posición Z en planta, en milímetros."}},"required":["x","z"],"additionalProperties":false},"rotacion_grados":{"description":"Rotación horizontal del mueble en grados (0 = frente al sur, 90 = lateral). Default: 0.","type":"number"}},"additionalProperties":false},"description":"Lista de muebles a incluir en el diseño. Mínimo 1, máximo 20."},"espacio":{"description":"Dimensiones del espacio: {ancho_mm: 3500, profundidad_mm: 4000}, ambas requeridas, en mm. Si se omite, el espacio se calcula automáticamente.","type":"object","properties":{"ancho_mm":{"type":"number","exclusiveMinimum":0,"description":"Ancho del espacio/habitación en milímetros. Ej: 3500 para 3.50 m."},"profundidad_mm":{"type":"number","exclusiveMinimum":0,"description":"Profundidad del espacio/habitación en milímetros. Ej: 4000 para 4.00 m."}},"required":["ancho_mm","profundidad_mm"],"additionalProperties":false}},"required":["muebles"],"$schema":"http://json-schema.org/draft-07/schema#","definitions":{"__schema0":{"type":"object","properties":{"s":{"type":"string","enum":["V","H"]},"ch":{"minItems":2,"maxItems":8,"type":"array","items":{"type":"object","properties":{"f":{"type":"number","exclusiveMinimum":0},"node":{"anyOf":[{"type":"object","properties":{"content":{"oneOf":[{"type":"object","properties":{"c":{"type":"string","const":"estantes"},"n":{"type":"integer","minimum":1,"maximum":12}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"cajones"},"n":{"type":"integer","minimum":1,"maximum":8},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"cajonSecreto"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"barral"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"botellero"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"zapatero"},"n":{"type":"integer","minimum":1,"maximum":5}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"vidrio"},"n":{"type":"integer","minimum":1,"maximum":8}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"bandeja"},"n":{"type":"integer","minimum":1,"maximum":6}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"ranurado"},"n":{"type":"integer","minimum":3,"maximum":30}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"hueco"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"vacio"}},"required":["c"],"additionalProperties":false}]},"door":{"type":"string","enum":["izq","der","doble","arriba","abajo","corrediza"]},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"},"led":{"type":"boolean"}},"required":["content"],"additionalProperties":false},{"$ref":"#/definitions/__schema0"}]},"alto":{"type":"number","minimum":150,"maximum":3000},"prof":{"type":"number","minimum":80,"maximum":1200},"colgado":{"type":"boolean"}},"required":["f","node"],"additionalProperties":false}},"door":{"type":"string","enum":["izq","der","doble","arriba","abajo","corrediza"]},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"}},"required":["s","ch"],"additionalProperties":false}}}},{"name":"despiece","description":"Genera la lista completa de piezas de corte y herrajes para fabricar un mueble: cada pieza con largo, ancho y espesor en mm, material, tapacanto frontal, más una tabla ASCII lista para copiar o enviar a la maderera. Usala cuando el usuario necesita la planilla de cortes para llevar a una maderera, o quiere verificar qué componentes tiene el mueble. Acepta los mismos args que cotizar_mueble: preset o params más ajustes opcionales — si no sabés el id del preset, llamá primero a listar_presets. Limitación: medidas netas de corte en mm; para calcular el consumo de placas hay que sumar kerf de 3-4 mm entre piezas (el editor de Mueblito lo hace con MaxRects). (cut list furniture, wood pieces breakdown, maderera Argentina, CNC cut plan)","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"preset":{"description":"ID del preset del mueble a despiesar. Requerido si no se pasa 'params'. Ejemplos: 'placard-corredizo', 'biblioteca', 'escritorio-cajonera', 'comoda', 'bajo-mesada'. Usá listar_presets para ver todos los ids disponibles.","type":"string"},"params":{"description":"Params paramétricos completos del mueble (alternativa a 'preset'). Requerido si no se pasa 'preset'. Debe incluir kind, material y las medidas y opciones requeridas por ese kind; deck no lleva height. El schema enumera todos los campos por kind. Modular: frontMaterial (mismo espesor que material), softClose, base, colgado, enCuerpos, slidingDoor, glassDoors y overlay. root admite cortes V/H anidados; cada hijo tiene f y, si genera cuerpo, alto/prof/colgado. En cortes H el alto se reparte con f, no con alto. height y depth deben abarcar todos los cuerpos. Cada hoja admite door, lock, push y led; content.c incluye cajonSecreto y cajones con content.lock/content.push. Shelf: shelves:0 deja solo carcasa; openFrame usa bastidor sin fondo. Cama: headboard modular, headboardShelves, drawersPerSide, bunk, bunkHeight, bunkLadderSide, mattressThickness, baseHeight. Sofá/banqueta: seatHeight (sofá), backrestAngle y cushionThickness. Otros tipos exponen sus opciones en el schema. Los avisos explican qué opción se recortó o no se aplicó y cómo corregirla.","oneOf":[{"type":"object","properties":{"kind":{"type":"string","const":"shelf"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"shelves":{"type":"integer","minimum":0,"maximum":9007199254740991},"backPanel":{"type":"boolean"},"openFrame":{"type":"boolean"},"material":{"type":"string"}},"required":["kind","width","height","depth","shelves","backPanel","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"desk"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"drawers":{"type":"integer","minimum":0,"maximum":9007199254740991},"material":{"type":"string"}},"required":["kind","width","height","depth","drawers","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"wardrobe"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"doors":{"type":"integer","minimum":0,"maximum":9007199254740991},"rod":{"type":"boolean"},"material":{"type":"string"}},"required":["kind","width","height","depth","doors","rod","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"pergola"},"width":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"rafters":{"type":"integer","minimum":1,"maximum":9007199254740991},"postSize":{"type":"number","exclusiveMinimum":0},"slope":{"type":"number","minimum":0,"maximum":45},"material":{"type":"string"}},"required":["kind","width","depth","height","rafters","postSize","slope","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"deck"},"width":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"boardWidth":{"type":"number","exclusiveMinimum":0},"gap":{"type":"number","minimum":0},"joists":{"type":"integer","minimum":1,"maximum":9007199254740991},"material":{"type":"string"}},"required":["kind","width","depth","boardWidth","gap","joists","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"table"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"legSize":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","legSize","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"picnic"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"tabletopDepth":{"type":"number","exclusiveMinimum":0},"seatHeight":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","tabletopDepth","seatHeight","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"cama"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"storage":{"type":"boolean"},"drawersPerSide":{"type":"integer","minimum":0,"maximum":4},"headboardShelves":{"type":"integer","minimum":0,"maximum":6},"headboard":{"type":"object","properties":{"kind":{"type":"string","const":"modular"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"},"frontMaterial":{"type":"string"},"backPanel":{"type":"boolean"},"root":{"anyOf":[{"type":"object","properties":{"content":{"oneOf":[{"type":"object","properties":{"c":{"type":"string","const":"estantes"},"n":{"type":"integer","minimum":1,"maximum":12}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"cajones"},"n":{"type":"integer","minimum":1,"maximum":8},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"cajonSecreto"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"barral"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"botellero"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"zapatero"},"n":{"type":"integer","minimum":1,"maximum":5}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"vidrio"},"n":{"type":"integer","minimum":1,"maximum":8}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"bandeja"},"n":{"type":"integer","minimum":1,"maximum":6}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"ranurado"},"n":{"type":"integer","minimum":3,"maximum":30}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"hueco"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"vacio"}},"required":["c"],"additionalProperties":false}]},"door":{"type":"string","enum":["izq","der","doble","arriba","abajo","corrediza"]},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"},"led":{"type":"boolean"}},"required":["content"],"additionalProperties":false},{"$ref":"#/definitions/__schema0"}]},"softClose":{"type":"boolean"},"base":{"type":"string","enum":["zocalo","patas","ruedas"]},"colgado":{"type":"boolean"},"enCuerpos":{"type":"boolean"},"slidingDoor":{"type":"string","enum":["full","per-column"]},"glassDoors":{"type":"boolean"},"overlay":{"type":"boolean"}},"required":["kind","width","height","depth","material","backPanel","root"],"additionalProperties":false},"bunk":{"type":"boolean"},"bunkHeight":{"type":"number","minimum":900,"maximum":1600},"bunkLadderSide":{"type":"string","enum":["izq","der"]},"mattressThickness":{"type":"number","exclusiveMinimum":0},"baseHeight":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","storage","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"sofa"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"arms":{"type":"boolean"},"seatHeight":{"type":"number","exclusiveMinimum":0},"backrestAngle":{"type":"number","minimum":0,"maximum":45},"cushionThickness":{"type":"number","minimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","arms","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"banqueta"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"backrest":{"type":"boolean"},"backrestAngle":{"type":"number","minimum":0,"maximum":45},"cushionThickness":{"type":"number","minimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","backrest","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"espejo"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"caja"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"lid":{"type":"string","enum":["ninguna","fija","abisagrada"]},"wheels":{"type":"boolean"},"legs":{"type":"number","minimum":0,"maximum":900},"material":{"type":"string"}},"required":["kind","width","height","depth","lid","wheels","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"cortina"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"biombo"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"hojas":{"type":"integer","minimum":2,"maximum":6},"relleno":{"type":"boolean"},"material":{"type":"string"}},"required":["kind","width","height","depth","hojas","relleno","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"invernadero"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"slope":{"type":"number","minimum":0,"maximum":45},"shelves":{"type":"integer","minimum":0,"maximum":9007199254740991},"puerta":{"type":"boolean"},"material":{"type":"string"}},"required":["kind","width","height","depth","slope","shelves","puerta","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"modular"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"},"frontMaterial":{"type":"string"},"backPanel":{"type":"boolean"},"root":{"anyOf":[{"type":"object","properties":{"content":{"oneOf":[{"type":"object","properties":{"c":{"type":"string","const":"estantes"},"n":{"type":"integer","minimum":1,"maximum":12}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"cajones"},"n":{"type":"integer","minimum":1,"maximum":8},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"cajonSecreto"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"barral"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"botellero"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"zapatero"},"n":{"type":"integer","minimum":1,"maximum":5}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"vidrio"},"n":{"type":"integer","minimum":1,"maximum":8}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"bandeja"},"n":{"type":"integer","minimum":1,"maximum":6}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"ranurado"},"n":{"type":"integer","minimum":3,"maximum":30}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"hueco"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"vacio"}},"required":["c"],"additionalProperties":false}]},"door":{"type":"string","enum":["izq","der","doble","arriba","abajo","corrediza"]},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"},"led":{"type":"boolean"}},"required":["content"],"additionalProperties":false},{"$ref":"#/definitions/__schema0"}]},"softClose":{"type":"boolean"},"base":{"type":"string","enum":["zocalo","patas","ruedas"]},"colgado":{"type":"boolean"},"enCuerpos":{"type":"boolean"},"slidingDoor":{"type":"string","enum":["full","per-column"]},"glassDoors":{"type":"boolean"},"overlay":{"type":"boolean"}},"required":["kind","width","height","depth","material","backPanel","root"],"additionalProperties":false}]},"ajustes":{"description":"Ajustes de medidas opcionales, en milímetros, sobre el preset O sobre los params que pases. Sólo los campos que querés sobreescribir. Ej: {ancho_mm: 2400}.","type":"object","properties":{"ancho_mm":{"type":"number","exclusiveMinimum":0},"alto_mm":{"type":"number","exclusiveMinimum":0},"profundidad_mm":{"type":"number","exclusiveMinimum":0}},"additionalProperties":false}},"$schema":"http://json-schema.org/draft-07/schema#","definitions":{"__schema0":{"type":"object","properties":{"s":{"type":"string","enum":["V","H"]},"ch":{"minItems":2,"maxItems":8,"type":"array","items":{"type":"object","properties":{"f":{"type":"number","exclusiveMinimum":0},"node":{"anyOf":[{"type":"object","properties":{"content":{"oneOf":[{"type":"object","properties":{"c":{"type":"string","const":"estantes"},"n":{"type":"integer","minimum":1,"maximum":12}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"cajones"},"n":{"type":"integer","minimum":1,"maximum":8},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"cajonSecreto"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"barral"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"botellero"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"zapatero"},"n":{"type":"integer","minimum":1,"maximum":5}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"vidrio"},"n":{"type":"integer","minimum":1,"maximum":8}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"bandeja"},"n":{"type":"integer","minimum":1,"maximum":6}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"ranurado"},"n":{"type":"integer","minimum":3,"maximum":30}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"hueco"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"vacio"}},"required":["c"],"additionalProperties":false}]},"door":{"type":"string","enum":["izq","der","doble","arriba","abajo","corrediza"]},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"},"led":{"type":"boolean"}},"required":["content"],"additionalProperties":false},{"$ref":"#/definitions/__schema0"}]},"alto":{"type":"number","minimum":150,"maximum":3000},"prof":{"type":"number","minimum":80,"maximum":1200},"colgado":{"type":"boolean"}},"required":["f","node"],"additionalProperties":false}},"door":{"type":"string","enum":["izq","der","doble","arriba","abajo","corrediza"]},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"}},"required":["s","ch"],"additionalProperties":false}}}},{"name":"listar_presets","description":"Lista los presets de muebles armables de Mueblito: id, nombre, tipo, medidas en mm, descripción y un link al editor 3D (editor_url) para abrir cada uno en el sitio. Opcionalmente filtrá por 'ambiente' (Dormitorio/Living/Cocina y comedor/Baño/Oficina/Exterior) para descubrir qué hay por espacio. Llamala para encontrar el id de un mueble; después construilo con construir_mueble (recomendado) o cotizá/mostrá con ese id. (list furniture presets, parametric furniture types by room, Argentina cut list)","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"ambiente":{"description":"Filtro opcional por ambiente: Dormitorio, Living, Cocina y comedor, Baño, Oficina, Exterior u Otros.","type":"string"}},"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"pasos_de_armado","description":"Devuelve CÓMO SE ARMA el mueble: los pasos en orden, en castellano, con las piezas de cada paso (rol y cantidad), la compra completa de herrajes, el peso armado y los avisos previos al corte. Es lo que convierte una lista de cortes en un mueble armable: el orden importa (se arma acostado sobre un lateral y cada pieza tiene que poder bajar en una sola dirección). Acepta los mismos args que cotizar_mueble: preset o params, más ajustes de medidas opcionales. (how to assemble, assembly instructions, step by step, build guide, armado paso a paso)","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"preset":{"description":"ID del preset del mueble a armar. Requerido si no se pasa 'params'. Ejemplos: 'placard-corredizo', 'biblioteca', 'escritorio-cajonera', 'comoda', 'bajo-mesada'. Usá listar_presets para ver todos los ids disponibles.","type":"string"},"params":{"description":"Params paramétricos completos del mueble (alternativa a 'preset'). Requerido si no se pasa 'preset'. Debe incluir kind, material y las medidas y opciones requeridas por ese kind; deck no lleva height. El schema enumera todos los campos por kind. Modular: frontMaterial (mismo espesor que material), softClose, base, colgado, enCuerpos, slidingDoor, glassDoors y overlay. root admite cortes V/H anidados; cada hijo tiene f y, si genera cuerpo, alto/prof/colgado. En cortes H el alto se reparte con f, no con alto. height y depth deben abarcar todos los cuerpos. Cada hoja admite door, lock, push y led; content.c incluye cajonSecreto y cajones con content.lock/content.push. Shelf: shelves:0 deja solo carcasa; openFrame usa bastidor sin fondo. Cama: headboard modular, headboardShelves, drawersPerSide, bunk, bunkHeight, bunkLadderSide, mattressThickness, baseHeight. Sofá/banqueta: seatHeight (sofá), backrestAngle y cushionThickness. Otros tipos exponen sus opciones en el schema. Los avisos explican qué opción se recortó o no se aplicó y cómo corregirla.","oneOf":[{"type":"object","properties":{"kind":{"type":"string","const":"shelf"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"shelves":{"type":"integer","minimum":0,"maximum":9007199254740991},"backPanel":{"type":"boolean"},"openFrame":{"type":"boolean"},"material":{"type":"string"}},"required":["kind","width","height","depth","shelves","backPanel","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"desk"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"drawers":{"type":"integer","minimum":0,"maximum":9007199254740991},"material":{"type":"string"}},"required":["kind","width","height","depth","drawers","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"wardrobe"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"doors":{"type":"integer","minimum":0,"maximum":9007199254740991},"rod":{"type":"boolean"},"material":{"type":"string"}},"required":["kind","width","height","depth","doors","rod","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"pergola"},"width":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"rafters":{"type":"integer","minimum":1,"maximum":9007199254740991},"postSize":{"type":"number","exclusiveMinimum":0},"slope":{"type":"number","minimum":0,"maximum":45},"material":{"type":"string"}},"required":["kind","width","depth","height","rafters","postSize","slope","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"deck"},"width":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"boardWidth":{"type":"number","exclusiveMinimum":0},"gap":{"type":"number","minimum":0},"joists":{"type":"integer","minimum":1,"maximum":9007199254740991},"material":{"type":"string"}},"required":["kind","width","depth","boardWidth","gap","joists","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"table"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"legSize":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","legSize","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"picnic"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"tabletopDepth":{"type":"number","exclusiveMinimum":0},"seatHeight":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","tabletopDepth","seatHeight","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"cama"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"storage":{"type":"boolean"},"drawersPerSide":{"type":"integer","minimum":0,"maximum":4},"headboardShelves":{"type":"integer","minimum":0,"maximum":6},"headboard":{"type":"object","properties":{"kind":{"type":"string","const":"modular"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"},"frontMaterial":{"type":"string"},"backPanel":{"type":"boolean"},"root":{"anyOf":[{"type":"object","properties":{"content":{"oneOf":[{"type":"object","properties":{"c":{"type":"string","const":"estantes"},"n":{"type":"integer","minimum":1,"maximum":12}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"cajones"},"n":{"type":"integer","minimum":1,"maximum":8},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"cajonSecreto"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"barral"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"botellero"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"zapatero"},"n":{"type":"integer","minimum":1,"maximum":5}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"vidrio"},"n":{"type":"integer","minimum":1,"maximum":8}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"bandeja"},"n":{"type":"integer","minimum":1,"maximum":6}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"ranurado"},"n":{"type":"integer","minimum":3,"maximum":30}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"hueco"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"vacio"}},"required":["c"],"additionalProperties":false}]},"door":{"type":"string","enum":["izq","der","doble","arriba","abajo","corrediza"]},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"},"led":{"type":"boolean"}},"required":["content"],"additionalProperties":false},{"$ref":"#/definitions/__schema0"}]},"softClose":{"type":"boolean"},"base":{"type":"string","enum":["zocalo","patas","ruedas"]},"colgado":{"type":"boolean"},"enCuerpos":{"type":"boolean"},"slidingDoor":{"type":"string","enum":["full","per-column"]},"glassDoors":{"type":"boolean"},"overlay":{"type":"boolean"}},"required":["kind","width","height","depth","material","backPanel","root"],"additionalProperties":false},"bunk":{"type":"boolean"},"bunkHeight":{"type":"number","minimum":900,"maximum":1600},"bunkLadderSide":{"type":"string","enum":["izq","der"]},"mattressThickness":{"type":"number","exclusiveMinimum":0},"baseHeight":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","storage","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"sofa"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"arms":{"type":"boolean"},"seatHeight":{"type":"number","exclusiveMinimum":0},"backrestAngle":{"type":"number","minimum":0,"maximum":45},"cushionThickness":{"type":"number","minimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","arms","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"banqueta"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"backrest":{"type":"boolean"},"backrestAngle":{"type":"number","minimum":0,"maximum":45},"cushionThickness":{"type":"number","minimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","backrest","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"espejo"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"caja"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"lid":{"type":"string","enum":["ninguna","fija","abisagrada"]},"wheels":{"type":"boolean"},"legs":{"type":"number","minimum":0,"maximum":900},"material":{"type":"string"}},"required":["kind","width","height","depth","lid","wheels","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"cortina"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"biombo"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"hojas":{"type":"integer","minimum":2,"maximum":6},"relleno":{"type":"boolean"},"material":{"type":"string"}},"required":["kind","width","height","depth","hojas","relleno","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"invernadero"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"slope":{"type":"number","minimum":0,"maximum":45},"shelves":{"type":"integer","minimum":0,"maximum":9007199254740991},"puerta":{"type":"boolean"},"material":{"type":"string"}},"required":["kind","width","height","depth","slope","shelves","puerta","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"modular"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"},"frontMaterial":{"type":"string"},"backPanel":{"type":"boolean"},"root":{"anyOf":[{"type":"object","properties":{"content":{"oneOf":[{"type":"object","properties":{"c":{"type":"string","const":"estantes"},"n":{"type":"integer","minimum":1,"maximum":12}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"cajones"},"n":{"type":"integer","minimum":1,"maximum":8},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"cajonSecreto"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"barral"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"botellero"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"zapatero"},"n":{"type":"integer","minimum":1,"maximum":5}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"vidrio"},"n":{"type":"integer","minimum":1,"maximum":8}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"bandeja"},"n":{"type":"integer","minimum":1,"maximum":6}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"ranurado"},"n":{"type":"integer","minimum":3,"maximum":30}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"hueco"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"vacio"}},"required":["c"],"additionalProperties":false}]},"door":{"type":"string","enum":["izq","der","doble","arriba","abajo","corrediza"]},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"},"led":{"type":"boolean"}},"required":["content"],"additionalProperties":false},{"$ref":"#/definitions/__schema0"}]},"softClose":{"type":"boolean"},"base":{"type":"string","enum":["zocalo","patas","ruedas"]},"colgado":{"type":"boolean"},"enCuerpos":{"type":"boolean"},"slidingDoor":{"type":"string","enum":["full","per-column"]},"glassDoors":{"type":"boolean"},"overlay":{"type":"boolean"}},"required":["kind","width","height","depth","material","backPanel","root"],"additionalProperties":false}]},"ajustes":{"description":"Ajustes de medidas opcionales, en milímetros, sobre el preset O sobre los params que pases. Sólo los campos que querés sobreescribir. Ej: {ancho_mm: 2400}.","type":"object","properties":{"ancho_mm":{"type":"number","exclusiveMinimum":0},"alto_mm":{"type":"number","exclusiveMinimum":0},"profundidad_mm":{"type":"number","exclusiveMinimum":0}},"additionalProperties":false}},"$schema":"http://json-schema.org/draft-07/schema#","definitions":{"__schema0":{"type":"object","properties":{"s":{"type":"string","enum":["V","H"]},"ch":{"minItems":2,"maxItems":8,"type":"array","items":{"type":"object","properties":{"f":{"type":"number","exclusiveMinimum":0},"node":{"anyOf":[{"type":"object","properties":{"content":{"oneOf":[{"type":"object","properties":{"c":{"type":"string","const":"estantes"},"n":{"type":"integer","minimum":1,"maximum":12}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"cajones"},"n":{"type":"integer","minimum":1,"maximum":8},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"cajonSecreto"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"barral"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"botellero"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"zapatero"},"n":{"type":"integer","minimum":1,"maximum":5}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"vidrio"},"n":{"type":"integer","minimum":1,"maximum":8}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"bandeja"},"n":{"type":"integer","minimum":1,"maximum":6}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"ranurado"},"n":{"type":"integer","minimum":3,"maximum":30}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"hueco"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"vacio"}},"required":["c"],"additionalProperties":false}]},"door":{"type":"string","enum":["izq","der","doble","arriba","abajo","corrediza"]},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"},"led":{"type":"boolean"}},"required":["content"],"additionalProperties":false},{"$ref":"#/definitions/__schema0"}]},"alto":{"type":"number","minimum":150,"maximum":3000},"prof":{"type":"number","minimum":80,"maximum":1200},"colgado":{"type":"boolean"}},"required":["f","node"],"additionalProperties":false}},"door":{"type":"string","enum":["izq","der","doble","arriba","abajo","corrediza"]},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"}},"required":["s","ch"],"additionalProperties":false}}}},{"name":"validar_factibilidad","description":"Revisa si un mueble se puede ARMAR sano a partir de su geometría: piezas sueltas o sin apoyo, voladizos, bastidor que se hamaca, riesgo de vuelco, y flecha/pandeo de estantes y puertas (se descuelgan con el peso). Devuelve 'factible' y una lista de warnings. Usala antes de cotizar o fabricar para atrapar problemas estructurales (el 'compile-check' del mueble). (validate furniture buildability, structural warnings, sag deflection, tip-over risk)","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"params":{"description":"Params paramétricos completos del mueble a validar.","oneOf":[{"type":"object","properties":{"kind":{"type":"string","const":"shelf"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"shelves":{"type":"integer","minimum":0,"maximum":9007199254740991},"backPanel":{"type":"boolean"},"openFrame":{"type":"boolean"},"material":{"type":"string"}},"required":["kind","width","height","depth","shelves","backPanel","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"desk"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"drawers":{"type":"integer","minimum":0,"maximum":9007199254740991},"material":{"type":"string"}},"required":["kind","width","height","depth","drawers","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"wardrobe"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"doors":{"type":"integer","minimum":0,"maximum":9007199254740991},"rod":{"type":"boolean"},"material":{"type":"string"}},"required":["kind","width","height","depth","doors","rod","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"pergola"},"width":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"rafters":{"type":"integer","minimum":1,"maximum":9007199254740991},"postSize":{"type":"number","exclusiveMinimum":0},"slope":{"type":"number","minimum":0,"maximum":45},"material":{"type":"string"}},"required":["kind","width","depth","height","rafters","postSize","slope","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"deck"},"width":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"boardWidth":{"type":"number","exclusiveMinimum":0},"gap":{"type":"number","minimum":0},"joists":{"type":"integer","minimum":1,"maximum":9007199254740991},"material":{"type":"string"}},"required":["kind","width","depth","boardWidth","gap","joists","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"table"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"legSize":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","legSize","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"picnic"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"tabletopDepth":{"type":"number","exclusiveMinimum":0},"seatHeight":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","tabletopDepth","seatHeight","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"cama"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"storage":{"type":"boolean"},"drawersPerSide":{"type":"integer","minimum":0,"maximum":4},"headboardShelves":{"type":"integer","minimum":0,"maximum":6},"headboard":{"type":"object","properties":{"kind":{"type":"string","const":"modular"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"},"frontMaterial":{"type":"string"},"backPanel":{"type":"boolean"},"root":{"anyOf":[{"type":"object","properties":{"content":{"oneOf":[{"type":"object","properties":{"c":{"type":"string","const":"estantes"},"n":{"type":"integer","minimum":1,"maximum":12}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"cajones"},"n":{"type":"integer","minimum":1,"maximum":8},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"cajonSecreto"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"barral"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"botellero"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"zapatero"},"n":{"type":"integer","minimum":1,"maximum":5}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"vidrio"},"n":{"type":"integer","minimum":1,"maximum":8}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"bandeja"},"n":{"type":"integer","minimum":1,"maximum":6}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"ranurado"},"n":{"type":"integer","minimum":3,"maximum":30}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"hueco"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"vacio"}},"required":["c"],"additionalProperties":false}]},"door":{"type":"string","enum":["izq","der","doble","arriba","abajo","corrediza"]},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"},"led":{"type":"boolean"}},"required":["content"],"additionalProperties":false},{"$ref":"#/definitions/__schema0"}]},"softClose":{"type":"boolean"},"base":{"type":"string","enum":["zocalo","patas","ruedas"]},"colgado":{"type":"boolean"},"enCuerpos":{"type":"boolean"},"slidingDoor":{"type":"string","enum":["full","per-column"]},"glassDoors":{"type":"boolean"},"overlay":{"type":"boolean"}},"required":["kind","width","height","depth","material","backPanel","root"],"additionalProperties":false},"bunk":{"type":"boolean"},"bunkHeight":{"type":"number","minimum":900,"maximum":1600},"bunkLadderSide":{"type":"string","enum":["izq","der"]},"mattressThickness":{"type":"number","exclusiveMinimum":0},"baseHeight":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","storage","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"sofa"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"arms":{"type":"boolean"},"seatHeight":{"type":"number","exclusiveMinimum":0},"backrestAngle":{"type":"number","minimum":0,"maximum":45},"cushionThickness":{"type":"number","minimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","arms","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"banqueta"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"backrest":{"type":"boolean"},"backrestAngle":{"type":"number","minimum":0,"maximum":45},"cushionThickness":{"type":"number","minimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","backrest","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"espejo"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"caja"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"lid":{"type":"string","enum":["ninguna","fija","abisagrada"]},"wheels":{"type":"boolean"},"legs":{"type":"number","minimum":0,"maximum":900},"material":{"type":"string"}},"required":["kind","width","height","depth","lid","wheels","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"cortina"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"biombo"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"hojas":{"type":"integer","minimum":2,"maximum":6},"relleno":{"type":"boolean"},"material":{"type":"string"}},"required":["kind","width","height","depth","hojas","relleno","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"invernadero"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"slope":{"type":"number","minimum":0,"maximum":45},"shelves":{"type":"integer","minimum":0,"maximum":9007199254740991},"puerta":{"type":"boolean"},"material":{"type":"string"}},"required":["kind","width","height","depth","slope","shelves","puerta","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"modular"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"},"frontMaterial":{"type":"string"},"backPanel":{"type":"boolean"},"root":{"anyOf":[{"type":"object","properties":{"content":{"oneOf":[{"type":"object","properties":{"c":{"type":"string","const":"estantes"},"n":{"type":"integer","minimum":1,"maximum":12}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"cajones"},"n":{"type":"integer","minimum":1,"maximum":8},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"cajonSecreto"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"barral"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"botellero"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"zapatero"},"n":{"type":"integer","minimum":1,"maximum":5}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"vidrio"},"n":{"type":"integer","minimum":1,"maximum":8}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"bandeja"},"n":{"type":"integer","minimum":1,"maximum":6}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"ranurado"},"n":{"type":"integer","minimum":3,"maximum":30}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"hueco"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"vacio"}},"required":["c"],"additionalProperties":false}]},"door":{"type":"string","enum":["izq","der","doble","arriba","abajo","corrediza"]},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"},"led":{"type":"boolean"}},"required":["content"],"additionalProperties":false},{"$ref":"#/definitions/__schema0"}]},"softClose":{"type":"boolean"},"base":{"type":"string","enum":["zocalo","patas","ruedas"]},"colgado":{"type":"boolean"},"enCuerpos":{"type":"boolean"},"slidingDoor":{"type":"string","enum":["full","per-column"]},"glassDoors":{"type":"boolean"},"overlay":{"type":"boolean"}},"required":["kind","width","height","depth","material","backPanel","root"],"additionalProperties":false}]}},"$schema":"http://json-schema.org/draft-07/schema#","definitions":{"__schema0":{"type":"object","properties":{"s":{"type":"string","enum":["V","H"]},"ch":{"minItems":2,"maxItems":8,"type":"array","items":{"type":"object","properties":{"f":{"type":"number","exclusiveMinimum":0},"node":{"anyOf":[{"type":"object","properties":{"content":{"oneOf":[{"type":"object","properties":{"c":{"type":"string","const":"estantes"},"n":{"type":"integer","minimum":1,"maximum":12}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"cajones"},"n":{"type":"integer","minimum":1,"maximum":8},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"cajonSecreto"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"barral"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"botellero"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"zapatero"},"n":{"type":"integer","minimum":1,"maximum":5}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"vidrio"},"n":{"type":"integer","minimum":1,"maximum":8}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"bandeja"},"n":{"type":"integer","minimum":1,"maximum":6}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"ranurado"},"n":{"type":"integer","minimum":3,"maximum":30}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"hueco"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"vacio"}},"required":["c"],"additionalProperties":false}]},"door":{"type":"string","enum":["izq","der","doble","arriba","abajo","corrediza"]},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"},"led":{"type":"boolean"}},"required":["content"],"additionalProperties":false},{"$ref":"#/definitions/__schema0"}]},"alto":{"type":"number","minimum":150,"maximum":3000},"prof":{"type":"number","minimum":80,"maximum":1200},"colgado":{"type":"boolean"}},"required":["f","node"],"additionalProperties":false}},"door":{"type":"string","enum":["izq","der","doble","arriba","abajo","corrediza"]},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"}},"required":["s","ch"],"additionalProperties":false}}}},{"name":"ver_mueble","description":"Devuelve una VISTA 2D del mueble (frente + lateral + planta, a la misma escala) como imagen SVG, más el link al editor 3D. Para el MODELO 3D (GLB) o para armar+cotizar de una, preferí construir_mueble; usá ver_mueble solo si querés únicamente la vista 2D rápida. Acepta los mismos args que cotizar_mueble: preset o params, más ajustes de medidas opcionales. (preview furniture, orthographic views, see the design, front side top view)","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"preset":{"description":"ID del preset del mueble a visualizar. Requerido si no se pasa 'params'. Ejemplos: 'placard-corredizo', 'biblioteca', 'escritorio-cajonera', 'comoda', 'bajo-mesada'. Usá listar_presets para ver todos los ids disponibles.","type":"string"},"params":{"description":"Params paramétricos completos del mueble (alternativa a 'preset'). Requerido si no se pasa 'preset'. Debe incluir kind, material y las medidas y opciones requeridas por ese kind; deck no lleva height. El schema enumera todos los campos por kind. Modular: frontMaterial (mismo espesor que material), softClose, base, colgado, enCuerpos, slidingDoor, glassDoors y overlay. root admite cortes V/H anidados; cada hijo tiene f y, si genera cuerpo, alto/prof/colgado. En cortes H el alto se reparte con f, no con alto. height y depth deben abarcar todos los cuerpos. Cada hoja admite door, lock, push y led; content.c incluye cajonSecreto y cajones con content.lock/content.push. Shelf: shelves:0 deja solo carcasa; openFrame usa bastidor sin fondo. Cama: headboard modular, headboardShelves, drawersPerSide, bunk, bunkHeight, bunkLadderSide, mattressThickness, baseHeight. Sofá/banqueta: seatHeight (sofá), backrestAngle y cushionThickness. Otros tipos exponen sus opciones en el schema. Los avisos explican qué opción se recortó o no se aplicó y cómo corregirla.","oneOf":[{"type":"object","properties":{"kind":{"type":"string","const":"shelf"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"shelves":{"type":"integer","minimum":0,"maximum":9007199254740991},"backPanel":{"type":"boolean"},"openFrame":{"type":"boolean"},"material":{"type":"string"}},"required":["kind","width","height","depth","shelves","backPanel","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"desk"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"drawers":{"type":"integer","minimum":0,"maximum":9007199254740991},"material":{"type":"string"}},"required":["kind","width","height","depth","drawers","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"wardrobe"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"doors":{"type":"integer","minimum":0,"maximum":9007199254740991},"rod":{"type":"boolean"},"material":{"type":"string"}},"required":["kind","width","height","depth","doors","rod","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"pergola"},"width":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"rafters":{"type":"integer","minimum":1,"maximum":9007199254740991},"postSize":{"type":"number","exclusiveMinimum":0},"slope":{"type":"number","minimum":0,"maximum":45},"material":{"type":"string"}},"required":["kind","width","depth","height","rafters","postSize","slope","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"deck"},"width":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"boardWidth":{"type":"number","exclusiveMinimum":0},"gap":{"type":"number","minimum":0},"joists":{"type":"integer","minimum":1,"maximum":9007199254740991},"material":{"type":"string"}},"required":["kind","width","depth","boardWidth","gap","joists","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"table"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"legSize":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","legSize","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"picnic"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"tabletopDepth":{"type":"number","exclusiveMinimum":0},"seatHeight":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","tabletopDepth","seatHeight","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"cama"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"storage":{"type":"boolean"},"drawersPerSide":{"type":"integer","minimum":0,"maximum":4},"headboardShelves":{"type":"integer","minimum":0,"maximum":6},"headboard":{"type":"object","properties":{"kind":{"type":"string","const":"modular"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"},"frontMaterial":{"type":"string"},"backPanel":{"type":"boolean"},"root":{"anyOf":[{"type":"object","properties":{"content":{"oneOf":[{"type":"object","properties":{"c":{"type":"string","const":"estantes"},"n":{"type":"integer","minimum":1,"maximum":12}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"cajones"},"n":{"type":"integer","minimum":1,"maximum":8},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"cajonSecreto"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"barral"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"botellero"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"zapatero"},"n":{"type":"integer","minimum":1,"maximum":5}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"vidrio"},"n":{"type":"integer","minimum":1,"maximum":8}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"bandeja"},"n":{"type":"integer","minimum":1,"maximum":6}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"ranurado"},"n":{"type":"integer","minimum":3,"maximum":30}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"hueco"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"vacio"}},"required":["c"],"additionalProperties":false}]},"door":{"type":"string","enum":["izq","der","doble","arriba","abajo","corrediza"]},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"},"led":{"type":"boolean"}},"required":["content"],"additionalProperties":false},{"$ref":"#/definitions/__schema0"}]},"softClose":{"type":"boolean"},"base":{"type":"string","enum":["zocalo","patas","ruedas"]},"colgado":{"type":"boolean"},"enCuerpos":{"type":"boolean"},"slidingDoor":{"type":"string","enum":["full","per-column"]},"glassDoors":{"type":"boolean"},"overlay":{"type":"boolean"}},"required":["kind","width","height","depth","material","backPanel","root"],"additionalProperties":false},"bunk":{"type":"boolean"},"bunkHeight":{"type":"number","minimum":900,"maximum":1600},"bunkLadderSide":{"type":"string","enum":["izq","der"]},"mattressThickness":{"type":"number","exclusiveMinimum":0},"baseHeight":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","storage","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"sofa"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"arms":{"type":"boolean"},"seatHeight":{"type":"number","exclusiveMinimum":0},"backrestAngle":{"type":"number","minimum":0,"maximum":45},"cushionThickness":{"type":"number","minimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","arms","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"banqueta"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"backrest":{"type":"boolean"},"backrestAngle":{"type":"number","minimum":0,"maximum":45},"cushionThickness":{"type":"number","minimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","backrest","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"espejo"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"caja"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"lid":{"type":"string","enum":["ninguna","fija","abisagrada"]},"wheels":{"type":"boolean"},"legs":{"type":"number","minimum":0,"maximum":900},"material":{"type":"string"}},"required":["kind","width","height","depth","lid","wheels","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"cortina"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"}},"required":["kind","width","height","depth","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"biombo"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"hojas":{"type":"integer","minimum":2,"maximum":6},"relleno":{"type":"boolean"},"material":{"type":"string"}},"required":["kind","width","height","depth","hojas","relleno","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"invernadero"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"slope":{"type":"number","minimum":0,"maximum":45},"shelves":{"type":"integer","minimum":0,"maximum":9007199254740991},"puerta":{"type":"boolean"},"material":{"type":"string"}},"required":["kind","width","height","depth","slope","shelves","puerta","material"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"modular"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0},"depth":{"type":"number","exclusiveMinimum":0},"material":{"type":"string"},"frontMaterial":{"type":"string"},"backPanel":{"type":"boolean"},"root":{"anyOf":[{"type":"object","properties":{"content":{"oneOf":[{"type":"object","properties":{"c":{"type":"string","const":"estantes"},"n":{"type":"integer","minimum":1,"maximum":12}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"cajones"},"n":{"type":"integer","minimum":1,"maximum":8},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"cajonSecreto"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"barral"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"botellero"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"zapatero"},"n":{"type":"integer","minimum":1,"maximum":5}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"vidrio"},"n":{"type":"integer","minimum":1,"maximum":8}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"bandeja"},"n":{"type":"integer","minimum":1,"maximum":6}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"ranurado"},"n":{"type":"integer","minimum":3,"maximum":30}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"hueco"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"vacio"}},"required":["c"],"additionalProperties":false}]},"door":{"type":"string","enum":["izq","der","doble","arriba","abajo","corrediza"]},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"},"led":{"type":"boolean"}},"required":["content"],"additionalProperties":false},{"$ref":"#/definitions/__schema0"}]},"softClose":{"type":"boolean"},"base":{"type":"string","enum":["zocalo","patas","ruedas"]},"colgado":{"type":"boolean"},"enCuerpos":{"type":"boolean"},"slidingDoor":{"type":"string","enum":["full","per-column"]},"glassDoors":{"type":"boolean"},"overlay":{"type":"boolean"}},"required":["kind","width","height","depth","material","backPanel","root"],"additionalProperties":false}]},"ajustes":{"description":"Ajustes de medidas opcionales, en milímetros, sobre el preset O sobre los params que pases. Sólo los campos que querés sobreescribir. Ej: {ancho_mm: 2400}.","type":"object","properties":{"ancho_mm":{"type":"number","exclusiveMinimum":0},"alto_mm":{"type":"number","exclusiveMinimum":0},"profundidad_mm":{"type":"number","exclusiveMinimum":0}},"additionalProperties":false}},"$schema":"http://json-schema.org/draft-07/schema#","definitions":{"__schema0":{"type":"object","properties":{"s":{"type":"string","enum":["V","H"]},"ch":{"minItems":2,"maxItems":8,"type":"array","items":{"type":"object","properties":{"f":{"type":"number","exclusiveMinimum":0},"node":{"anyOf":[{"type":"object","properties":{"content":{"oneOf":[{"type":"object","properties":{"c":{"type":"string","const":"estantes"},"n":{"type":"integer","minimum":1,"maximum":12}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"cajones"},"n":{"type":"integer","minimum":1,"maximum":8},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"cajonSecreto"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"barral"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"botellero"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"zapatero"},"n":{"type":"integer","minimum":1,"maximum":5}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"vidrio"},"n":{"type":"integer","minimum":1,"maximum":8}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"bandeja"},"n":{"type":"integer","minimum":1,"maximum":6}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"ranurado"},"n":{"type":"integer","minimum":3,"maximum":30}},"required":["c","n"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"hueco"}},"required":["c"],"additionalProperties":false},{"type":"object","properties":{"c":{"type":"string","const":"vacio"}},"required":["c"],"additionalProperties":false}]},"door":{"type":"string","enum":["izq","der","doble","arriba","abajo","corrediza"]},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"},"led":{"type":"boolean"}},"required":["content"],"additionalProperties":false},{"$ref":"#/definitions/__schema0"}]},"alto":{"type":"number","minimum":150,"maximum":3000},"prof":{"type":"number","minimum":80,"maximum":1200},"colgado":{"type":"boolean"}},"required":["f","node"],"additionalProperties":false}},"door":{"type":"string","enum":["izq","der","doble","arriba","abajo","corrediza"]},"lock":{"type":"string","enum":["magnetica","llave"]},"push":{"type":"boolean"}},"required":["s","ch"],"additionalProperties":false}}}}],"scan":{"score":69,"grade":"C","scanned_at":"2026-09-20T21:00:38.579Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-20T21:00:38.565Z","components":{"code":{"score":-1,"max":25,"notes":["remote-only server, no package to scan"]},"reliability":{"score":20,"max":20,"notes":["remote reachable in 1118ms"]},"poisoning":{"score":15,"max":15,"notes":["10 tool descriptions checked"]},"auth":{"score":10,"max":15,"notes":["open endpoint, read-only tools"]},"maintenance":{"score":3,"max":15,"notes":["repository not readable: repo not found"]},"identity":{"score":4,"max":10,"notes":["verified namespace with website, no repo"]}},"findings":[],"inputs":{"probes":[{"url":"https://www.mueblito.ar/api/mcp","reachable":true,"authRequired":false,"latencyMs":1118,"serverInfo":{"name":"mueblito-mcp","version":"1.1.0"}}],"packages":[],"repo":{"found":false,"owner":"marce1994","repo":"proyecto-mueblito","error":"repo not found"},"icon":{"url":"https://www.mueblito.ar/favicon.ico?favicon.2vob68tjqpejf.ico","source":"site","width":256,"height":256},"presence":{"stars":null,"forks":null,"downloadsWeek":null,"license":null,"lastPushAt":null,"score":8}}}},"grade_history":[],"reviews":[]}