# Blender vs geodesic-dome-mcp — Capability Comparison 23.jun.2026 | OSA (mother node) | FreeBSD 15.0 ## The problem Generate geodesic dome wireframes for architectural visualization and bill-of-materials calculation. The obvious answer was Blender — it has `bpy.ops.mesh.primitive_ico_sphere_add()` built in. ## Before: Blender | Metric | Value | | -------------------- | ------------------------------------------------------------- | | Packages installed | 53 | | Download size | 323 MiB | | Installed size | 1 GiB | | Key dependencies | llvm19, ffmpeg, openimageio, opencolorio, openvdb, pulseaudio | | Headless mode | `blender --background` (still pulls X11 deps) | | Dome generation time | ~14s (Eevee render, 2000×2000) | ## After: geodesic-dome-mcp | Metric | Value | | -------------------- | ---------------------------------------------- | | File size | 6 KB (294 lines of Python) | | Dependencies | numpy, Pillow (already installed on all nodes) | | Dome generation time | <1s (wireframe), sub-second (BOM only) | | Headless | Always — no X11, no GPU, no display server | | Outputs | Wireframe PNG + structural BOM (JSON) | ## Capability impact | Capability | Before (Blender) | After (geodesic-dome-mcp) | | ------------------------ | -------------------------------- | ---------------------------------- | | Can run on 32GB USB ISO? | ❌ (1 GiB, exceeds headroom) | ✅ (6 KB, negligible) | | Can run on 12GB RAM VPS? | ❌ (would fit disk but overkill) | ✅ (already running) | | Can run on bare-metal? | ✅ (if installed) | ✅ (always) | | Structural BOM? | ❌ (needs separate script) | ✅ (built-in) | | Half-sphere mode? | Manual mesh cut | ✅ (`half=true`) | | Connector analysis? | ❌ | ✅ (3/4/5/6-way counts) | | Strut length table? | ❌ | ✅ (grouped by size) | | Material cost estimates? | ❌ | ✅ (glass/polycarbonate/insulated) | ## Registering capabilities This comparison feeds into the mother node's PostgreSQL `hive_nodes` table. When a node registers its hardware profile, the capability derivation trigger marks nodes that can run `geodesic-dome-mcp` (all of them — numpy + Pillow are universal). Nodes that have Blender installed get an additional `has_blender: true` capability for 3D rendering workloads. ## OSA as example (registered 23.jun.2026) ```json { "hostname": "osa.smilepowered.org", "ram_gb": 12, "cpu_cores": 6, "capabilities": { "has_gpu": false, "cpu_only": true, "geodesic_dome_mcp": true } } ``` 12GB RAM, no GPU, but `geodesic_dome_mcp` runs fine. No Blender needed.