Skip to content

ROBOTIS OP3 is a small humanoid with 20 joints, made by ROBOTIS. This model comes from MuJoCo Menagerie by Google DeepMind, under the Apache-2.0 licence. Not made by Lucen Robotics. Listed as a reference model for simulation.

humanoid20 joints3.15 kg in simulation50 Hz

Use with your AI

Add this to your AI’s MCP settings (.mcp.json for Claude Code). A read-only key is enough to browse. Nothing here starts a robot. Use the hub from your AI.

{
  "mcpServers": {
    "lucen": {
      "command": "lucen-mcp",
      "env": {
        "LUCEN_API_KEY": "lucen_sk_...",
        "LUCEN_API_URL": "https://api.mousemouse.ai"
      }
    }
  }
}

Or give your AI the task in words. The prompt names the tools and the exact commands.

You have the MouseMouse MCP server (lucen-mcp) configured against https://api.mousemouse.ai.
Work with the robot repo lucen/robotis-op3 on that hub.
1. Read its card with get_robot_card(owner, repo) and its policies with search_repos(kind="model", robot="lucen/robotis-op3").
2. To train for it, submit a run with submit_training using template ppo_mujoco and robot "lucen/robotis-op3" (the CLI equivalent is: lucen runs create --template ppo_mujoco --robot lucen/robotis-op3 --executor worker).
3. Never start, stop or steer a robot: a handoff is request_deploy, and a person approves it in the Inbox.
ROBOTIS OP3, standing in its home pose

Move its joints, or let it fall under gravity, in your browser. About 10 MB the first time. Open the full simulator

README

README.md

ROBOTIS OP3

ROBOTIS OP3 is a small humanoid with 20 joints, made by ROBOTIS. This model comes from MuJoCo Menagerie by Google DeepMind, under the Apache-2.0 licence. The licence text is in LICENSE.

Not made by Lucen Robotics. Listed as a reference model for simulation.

The source's own README is kept unchanged as SOURCE_README.md.

How it was set up

The files come from robotis_op3 in MuJoCo Menagerie, at commit 822c2d8. The robot card was drafted from the model by lucen robot init, as in Add your robot.

The model file does not state the values below. Each one comes from the source beside it.

SettingValueWhere it comes from
Control rate50 HzPlayground op3/joystick.py ctrl_dt=0.02
Actionoffset from the default posePlayground op3/joystick.py: motor_targets = default_pose + action * action_scale
Action scale0.3Playground op3/joystick.py action_scale=0.3
What a policy sensesjoint positions, joint velocities, base angular velocity, gravity directionthe OP3's Dynamixel encoders and IMU
Commandforward, sideways and turning speedPlayground's joystick command (vx, vy, yaw)
Everything elseread from the model filejoint order, qpos0 as the default pose (the model has no keyframe; Playground's task keeps its own), and kp 21.1 / force limit 5 N·m from the MJCF's own <position> actuators.

The configs cited above, at the commits read:

  • Playground: MuJoCo Playground, commit 4057c14. Each robot's task file, under locomotion or manipulation, in its default_config().

No file from the source was changed. This README, the robot card and the robot's pictures are new.