mcpField
E
Embodify

Embodify

本地服务
github.comAI 与智能体54 周前更新

关于 Embodify

Embodify 为 Claude Code、Codex 等 MCP Agent 提供模拟机器人观测与控制能力,适用于具身 AI 开发和研究。它通过统一接口支持 LIBERO、RoboDojo 等后端,并记录和回放任务过程。

主要功能

  1. 01观测相机画面和机器人状态
  2. 02移动末端执行器并控制夹爪
  3. 03协调双臂并启动或结束任务
  4. 04支持 LIBERO、RoboDojo 和远程后端
  5. 05实时监控并逐帧回放任务
  6. 06保存工具调用、状态和相机记录

适用场景

  1. 01让 Agent 在仿真中执行机器人操作
  2. 02比较不同模型或 Agent 框架的操作能力
  3. 03监控运行中的任务并检查历史记录

MCP 相关

Embodify 的 MCP 服务向 MCP 客户端提供任务列表、机器人观测与运动控制工具;机器人模拟器通过后端接口接入。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"yidayang-embodify": {
"command": "uvx",
"args": [
"embodify-mcp"
]
}
}
}
启动命令uvx embodify-mcp

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
pypiembodify-mcp0.1.0a2

工具

7

收录的工具列表 · 更新于 2 周前

参数类型必填说明
suitestring否切换到另一个套件;省略时保留当前套件。套件列表请参见不带参数调用的 list_tasks。
task_indexinteger否套件中的任务;省略时使用服务器的默认场景(切换套件时为任务 0)。可通过带 suite 的 list_tasks 查看可选项。
init_state_indexinteger否任务的初始布局;省略时为 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,比只能移动机器人的执行框架更强大:

  1. 它可以借助工具思考,而不只是采取行动。 任务需要几何信息时,它可以 编写脚本;需要事实时,它可以搜索;需要感知时,它可以运行模型。
  2. 它会跟踪进展。 如果 Agent 忘记自己已经尝试过什么,长时程操作任务就会失败。成熟的 Agent 能很好地管理上下文和记忆。
  3. 它会与你协作。 任务有歧义时,它会询问你;陷入困境时,它会听取你的指导;下次还会记住你的纠正。
  4. 它使用原生语言控制机器人。 机器人控制通过常规 MCP 工具调用实现,形式与 Agent 使用的其他工具完全相同。
  5. 它基于前沿具身模型构建。 你的 Agent 运行在具备前沿具身操作技能的模型上, 例如 GPT-6 Astra 和 Claude Opus 5.5;每次模型升级都能让你的机器人变得更好,无需重新训练。
  6. 它能递归地自我改进。 它将每次任务经历转化为经验教训,将经验教训转化为规则,再将规则转化为新技能;工作越多,能力越强。
  7. 零样本、少样本和上下文学习轻而易举。 通用 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运动学诊断模型,单臂或双臂✅ 已包含,无需模拟器
liberoFranka 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
  1. 使用 examples/mcp.json 在你的 Agent 的 MCP 配置中注册服务。
  2. 如果你的 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-controlv0观察—行动循环:小幅移动、读取停止原因、验证抓取,并通过单独调用释放物体
robot-profilev0维护机器人档案:机械臂、摄像头、坐标系、校准信息和实测行为
task-experiencev0每次任务片段结束后记录经验教训,在下一次任务前阅读相关经验,并将重复的经验提升为规则
object-segmentation即将推出对摄像头图像进行开放词汇分割
depth-ranging即将推出利用深度信息和校准数据,将像素转换为 3D 位置

技能分为三个类别,并将持续扩展:

  1. 具身知识:了解这台特定机器人的构造、摄像头的位置以及它的实际移动方式。
  2. 操作工具:感知、测量和规划工具,包括 Code as Policies 等研究中的理念。
  3. 递归式自我改进:将经验转化为教训,将教训转化为规则,并最终转化为新技能,实现递归改进。

路线图

  • 后端: RoboTwin;LeRobot SO-101 是首个真实机器人,并支持工作空间限制、人工判定成功与紧急停止;更多真实机器人和模拟器。
  • 机器人形态: 移动操作机器人、人形机器人、灵巧手。
  • 观测: 深度图像、相机标定,以及通过工具提供的更多功能。
  • 技能: 分割、深度测距和其他感知工具;代码即策略风格的工具;更强的递归式自我改进循环等。

开发

python -m pip install -e ".[dev]"
python -m pytest -q
python tools/check_release.py

请参阅贡献指南、编写后端、 后端设置、动作规范 和安全。

许可证与引用

原始代码采用 Apache-2.0 许可证。捆绑的第三方代码保留其原始声明。请参阅引用说明,了解如何引用 Embodify。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。