
Furniture Designer
io.github.LuisEnVilla由 GitHub 帳號 LuisEnVilla 發布v0.1.3更新於 Oct 27, 2026
Professional furniture design: specs, validation, cut optimization, BOM, and 3D reports.
概覽
本機 MCP 伺服器,把家具尺寸與類型轉成可交付生產的方案:規格、結構驗證、裁切最佳化、BOM、組裝步驟與 3D HTML 報告。
- 可以做什麼
- 依家具類型與尺寸產生完整規格(板材、五金、位置、分區)
- 查詢人體工學標準、材料性質、結構規則、五金目錄與組裝規範
- 依結構規則驗證規格,並產生含封邊長度的物料清單
- 在標準板材上做二維裁切最佳化,支援木紋方向與鋸縫
- 產生西班牙語的逐步組裝說明
- 管理多個已儲存的設計,並提供含 3D 檢視與即時更新的互動式 HTML 報告
- 適用情境
- 適合木工與櫥櫃製作情境:讓助理從描述的櫃體(衣櫃、廚房底櫃或吊櫃、書架、書桌、浴櫃)直接產出可施工的方案、裁切清單與組裝步驟。也適合反覆調整設計並在瀏覽器 3D 報告中檢視成果。
- 執行需求
- 以本機 Python 套件執行(需 Python 3.12 以上,建議使用 uv,透過 uvx 啟動)。僅 3D 匯出工具需要 FreeCAD 0.21+ 與 MCP 外掛。設計儲存在本機 designs 目錄,HTML 報告經本機 8432 埠提供。
安裝
在 SourceWeft 中
- 開啟 儀表板中的 Furniture Designer,將其新增到工作區。
- 為需要使用其工具的對話啟用該服務。
Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。
其他 MCP 客戶端
參照 儲存庫 中的啟動說明。
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
來源:README.md,提交 aada7ee
工具
0版本歷史
1- v0.1.3最新Sep 16, 2026
評分
已滿足適用檢查項的 50%
該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。
- 近 30 天內可連通25 分
請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。
- 已宣告認證方式10 分
請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。
- 已列出工具15 分
請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。
- 描述必需15 分
- 圖示10 分
- 文件15 分
- 授權條款10 分