Skip to content

openreality-mcp 0.4.0: export a scene to MuJoCo

Latest

Choose a tag to compare

@bdavidzhang bdavidzhang released this 20 Oct 20:57
e1fc76d

openreality-mcp 0.4.0: export a scene to MuJoCo

New tool: export_mujoco. One call takes a scene to a loadable MuJoCo model. It builds (or reuses) the scene's mujoco_mjcf export on the server, downloads it, unpacks it to disk, and returns the path to scene.xml:

import mujoco
model = mujoco.MjModel.from_xml_path("<scene_xml from the tool result>")   # needs mujoco>=3.3

or python -m mujoco.viewer --mjcf=<path>. The export also ships trajectory.csv and a replay.py that flies the scan camera through the scene.

What's in the model

  • The scan placed in metres, Z up, with the floor at z=0. Lengths are metric only after you anchor the scene, so export_mujoco is refused (409 metric_scale_required) until you run scene_anchor. The refusal comes back verbatim, with a pointer to the fix.
  • Collision is a floor plane plus one upright box per detected object, each box fit to the scan points inside it. The scan mesh is visual only, because MuJoCo collides any mesh as its convex hull, which would turn a room into one solid block. Walls and undetected furniture do not collide. Every export's manifest.json says this in collision_note.

Everything else

  • mujoco_mjcf is accepted by export_manifest, export_prepare and export_status.
  • 42 tools (was 41).

Server side: MuJoCo and Isaac Sim exports now share one core, so both get the same metric gate, gravity alignment and mesh.

Build the Claude desktop bundle yourself with cd mcp && npm run build:mcpb.