Een 3D-fabriek en werkbank voor agents.

Een lokale MCP-server die Claude Code, Codex of elke MCP-capabele agent een gereedschapskist voor 3D geeft. Vraag om iets kleins — een mok, een hut — en wat terugkomt wordt bewaard als een recept: een klein bestand dat het exact opnieuw maakt. Hij staat stroomopwaarts van de tools die je al gebruikt — Blender, een engine, een slicer — en voert ze standaardbestanden; hij vervangt er geen enkele. De rest van wat de fabriek doet, vertelt ze je wanneer je ernaar grijpt.

npx mojulo init·node 22.12+·apache‑2.0·draait lokaal

de reelbeweeg over een tegel of tik erop voor hoe het gemaakt is

Een ingerichte lounge gerenderd in Blender Cycles: eikenhouten vloer, bank en twee fauteuils tegenover een mediawand, negen gloeiende inbouwspots in het plafond
Een sixpack Ruby-grapefruitfrisdrank gerenderd in Blender Cycles: een bedrukte koraalrode verpakking achter twee staande blikjes met etiket en één liggend blikje, op een grijze studioachtergrond
Een koptelefoonhaak voor de bureaurand in mojulo's shaded weergave: een oranje C-vormige klem met een gebogen arm die aan de voorkant omhoog krult
Een gele werkrobot-spinnentank in mojulo's shaded weergave: zes poten met wielen gebogen bij de knie, een rechtopstaande tank achterop, een witte camerakop met drie stippen
Een gegenereerd stadsblok in mojulo's shaded weergave: twee kruisende straten met auto's en bomen, een park met bankjes, en een gebouw van vijf verdiepingen op de hoekkavel
Een Parijs appartementsgebouw van zes verdiepingen in mojulo's live wereld: een stenen straatniveau met dubbele deuren, vier verdiepingen met openslaande ramen, een teruggezet penthouse en een dakterras met balustrade
De overlaat van een waterkrachtdam bij hoogwater in een maanloze nacht in mojulo's live wereld: twaalf schuiven die elk een witte sluier water laten vallen onder warme kruinverlichting, met een bergkam erachter
Een grijze blockout van een V8-motor in mojulo's live wereld: twee cilinderbanken met koppen en deksels, uitlaatspruitstukken, een inlaatspruitstuk en gasklephuis bovenop
Een humanoïde g-frame mk II staand in mojulo's live wereld: een blauw-met-rode borstkas over een wit frame, een gekamde kop, gepanelde armen en benen, een onderarmschild langs de zij

uit de doos

Een doorlopende reel van mojulo's vier mogelijkheden als point-cloud-renders: een mok gemeten op 9 cm, een geseede stad met het label seed 4021, de mok die doorstroomt naar world.html, mug.stl en mug.gltf als exportbestanden, en een JSON-recept van 8 regels dat de mok opnieuw laat groeien

Vaste vormen in echte centimeters — draaiprofielen, sweeps en onderdeelgrafen, gevraagd in één zin.

Levels gegroeid uit een seed — dezelfde seed laat overal dezelfde plek opnieuw groeien.

Wat het maakt kan weg — als één zelfstandige HTML-pagina, een glTF, of printbestanden: STL / 3MF op ware schaal. Je hoeft niets te installeren om ze te openen.

Elk ding wordt bewaard als een recept — een klein bestand dat een agent later kan heropenen, bewerken en opnieuw laten groeien.

vereistennode 22.12+ & npm·draait op cpu — geen gpu·geen account, geen telemetrie·breng je eigen mcp-agent mee (claude code, codex)

één regel, overalhetzelfde recept in de browser, blender en unreal

Alles wat mojulo maakt wordt bewaard als een recept: een paar leesbare regels die elke keer dat ze geopend worden hetzelfde ding opnieuw laten groeien. Verander één regel en elke kopie verandert mee, waar die ook terechtkwam. Deze lounge is een recept van twaalf regels. Eén regel erbij gaf hem negen plafondspots — in de browser, in Blenders render, en als negen light actors in Unreal. Niemand opende een modelleerprogramma.

