mcp服务器isaaclab
MCP服务器 NVIDIA艾萨克实验室 --Claude提供的强化学习培训、环境管理和政策评估。
在Mac上本地运行,并在远程与Isaac Lab通信 Brev GPU实例 通过SSH隧道。所有繁重的模拟都保留在GPU上;克劳德只是发送命令。
不是艾萨克·辛。 该服务器控制Isaac实验室(RL环境、培训管道、策略评估)。有关低级Isaac Sim控制(USD prims、场景创作、Kit命令),请参阅 mcp服务器isaacsim.
建筑
┌──────────┐ stdio ┌──────────────┐ SSH tunnel ┌─────────────────┐
│ Claude │◄──────────►│ MCP Server │◄──────────────►│ Remote Agent │
│ (local) │ │ (local Mac) │ port 8421 │ (Brev GPU) │
└──────────┘ └──────────────┘ └────────┬────────┘
│
┌───────▼────────┐
│ Isaac Lab │
│ (Isaac Sim) │
└────────────────┘MCP服务器 (此仓库)在Mac上作为stdio MCP服务器运行。它打开一个到Brev实例的SSH隧道,并将所有请求转发到 远程代理 --GPU盒上Isaac Lab旁边运行的FastAPI服务。
先决条件
- Python 3.10+
- Brev GPU实例(附带
brev create) - SSH访问实例(
brev ssh) - 实例上安装了Isaac Lab(包括安装脚本)
快速开始
1.本地安装
git clone git@github.com:chloepilonv/mcp-server-isaaclab.git
cd mcp-server-isaaclab
pip install -e .2.提供一个Brev GPU实例
brev create isaaclab-gpu --gpu A100
brev ssh isaaclab-gpu3.在实例上安装Isaac Lab
# From your Mac:
scp scripts/setup-brev-isaaclab.sh ubuntu@
:~
ssh ubuntu@
bash ~/setup-brev-isaaclab.sh这将安装Isaac Lab+skrl、rsl_rl和sb3 rl框架。
4.部署远程代理
./scripts/deploy-remote-agent.sh
ubuntu ~/.ssh/your_key这将复制代理代码,安装它,并在端口8421上将其作为systemd服务启动。
5.配置Claude
该项目包括 .mcp.json 因此,当您位于此目录中时,Claude Code会自动获取服务器。
对于 克劳德桌面版,添加到 ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"isaaclab": {
"command": "mcp-server-isaaclab"
}
}
}对于 克劳德代码 在其他项目中,添加到项目的 .mcp.json:
{
"mcpServers": {
"isaaclab": {
"command": "mcp-server-isaaclab"
}
}
}工具
连接
| 工具 | 说明 |
|---|---|
connect_instance | 建立到Brev GPU实例的SSH隧道 |
disconnect_instance | 断开连接 |
instance_status | GPU利用率、活动会话和作业 |
gpu_status | 详细的GPU内存、温度、利用率 |
模拟(交互式)
| 工具 | 说明 |
|---|---|
list_environments | 列出所有已注册的Isaac Lab任务 |
create_session | 创建交互式模拟会话 |
step_session | 向前推进模拟(随机或指定动作) |
reset_session | 将环境重置为初始状态 |
get_observation | 获取当前观测值+行动/obs空间信息 |
close_session | 关闭会话并释放GPU内存 |
训练
| 工具 | 说明 |
|---|---|
start_training | 启动异步RL培训作业 |
monitor_training | 获取状态、最近日志、最新检查点 |
get_training_logs | 阅读完整的培训日志 |
stop_training | 停止跑步训练作业 |
list_training_jobs | 列出所有作业(正在运行、已完成、失败) |
评估和文件
| 工具 | 说明 |
|---|---|
evaluate_policy | 评估检查点,可选择录制视频 |
list_checkpoints | 浏览已保存的模型检查点 |
list_log_dirs | 浏览培训日志目录 |
list_videos | 列出录制的模拟视频 |
read_remote_file | 读取实例上的任何文本/图像文件 |
run_isaaclab_script | 运行任意Isaac Lab Python脚本 |
对话示例
制定运动策略:
> Connect to my Brev instance at 203.0.113.42
> What environments are available for quadruped locomotion?
> Train Anymal-D on rough terrain with rsl_rl, 4096 envs, 1500 iterations
> Check on the training
> Evaluate the best checkpoint and record a video以交互方式探索环境:
> Connect to my Brev GPU
> Create a session with Isaac-Cartpole-v0, 32 envs
> What does the observation space look like?
> Step 100 times with random actions — what are the rewards?
> Reset and try again
> Close the session监控GPU并管理作业:
> What's the GPU status?
> List all training jobs
> Stop the Ant training — it's not converging
> Show me the last 200 lines of logs from the Franka training支持的RL框架
| 框架 | 最适合 | 注释 |
|---|---|---|
| skrl | 通用 | 现代、模块化、良好的默认选择 |
| rsl_rl | 运动 | ETH RSL的框架,针对腿式机器人进行了优化 |
| sb3 | 原型 | 稳定的基线3,易于使用 |
| rl_games | 多GPU | NVIDIA的框架,可扩展性良好 |
可用环境(选择)
| 类别 | 示例 |
|---|---|
| 经典 | Isaac-Cartpole-v0, Isaac-Ant-v0, Isaac-Humanoid-v0 |
| 操纵 | Isaac-Reach-Franka-v0, Isaac-Lift-Cube-Franka-v0, Isaac-Open-Drawer-Franka-v0 |
| 运动 | Isaac-Velocity-Flat-Anymal-D-v0, Isaac-Velocity-Rough-Unitree-Go2-v0 |
| 导航 | Isaac-Navigation-Flat-Anymal-C-v0 |
使用 list_environments 从您的安装中获取完整列表。
项目结构
mcp-server-isaaclab/
├── src/mcp_server_isaaclab/
│ ├── server.py # MCP server (runs locally, exposes tools)
│ ├── connection.py # SSH tunnel + HTTP client manager
│ └── remote/
│ └── agent.py # FastAPI agent (runs on Brev GPU)
├── scripts/
│ ├── deploy-remote-agent.sh # Deploy agent to Brev
│ └── setup-brev-isaaclab.sh # Install Isaac Lab on instance
├── .mcp.json # Claude Code MCP config
├── pyproject.toml
└── README.md发展
pip install -e ".[dev]"
ruff check src/
pytest许可证
麻省理工学院
