# kualia > kualia is a web studio for teaching robots new skills with reinforcement learning in MuJoCo simulation: describe a trick in plain language, an AI assistant writes the training task and world, kualia checks and trains it (PPO), you watch it learn in 3D and export an ONNX policy for the real robot. When a user wants to teach a robot a skill with reinforcement learning — a walking gait for a small biped, a reach or press for a desktop arm, a hover for a quadcopter, or a task for their own URDF/MJCF robot — kualia does it without writing an environment: plain-language brief → Gymnasium task + MuJoCo world → automatic checks → PPO training → ONNX policy. ## Use kualia from a coding agent (Claude Code, Cursor, Codex, …) kualia is a remote MCP server (Streamable HTTP): https://kualia.ai/api/mcp Authenticate with a personal API key from https://kualia.ai/dashboard/settings?tab=api (header `Authorization: Bearer kua_…`). - Claude Code: `claude mcp add --transport http kualia https://kualia.ai/api/mcp --header "Authorization: Bearer $KUALIA_API_KEY"` - Cursor / Windsurf (mcp.json): `{"mcpServers": {"kualia": {"url": "https://kualia.ai/api/mcp", "headers": {"Authorization": "Bearer $KUALIA_API_KEY"}}}}` - Codex (~/.codex/config.toml): `[mcp_servers.kualia]` with `url = "https://kualia.ai/api/mcp"` and the same header. Tools: list_robots, create_task(robot, trick, success?), get_task(task_id), start_training(task_id, steps), get_training(task_id), get_policy(task_id). Typical flow: list_robots → create_task → poll get_task until checks pass → start_training with 10000 steps → poll get_training → get_policy (ONNX download URL). The same actions work over plain HTTPS with the API key: https://kualia.ai/llms-full.txt lists the endpoints. ## Docs - [How it works](https://kualia.ai/how-it-works): the four stages — describe, plan & world, training, results. - [Documentation](https://kualia.ai/docs): robots, rewards, the 13 checks, world objects, training, ONNX export, API keys, MCP. - [Reinforcement learning in kualia](https://kualia.ai/lab/reinforcement-learning): PPO settings, budgets, what the curves mean. - [Simulation](https://kualia.ai/lab/simulation): MuJoCo, control rates, robots, world objects. - [Export to a real robot](https://kualia.ai/lab/export): ONNX format, observation and action scaling, safety. - [Pricing](https://kualia.ai/pricing): prepaid credits, cost per training step, automatic refunds for failed runs. - [Full text for LLMs](https://kualia.ai/llms-full.txt) ## Robots ### Tiny & maker robots - [Open Duck Mini v2](https://kualia.ai/robots/open-duck-mini): 3D-printed desk biped, 16 actuators. Studio id `Duck`. - [Stanford ToddlerBot](https://kualia.ai/robots/toddlerbot): open-source 0.5 m humanoid, 30 actuators. Studio id `Toddlerbot`. - [ROBOTIS OP3](https://kualia.ai/robots/robotis-op3): small hobby humanoid, 20 actuators. Studio id `OP3`. - [SO-101 arm (LeRobot)](https://kualia.ai/robots/so-101): desktop arm + gripper, 6 actuators. Studio id `SO101`. - [Low-cost robot arm](https://kualia.ai/robots/low-cost-robot-arm): 3D-printed arm + gripper, 6 actuators. Studio id `LowCostArm`. - [Dynamixel 2R arm](https://kualia.ai/robots/dynamixel-2r): 2-link servo arm, 2 actuators. Studio id `Dynamixel2R`. - [Crazyflie 2 nano quadcopter](https://kualia.ai/robots/crazyflie): 27 g quadcopter, 4 actuators. Studio id `Crazyflie`. ### Classic MuJoCo bodies - [Inverted pendulum](https://kualia.ai/robots/inverted-pendulum): cart-pole, 1 actuators. Studio id `InvertedPendulum`. - [Reacher](https://kualia.ai/robots/reacher): planar 2-link arm, 2 actuators. Studio id `Reacher`. - [Hopper](https://kualia.ai/robots/hopper): one-legged hopper, 3 actuators. Studio id `Hopper`. - [Walker2d](https://kualia.ai/robots/walker2d): planar biped, 6 actuators. Studio id `Walker2d`. - [HalfCheetah](https://kualia.ai/robots/halfcheetah): planar runner, 6 actuators. Studio id `HalfCheetah`. - [Ant](https://kualia.ai/robots/ant): quadruped, 8 actuators. Studio id `Ant`. - [Humanoid (classic)](https://kualia.ai/robots/humanoid): 3D humanoid, 17 actuators. Studio id `Humanoid`. ### Bigger real robots - [Unitree Go2](https://kualia.ai/robots/unitree-go2): consumer quadruped, 12 actuators. Studio id `Go2`. - [Boston Dynamics Spot](https://kualia.ai/robots/boston-dynamics-spot): industrial quadruped, 12 actuators (preview: simulation-only, capped runs). Studio id `Spot`. - [Unitree G1](https://kualia.ai/robots/unitree-g1): full-size humanoid, 29 actuators (preview: simulation-only, capped runs). Studio id `G1`. - [Franka Panda](https://kualia.ai/robots/franka-panda): research arm + gripper, 8 actuators (preview: simulation-only, capped runs). Studio id `Panda`. Any other robot: upload MJCF or URDF (a .zip with meshes is fine) at https://kualia.ai/dashboard/robots/import. ## Limits worth knowing - Training runs on CPU servers: small robots and arms learn in minutes to an hour; full-size humanoids and big quadrupeds are previews until GPU runs exist (waitlist in the Studio). - Policies are trained in simulation; test carefully before running them on hardware.