Cycles-render van de lounge vóór de inbouwspots: een kaal plafond
voor — de lounge zoals eerst gevraagd, kaal plafond
Cycles-render van de lounge na de inbouwspots: negen gloeiende spots in het plafond
na — één regel toegevoegd aan het recept. zelfde kamer, zelfde meubels, zelfde camera
{
  "title": "One-room house plan — living",
  "kind": "floorplan",
  "width": 24, "height": 28,
  "rooms": [{ "x": 2, "y": 2, "w": 20, "h": 24, "glyph": "L" }],
  "doors": [{ "x": 12, "y": 26, "room": 0, "edge": "S" }],
  "furnish": true,
  "view": "cutaway",
  "seed": 7,
  "potLights": true
}

dat is het hele recept. de render die je ziet wordt er bij elke opening uit gemaakt en mag weg; het recept is wat je bewaart. wat deze kamer onderweg naar drie tools heeft meegemaakt, inclusief de bug die ze vond, is vastgelegd.

waar het heen gaateen webpagina · blender · een game-engine · een printer

Wat je maakt kan weg, als bestanden die de tools die je al gebruikt zelf openen. Geen van deze tools is verplicht: de webpagina en de printbestanden hebben helemaal geen andere software nodig.

een webpagina

Eén zelfstandig HTML-bestand met de 3D erin. Stuur het door, host het, open het op een telefoon. Niets te installeren, geen account voor wie het opent.

blender

Het model opent als een standaard glTF. Staat Blender op de machine, dan kan mojulo het echt licht in het model laten bakken zonder een venster te openen, of een artiest een .blend geven om met de hand af te maken en het afgewerkte oppervlak weer terugnemen.

een game-engine

Godot: open de geëxporteerde map als project en druk op play. Unity en Unreal: een genummerde handleiding loodst je door de import. Beide hebben hun eigen editor en een account nodig, en dat vragen zij, niet mojulo.

een 3D-printer

STL- of 3MF-bestanden in echte millimeters. Open er een in elke slicer. Staat PrusaSlicer of Bambu Studio geïnstalleerd, dan slicet mojulo het eerst op de achtergrond en noteert het aantal lagen, de printtijd en het filament naast het bestand.

wat elke tool je vraagt te installeren, wat er aan de andere kant uit komt, en welke hiervan daadwerkelijk vastgelegd zijn uitgevoerd: de kleine lettertjes zetten het per tool op een rij en zeggen waar geen run bestaat.

naar een printeréén haak, vastgelegd

Een koptelefoonhaak voor een bureaurand: een C-vormige klem met een gebogen arm, gerenderd in mojulo's werkbank op echte millimeters
de haak — 81 × 30 × 33 mm, zoals de slicer hem opmat

Een koptelefoonhaak voor een bureaurand, gevraagd in één zin. Hij kwam terug met 19 mm bekopening; opnieuw vragen maakte dat 25 mm, op hetzelfde recept. Weggeschreven als 3MF opende hij in twee slicers op deze machine, en beide waren het eens over zijn maat en dat hij schoon slicet.

draait lokaal

De server, de recepten en de renders staan op je eigen machine. Mojulo levert geen taalmodel en geen chatvenster — het is een server die je bestaande agent over MCP aanroept, die jouw tokens tegen jouw tarief verbruikt. Apache-2.0, geïnstalleerd vanaf npm, standaard self-hosted omdat er nergens anders iets te hosten valt.

STEMbeweeg over een tegel voor de live wereld · klik voor de studie

Hetzelfde raster, aan het werk gezet als leraar. Vraag je agent om het concept in één zin — "laat me een zwart gat zien met zijn accretieschijf", "een reactorkern, maar laat de regelstaven weg", "de orbitalen van koolstof" — en het mint een live, orbiteerbare 3D-wereld uit een recept van een paar regels. Verander een getal en mint het opnieuw; vraag erom van opzij; exporteer de pagina en geef hem aan een klas.

aan de slag

Eén regel, daarna praat je met je agent.

npx mojulo init
vereist·node 22.12+·apache‑2.0·draait lokaal·geen account