π€ Advanced robotics simulation platform that enables AI assistants to control complex physics simulations through natural language. Built on MuJoCo physics engine and Model Context Protocol for seamless integration with Claude Desktop and other MCP clients.
π Quick Start | π Documentation | ποΈ Architecture | π§ API Reference | π― Advanced Features
- Natural Language Control: Control robots using plain English commands
- Real-time Visualization: Native MuJoCo viewer with interactive GUI
- MCP Standard Compliance: Full Model Context Protocol implementation
- Cross-Platform Support: Works on macOS, Linux, and Windows
- ποΈ Advanced Control Algorithms: PID, trajectory planning, optimization control
- π€ Multi-Robot Coordination: Formation control, cooperative manipulation
- π¬ Sensor Feedback Systems: Closed-loop control with multi-modal sensors
- π§ RL Integration: Gymnasium-compatible reinforcement learning environments
- π Physics Benchmarking: Performance, accuracy, and scalability testing
- π Real-time Monitoring: Advanced visualization and analytics tools
- π Production Ready: Enhanced server with connection pooling and diagnostics
pip install mujoco mcp numpy
pip install -e .
python mujoco_viewer_server.py
Add to your Claude Desktop config:
{
"mcpServers": {
"mujoco-mcp": {
"command": "python",
"args": ["-m", "mujoco_mcp"],
"env": {
"PYTHONPATH": "./src"
}
}
}
}
In Claude Desktop:
"Create a pendulum simulation"
"Set the pendulum angle to 45 degrees"
"Step the simulation 100 times"
"Show me the current state"
# Simple pendulum
"Create a pendulum simulation"
"Set the pendulum to 90 degrees and let it swing"
# Double pendulum (chaotic motion)
"Create a double pendulum"
"Give it a small push and watch the chaos"
# Cart-pole balancing
"Create a cart pole simulation"
"Try to balance the pole"
# Load robot from MuJoCo Menagerie
"Load a Franka Panda robot"
"Move the robot arm in a circle"
"Set all joints to home position"
# Multi-robot coordination
"Create two robot arms side by side"
"Make them work together to lift a box"
# Walking robots
"Load the Unitree Go2 quadruped"
"Make it walk forward"
from mujoco_mcp.rl_integration import create_reaching_env
# Create RL environment
env = create_reaching_env("franka_panda")
# Train your agent
obs, info = env.reset()
for _ in range(1000):
action = env.action_space.sample() # Your policy here
obs, reward, terminated, truncated, info = env.step(action)
if terminated or truncated:
obs, info = env.reset()
Tool | Description | Example |
---|---|---|
get_server_info |
Get server status | Returns version, capabilities |
create_scene |
Create physics simulation | {"scene_type": "pendulum"} |
step_simulation |
Advance simulation | {"steps": 100} |
get_state |
Get current state | Returns positions, velocities |
set_joint_positions |
Control joints | {"positions": [0, 0.785, 0]} |
reset_simulation |
Reset to initial | Resets physics state |
execute_command |
Natural language | {"command": "move arm up"} |
get_loaded_models |
List active models | Returns all loaded models |
close_viewer |
Close GUI window | Closes visualization |
git clone https://github.com/google-deepmind/mujoco_menagerie.git ~/mujoco_menagerie
export MUJOCO_MENAGERIE_PATH=~/mujoco_menagerie
# For better performance and reliability
/opt/miniconda3/bin/mjpython mujoco_viewer_server_enhanced.py --port 8888
# Test basic functionality
python scripts/quick_internal_test.py
# Test advanced features
python test_advanced_features.py
# Run benchmarks
python benchmarks/physics_benchmarks.py
- Documentation Index - Complete guide to all docs
- Architecture Guide - System design and components
- API Reference - Complete API documentation
- Advanced Features - Controllers, RL, multi-robot
- Motion Control Examples - Robot demos
- Testing Summary - Test coverage and results
- Changelog - Version history
We welcome contributions! Please see CONTRIBUTING.md and Repository Guidelines for workflow expectations.
-
"Failed to connect to viewer server"
- Make sure
mujoco_viewer_server.py
is running - Check port 8888 is available
- On macOS, use
/opt/miniconda3/bin/mjpython
- Make sure
-
"Model not found"
- Install MuJoCo Menagerie for robot models
- Check file paths in configurations
-
Performance issues
- Use the enhanced viewer server
- Enable connection pooling
- Check system resources
For more help, see the Documentation Index.
MIT License - see LICENSE file for details.
- MuJoCo physics engine by Google DeepMind
- Model Context Protocol by Anthropic
- MuJoCo Menagerie for robot models
Built with β€οΈ for the robotics and AI community