
Furniture Designer
io.github.LuisEnVillaPublished by GitHub account LuisEnVillav0.1.3Updated Oct 27, 2026
Professional furniture design: specs, validation, cut optimization, BOM, and 3D reports.
Overview
Local MCP server that turns furniture dimensions and type into a fabrication package: spec, structural validation, cut optimization, BOM, assembly steps and a…
- What you can do
- Generate a full furniture spec (panels, hardware, positions, sections) from type and dimensions
- Look up ergonomic standards, material properties, structural rules, hardware catalog and assembly specs
- Validate the spec against structural rules and produce a bill of materials with edge banding
- Optimize 2D cuts on standard boards with grain direction and kerf
- Produce step-by-step assembly instructions in Spanish
- Manage multiple saved designs, serve an interactive HTML report with 3D viewer and live reload
- When to use it
- Useful for woodworking and cabinet-making work where an assistant should go from a described piece (closet, kitchen base or wall cabinet, bookshelf, desk, vanity) to a buildable package with cut lists and assembly steps. Also handy for iterating on a design and reviewing it in a browser-based 3D report.
- Requirements
- Runs locally as a Python package (Python 3.12 or newer, uv recommended; launched via uvx). FreeCAD 0.21+ with an MCP addon is needed only for the 3D export tools. Designs are stored in a local designs folder and the HTML report is served on local port 8432.
Installation
In SourceWeft
- Open Furniture Designer in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
furniture-designer-mcp
Servidor MCP para diseño profesional de muebles
[PyPI] [License] [MCP] [Python] [GitHub Release]
Convierte dimensiones y tipo de mueble en un paquete completo listo para fabricacion: especificacion tecnica, validacion estructural, optimizacion de cortes, BOM, instrucciones de ensamble, reporte HTML interactivo con viewer 3D, y exportacion opcional a FreeCAD.
Flujo general
Instalacion
Como servidor MCP (recomendado)
En .mcp.json de tu proyecto:
Desarrollo local
Uso con Claude Code (Plugin)
El furniture-designer-plugin agrega un asistente conversacional de 4 fases que guia al usuario desde la idea hasta el paquete de fabricacion:
El plugin maneja el flujo completo: pregunta tipo, dimensiones, material y funcionalidad, luego genera el spec, valida, optimiza cortes y produce el reporte HTML — todo conversacionalmente.
Ver documentacion completa del plugin: furniture-designer-plugin
Funcionalidades principales
Reporte HTML interactivo
El entregable principal es un reporte HTML servido en http://localhost:8432/{design_id} con:
- Pagina Diseno — Viewer 3D (Three.js) del mueble ensamblado + ficha tecnica con specs, roles, hardware y notas. Incluye herramienta de medicion interactiva y diagrama 2D de dimensiones internas (tipo IKEA)
- Pagina Partes — Vista 3D explosionada + tabla de partes con dimensiones y canteado + guia de ensamble
- Pagina Cortes — Layout SVG por tablero con piezas coloreadas por rol, canteado visual, barra de uso (verde/amarillo/rojo)
- Pagina Historial — Timeline vertical de iteraciones con badges de cambios
Multi-diseno con persistencia
Cada diseño se almacena en ./designs/{design_id}/ con:
Puedes trabajar en multiples diseños simultáneamente y retomar cualquiera en sesiones futuras.
Live reload via WebSocket
El reporte se actualiza automáticamente en el navegador cada vez que el agente genera una nueva iteración. No necesitas recargar la página — el WebSocket notifica el cambio y el JS actualiza la vista.
Mapa de secciones con lenguaje natural
El motor genera etiquetas de sección automáticamente basadas en los divisores verticales del diseño:
Esto permite que el usuario diga "haz la izquierda mas ancha" y el agente resuelva la referencia a la sección correcta.
Zocalo como marco estructural
El zócalo no es un panel suelto — es un marco rectangular de 4 piezas que soporta todo el peso del mueble:
El frente se retranquea 5cm para que los pies no choquen. Los laterales del mueble se apoyan encima de este marco.
Filtro automatico de paneles MDF
Los paneles de MDF 3mm (respaldos, fondos de cajón) se filtran automáticamente del optimizador de cortes — se cortan de un stock diferente (tablero MDF, no melamina). El filtro actúa sobre roles back, drawer_bottom, y cualquier panel con espesor menor al material principal.
Herramientas (23 tools)
Diseno
Conocimiento
Todas aceptan
brief=truepara respuestas compactas (ahorro 60-80% tokens).
Validacion y fabricacion
Multi-diseno y reporte
FreeCAD — exportar (requiere FreeCAD + RPC server)
FreeCAD — importar (requiere freecad-mcp)
Desarrollo
Tipos de mueble
Materiales
Arquitectura del servidor
Consideraciones tecnicas
Unidades
- Entrada: dimensiones en cm (ancho, alto, fondo)
- Salida: spec en mm (
width_mm,height_mm,thickness_mm) - Cortes: el optimizer usa
width/height(sin sufijo_mm) — schema diferente al spec
Veta del material
El optimizador soporta grain_direction="length" para mantener la dirección de veta consistente en melaminas con textura. Esto restringe la rotación de piezas. Si una pieza no cabe con restricción de veta, se relaja automáticamente a none con aviso.
Desbaste de sierra (kerf)
3mm por defecto. Se descuenta en cada corte del optimizador. Ajustable según la hoja utilizada.
Respaldos
Siempre MDF 3mm. El validador genera error si un mueble no tiene panel trasero (rol back). Se excluyen automáticamente del optimizador de cortes de melamina.
Divisiones automaticas
Si el ancho de una sección excede el tramo máximo del material, se agrega una división vertical automáticamente.
Muebles altos (>180cm)
El validador genera warning de anclaje a pared por riesgo de volcamiento.
Cajones completos
design_furniture genera caja completa: frente + 2 laterales + trasera + fondo MDF 3mm + correderas telescópicas.
Modo compact
Las tools principales retornan compact=true por defecto: resumen legible + JSON reducido. Usar compact=false solo si se necesita el JSON completo.
Hot-reload
reload_engine recarga todos los módulos del engine sin reiniciar el servidor MCP. Útil durante desarrollo.
Requisitos
- Python >= 3.12
- uv para gestión de paquetes
- FreeCAD 0.21+ con addon MCP (solo para exportación 3D)
Licencia
MIT
Source: README.md at commit aada7ee
Tools
0Version history
1- v0.1.3LatestSep 16, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts