面向智能体的3D 工厂工作台

一个本地 MCP 服务器,为 Claude Code、Codex 或任何支持 MCP 的智能体提供一套 3D 工具。要一件小东西——一个杯子、一间小屋——返回的结果会作为配方保存:一个能精确重做它的小文件。它位于您已在使用的工具——Blender、游戏引擎、切片软件——的上游,向它们输送标准文件;它不取代其中任何一个。工厂的其他能力,会在您用到时再告诉您。

npx mojulo init·node 22.12+·apache‑2.0·本地运行

卷片悬停或点按图块,查看它是如何做成的

在 Blender Cycles 中渲染的带家具休息室:橡木地板,沙发与两把俱乐部椅面向媒体墙,九盏嵌入式顶灯亮着
在 Blender Cycles 中渲染的六罐装 Ruby 西柚苏打水:一只印花珊瑚色纸箱,前面两罐贴标的易拉罐立着、一罐躺着,置于灰色摄影棚无缝背景上
mojulo 着色视图中的桌边耳机挂钩:一只橙色 C 形夹,前端一条扫掠而成的臂向上卷起
mojulo 着色视图中的黄色工程机器人蜘蛛坦克:六条带轮的腿在膝部弯曲,后部一只直立的罐体,一个带三点的白色摄像头头部
mojulo 着色视图中生成的城市街区:两条交叉的街道,有汽车和树木,一座带长椅的公园,转角地块上一栋五层楼房
mojulo 实时世界中的一栋六层巴黎公寓楼:石砌的临街层带成对的门,四层落地窗,一层退台的顶层公寓,以及带栏杆的屋顶露台
mojulo 实时世界中一座水电站大坝在无月之夜泄洪的溢洪道:十二道闸门各自倾泻一幅白色水幕,坝顶暖色灯光之下,远处一道山脊
mojulo 实时世界中的灰色 V8 发动机粗模:两列缸盖与盖罩、排气歧管、顶部的进气歧管与节气门体
mojulo 实时世界中站立的人形 g-frame mk II:白色骨架上蓝红相间的胸甲,带冠饰的头部,分块装甲的手臂和腿,一面前臂盾牌垂在身侧

开箱即用

一段循环卷片,以点云渲染展示 mojulo 的四项能力:一只量得 9 cm 的杯子,一座标注 seed 4021 的种子城市,杯子流入 world.html,mug.stl 与 mug.gltf 导出文件,以及一份 8 行 JSON 配方重新生成这只杯子

真实厘米尺寸的实体——车削、扫掠与零件图,一句话即可要到。

由种子生成的关卡——同一颗种子在任何地方都重新生成同一个地方。

做出来的东西可以带走——作为一个自包含的 HTML 页面、一个 glTF,或打印文件:真实尺寸的 STL / 3MF。打开它们无需安装任何东西。

每件东西都作为配方保存——一个智能体日后可以重新打开、编辑并重新生成的小文件。

要求node 22.12+ & npm·在 cpu 上运行 — 无需 gpu·无需账户、无遥测·自备 mcp 智能体(claude code, codex)

一行,处处生效同一份配方,在浏览器、blender 和 unreal 中

mojulo 做出的一切都作为配方保存:几行可读的文字,每次打开都重新生成同一件东西。改一行,每一份副本都随之改变,无论它去了哪里。这间休息室是一份十二行的配方。加上一行,它就有了九盏顶灯——在浏览器里、在 Blender 的渲染里、以及作为 Unreal 里的九个灯光 actor。没有人打开过建模工具。

加装筒灯前休息室的 Cycles 渲染:素净的天花板
之前 — 最初要到的休息室,素净的天花板
加装筒灯后休息室的 Cycles 渲染:天花板上九盏发光的筒灯
之后 — 配方加了一行。同一房间、同样家具、同一机位
{
  "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
}

这就是整份配方。您看到的渲染每次打开都由它生成,可以丢弃;配方才是您保留的东西。这间房间进入三种工具的过程,包括它发现的那个 bug,都记录在案。

去向何处网页 · blender · 游戏引擎 · 打印机

您做出的东西可以带走,成为您已在使用的工具能直接打开的文件。这些工具都不是必需的:网页和打印文件完全不需要其他软件。

网页

一个自包含的 HTML 文件,3D 就在其中。发送它、托管它、在手机上打开它。无需安装,打开的人也无需账户。

blender

模型以标准 glTF 打开。如果机器上装有 Blender,mojulo 可以让它把真实光照烘焙进模型而不打开任何窗口,或者把 .blend 交给美术手工完成,再把完成的表面取回来。

游戏引擎

Godot:把导出的文件夹作为项目打开,按下播放。Unity 与 Unreal:一份分步编号的指南带您完成导入。两者都需要各自的编辑器和账户——那是它们的要求,不是 mojulo 的。

3D 打印机

真实毫米尺寸的 STL 或 3MF 文件。在任何切片软件里打开即可。如果装有 PrusaSlicer 或 Bambu Studio,mojulo 会先在后台切片,并把层数、打印时间和耗材用量记在文件旁边。

每种工具要求您安装什么、另一头出来的是什么、以及其中哪些已实际运行并记录在案:细则按工具逐一列出,并说明哪些尚无运行记录。

送往打印机一只挂钩,记录在案

桌边耳机挂钩:一只 C 形夹带一条扫掠而成的臂,在 mojulo 工作台中以真实毫米尺寸渲染
挂钩 — 81 × 30 × 33 mm,切片软件测得

一只桌边耳机挂钩,一句话要到。回来时夹口宽 19 mm;再要一次,在同一配方上加宽到 25 mm。写出为 3MF 后,它在这台机器上的两款切片软件里打开,两者对它的尺寸看法一致,也都认为它能干净地切片。

本地运行

服务器、配方和渲染都在您的机器上。Mojulo 不附带语言模型,也没有聊天窗口——它是一个由您现有的智能体通过 MCP 调用的服务器,按您自己的费率消耗您自己的 token。Apache-2.0,从 npm 安装,默认自托管,因为没有任何东西需要托管在别处。

STEM悬停图块查看实时世界 · 点击进入讲解

同一套网格,用作老师。用一句话向您的智能体要一个概念——“给我看一个黑洞,带它的吸积盘”“一个反应堆堆芯,然后把控制棒留在外面”“碳的轨道”——它就会从几行长的配方铸造出一个可环绕观察的实时 3D 世界。改一个数字再铸造一次;要它的侧视图;导出页面交给一个班级。

开始使用

一行命令,然后和您的智能体对话。

npx mojulo init
要求·node 22.12+·apache‑2.0·本地运行·无需账户