关于 Embodify
Embodify 为 Claude Code、Codex 等 MCP Agent 提供模拟机器人观测与控制能力,适用于具身 AI 开发和研究。它通过统一接口支持 LIBERO、RoboDojo 等后端,并记录和回放任务过程。
主要功能
- 01观测相机画面和机器人状态
- 02移动末端执行器并控制夹爪
- 03协调双臂并启动或结束任务
- 04支持 LIBERO、RoboDojo 和远程后端
- 05实时监控并逐帧回放任务
- 06保存工具调用、状态和相机记录
适用场景
- 01让 Agent 在仿真中执行机器人操作
- 02比较不同模型或 Agent 框架的操作能力
- 03监控运行中的任务并检查历史记录
MCP 相关
Embodify 的 MCP 服务向 MCP 客户端提供任务列表、机器人观测与运动控制工具;机器人模拟器通过后端接口接入。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
7收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| suite | string | 否 | 切换到另一个套件;省略时保留当前套件。套件列表请参见不带参数调用的 list_tasks。 |
| task_index | integer | 否 | 套件中的任务;省略时使用服务器的默认场景(切换套件时为任务 0)。可通过带 suite 的 list_tasks 查看可选项。 |
| init_state_index | integer | 否 | 任务的初始布局;省略时为 0。必须小于该任务的 n_init_states。 |
详细介绍
Embodify
为你的 Agent 赋予实体。
你最好的具身 Agent,就是你最喜欢的 Agent。
Embodify 让你每天使用的 Agent——Claude Code、Codex 或任何其他支持 MCP 的 Agent——能够直接观察和控制机器人,同时保留其他让它独具特色的一切。接入具备具身操作技能的前沿模型, 例如 GPT-6 Astra 和 Claude Opus 5.5,让你的 AI 伙伴踏入 物理世界。
中文 · 一行配置 · 后端 · 面向研究 · 技能 · 路线图
首次发布(0.1.0a1)。 目前支持 LIBERO 和 RoboDojo;即将支持 RoboTwin 和 LeRobot SO-101 机械臂。
为什么选择 Embodify
大多数具身 Agent 都是从零开始构建的:专用的执行框架封装一个模型, 为它提供一组固定的机器人动作,仅此而已。你每天使用的 Agent 已经具备这些执行框架所缺少的一切:
- 上下文和记忆。 它能管理长对话,并记住对话中的内容。
- 它了解你。 你的偏好、项目和实验室配置。
- 它会和你交流,可通过你已经在用的终端、IDE、桌面应用或聊天工具进行交流。 你可以询问进展、介入、纠正它,或在任务进行中教它。
- 它拥有一台计算机。 它能编写和运行代码、使用工具、搜索 网页并阅读论文。
Embodify 保留这一切,并为它赋予实体。安装插件后,你的 Agent 就能通过 MCP 使用机器人观测和控制工具——这是它已经用于其他一切操作的协议——还可使用相关技能,学习如何操作机器人,以及如何从自身经验中实现递归自我改进(RSI)。
为什么说“最好”
拥有实体的通用 Agent,比只能移动机器人的执行框架更强大:
- 它可以借助工具思考,而不只是采取行动。 任务需要几何信息时,它可以 编写脚本;需要事实时,它可以搜索;需要感知时,它可以运行模型。
- 它会跟踪进展。 如果 Agent 忘记自己已经尝试过什么,长时程操作任务就会失败。成熟的 Agent 能很好地管理上下文和记忆。
- 它会与你协作。 任务有歧义时,它会询问你;陷入困境时,它会听取你的指导;下次还会记住你的纠正。
- 它使用原生语言控制机器人。 机器人控制通过常规 MCP 工具调用实现,形式与 Agent 使用的其他工具完全相同。
- 它基于前沿具身模型构建。 你的 Agent 运行在具备前沿具身操作技能的模型上, 例如 GPT-6 Astra 和 Claude Opus 5.5;每次模型升级都能让你的机器人变得更好,无需重新训练。
- 它能递归地自我改进。 它将每次任务经历转化为经验教训,将经验教训转化为规则,再将规则转化为新技能;工作越多,能力越强。
- 零样本、少样本和上下文学习轻而易举。 通用 Agent 无需训练就能承担新任务:用日常语言描述任务 (零样本),给它展示几个示例(少样本),或将指令、 演示和以往经验放入上下文中(上下文学习,ICL)。
内容
Embodify 是一个 Agent 插件,包含两个部分;安装插件后,你的 Agent 会同时获得以下内容:
| 部分 | 为 Agent 提供的内容 |
|---|---|
MCP server(embodify-mcp,注册名为 embodify) | 用于列出任务、开始一个回合、观察摄像头和机器人状态、移动末端执行器、打开和关闭夹爪,以及协调双臂的工具。 |
| Skills | 专业知识:运行谨慎的观察–行动循环、维护机器人本体和摄像头的配置档案,以及从过去的回合中学习。更多感知技能即将推出。 |
flowchart LR
A["Your agent<br/>Claude Code · Codex · …"] -- "MCP (stdio)" --> B["embodify-mcp<br/>episodes · budgets · logs"]
K["Embodify skills"] -. "loaded by" .-> A
B --> I["Backend interface"]
I --> L["LIBERO"]
I --> R["RoboDojo"]
I --> T["RoboTwin (WIP)"]
I --> H["SO-101 and other real robots (WIP)"]
I -. "SSH / TCP" .-> G["Remote server"]
MCP 服务是前端。每个模拟器、基准测试或机器人都作为后端,接入同一个简洁接口,因此添加新的后端不会改变 Agent 所看到的内容。主要亮点:
- 兼容任何 MCP 主机。 内部不调用大模型;你的 Agent 仍使用自己的模型、记忆、技能和工具。
- 一次调用,一次动作。 控制循环在模拟器旁运行。每个动作都会返回实际位移、剩余误差、停止原因和最新的摄像头图像。
- 远程模拟。 通过 SSH 在实验室的 GPU 服务器上运行模拟器,同时让 Agent 留在你的笔记本电脑上。心跳机制可维持高延迟连接;如果连接断开,当前回合会正常中止,
reset_task会重新连接。 - 公平评估。 使用 Embodify 评估 Agent 的操作技能时,任务是否成功只会记录给人工评估者,不会向 Agent 公开。
- 实时监控和回放。 在浏览器中实时查看正在运行的回合,或逐帧回放过去的回合。
后端
| 后端 | 机器人 | 状态 |
|---|---|---|
fake、fake-two-arm | 运动学诊断模型,单臂或双臂 | ✅ 已包含,无需模拟器 |
libero | Franka Panda,5 个套件中的 130 项任务 | ✅ 已包含 |
robodojo | 双臂 ARX X5,全部 54 项模拟任务 | ✅ 已包含 |
| RoboTwin | 双臂操作基准测试 | 🚧 即将推出 |
| LeRobot SO-101 | 真实机器人:带夹爪的 5 自由度机械臂 | 🚧 即将推出 |
remote | 在另一台机器上运行上述任一后端 | ✅ 支持 SSH 或可信 TCP |
即将支持 xArm 等机械臂、移动操作机器人、人形机器人和灵巧手。如果你希望我们支持某个模拟器或机器人,请在 GitHub 上提交 issue 并附上相关详情。欢迎贡献新的后端。
面向研究
Embodify 也可作为测试平台,用于研究大模型和 Agent 框架的具身操作能力。通过 Claude Code、Codex 或你自己的 Agent 框架,让 GPT、Claude、Gemini、Qwen 和其他模型使用相同工具运行相同的模拟基准测试,并进行直接比较。
- 标准基准测试: LIBERO(5 个套件中的 130 项任务)和 RoboDojo(54 项任务);RoboTwin 即将推出。
- 公平的设计: 任务是否成功只会记录给评估者,不会向 Agent 展示;
--lock-task可固定场景。 - 可控预算: 可配置并记录回合预算和每次调用的步数限制。
- 完整记录: 保存工具调用、机器人状态和摄像头画面,供回放和分析。
典型研究包括前沿模型的零样本机器人操作、使用相同模型比较不同 Agent 框架、研究技能和记忆的影响,以及跨回合递归自我改进。请参阅引用说明,了解如何引用 Embodify 以及应报告哪些内容。
快速开始
一键设置
将以下内容粘贴到 Claude Code、Codex 或你使用的其他 Agent 中:
Install Embodify (https://github.com/YidaYang/embodify) for yourself, then set up a LIBERO environment or connect to my existing simulator.
完成。你的 Agent 会安装 Embodify 插件、设置模拟器,并告知你何时需要重启会话。 (Agent:请遵循Agent 设置指南。)
手动安装
Embodify 使用 uv 直接从 PyPI 启动 MCP 服务。如果你还没有 uv,可以使用 python -m pip install uv 安装,或使用官方安装程序。
Claude Code
claude plugin marketplace add YidaYang/embodify
claude plugin install embodify@embodify
Codex
codex plugin marketplace add YidaYang/embodify
codex plugin add embodify@embodify
该插件同时提供注册为 embodify 的 MCP 服务和技能。
服务默认使用 Fake 后端启动,因此你可以立即试用这些工具;
接下来请连接真实模拟器。它从
~/.embodify/config.json 读取设置(参见后端设置)。
若要独立检查此软件包,不使用 Agent:
uvx --from embodify-mcp embodify-mcp-smoke # end-to-end check: no simulator, GPU or model needed
其他 Agent
- 使用 examples/mcp.json 在你的 Agent 的 MCP 配置中注册服务。
- 如果你的 Agent 支持 Agent Skills(
SKILL.md文件夹),请将 plugin/skills/ 中的文件夹复制或链接到其技能目录。
重启会话,然后向 Agent 提出类似这样的请求:"重置任务, 描述摄像头拍摄的画面,然后将夹爪抬高 5 cm。"
连接真实模拟器
让 Agent 完成此步骤。粘贴:
Connect Embodify to a real simulator for me: set up LIBERO on this machine, or connect to my existing simulator. Follow https://github.com/YidaYang/embodify/blob/main/docs/agent-setup.md.
Agent 会安装模拟器,或通过 SSH 连接到你的模拟器,将服务设置写入 ~/.embodify/config.json,并请你重启会话。若要手动操作,请参见后端设置。
实时查看机器人并回放任务片段
在 ~/.embodify/config.json 中添加 "monitor-port": 8765,然后打开
http://127.0.0.1:8765,即可实时查看机器人的工作过程,包括每个摄像头视图、
机器人状态和 Agent 发起的每次工具调用;也可以逐帧回放过去的
任务片段。若要在服务未运行时浏览已保存的运行记录:
uvx --from embodify-mcp embodify-mcp-monitor # reads ~/.embodify/runs
监控器仅监听 localhost。
MCP 工具
| 工具 | 用途 |
|---|---|
get_session_info | 当前运行、任务、步数预算和机器人状态;不含图像 |
list_tasks | 浏览后端的任务目录 |
reset_task | 开始一个任务片段并返回第一组摄像头图像 |
observe | 获取摄像头图像和机器人状态,不移动机器人 |
move_relative | 通过平移和可选旋转移动一个末端执行器 |
set_gripper | 打开或闭合夹爪 |
control_arms | 同步移动多个机械臂,保持进度一致(双臂后端) |
stop_episode | 结束任务片段并写入记录 |
平移单位为米,旋转单位为弧度,四元数采用 xyzw 顺序。 坐标系和停止原因定义见动作约定。
技能
该插件包含以下技能:
| 技能 | 状态 | 功能 |
|---|---|---|
| embodied-control | v0 | 观察—行动循环:小幅移动、读取停止原因、验证抓取,并通过单独调用释放物体 |
| robot-profile | v0 | 维护机器人档案:机械臂、摄像头、坐标系、校准信息和实测行为 |
| task-experience | v0 | 每次任务片段结束后记录经验教训,在下一次任务前阅读相关经验,并将重复的经验提升为规则 |
| object-segmentation | 即将推出 | 对摄像头图像进行开放词汇分割 |
| depth-ranging | 即将推出 | 利用深度信息和校准数据,将像素转换为 3D 位置 |
技能分为三个类别,并将持续扩展:
- 具身知识:了解这台特定机器人的构造、摄像头的位置以及它的实际移动方式。
- 操作工具:感知、测量和规划工具,包括 Code as Policies 等研究中的理念。
- 递归式自我改进:将经验转化为教训,将教训转化为规则,并最终转化为新技能,实现递归改进。
路线图
- 后端: RoboTwin;LeRobot SO-101 是首个真实机器人,并支持工作空间限制、人工判定成功与紧急停止;更多真实机器人和模拟器。
- 机器人形态: 移动操作机器人、人形机器人、灵巧手。
- 观测: 深度图像、相机标定,以及通过工具提供的更多功能。
- 技能: 分割、深度测距和其他感知工具;代码即策略风格的工具;更强的递归式自我改进循环等。
开发
python -m pip install -e ".[dev]"
python -m pytest -q
python tools/check_release.py
许可证与引用
原始代码采用 Apache-2.0 许可证。捆绑的第三方代码保留其原始声明。请参阅引用说明,了解如何引用 Embodify。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。