用自然语言描述一个 3D 场景,然后看着 Blender 自动创建出来------这不是科幻,是 blender-mcp 现在能做到的事。blender-mcp 是一个开源 MCP(Model Context Protocol)服务器,把 Blender 暴露给 AI 工具,让任何支持 MCP 的 AI 工具(包括 Codex)都能直接操控 Blender 的场景、对象、材质、灯光和摄像机。
项目地址:ahujasid/blender-mcp,24,500+ stars。官方文档主要介绍的是 Claude 接入方式,Codex 的接入方法略有不同,而且有一个非常容易踩的配置坑,本文重点讲这部分。

需要准备什么
- Blender:3.0 或更新版本
- Codex CLI:已安装并登录
- uv / uvx:blender-mcp 通过 uvx 启动(不要用 pip install)
- Python 3.10+
安装 uv(选对应平台):
bash
# macOS
brew install uv
# Linux
curl -LsSf https://astral.sh/uv/install.sh | sh
# Windows PowerShell
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"
⚠️ 不要用 pip install uv,这不会创建 uvx 命令,MCP 启动时会报 spawn uvx ENOENT。
Step 1:在 Blender 里安装 addon
blender-mcp 由两部分组成:Blender 内运行的 addon,和 AI 工具通过 MCP 协议连接的 Python 服务器。
- 前往
github.com/ahujasid/blender-mcp→ Releases → 下载最新的addon.py - 打开 Blender → Edit → Preferences → Add-ons
- 点击 Install... → 选择刚下载的
addon.py - 在 Add-ons 列表里找到 Interface: Blender MCP → 勾选启用
安装完成后,在 3D 视图里按 N 键打开侧边栏,你会看到一个新的 BlenderMCP 标签。
Step 2:在 Codex 里配置 blender-mcp
方式 A:命令行一键添加(推荐)
bash
codex mcp add blender -- uvx blender-mcp
这条命令会自动把下面的内容写入 ~/.codex/config.toml,不需要手动编辑。
方式 B:手动编辑 config.toml
打开 ~/.codex/config.toml,添加:
toml
[mcp_servers.blender]
command = "uvx"
args = ["blender-mcp"]
最容易踩的坑:mcp_servers 和 mcp.servers 不一样
Codex 的 GitHub issue tracker 上有一个高赞 bug report(issue #3441):用户配置了 MCP 服务器但 Codex 完全看不到它,无论怎么操作都无效。
原因就一个 :把 [mcp_servers.blender] 写成了 [mcp.servers.blender](或 [mcp.servers."blender"])。
正确写法:
toml
[mcp_servers.blender]
command = "uvx"
args = ["blender-mcp"]
错误写法(MCP 完全不加载):
toml
[mcp.servers.blender] # ❌ 错了
command = "uvx"
args = ["blender-mcp"]
两者的格式几乎一样,但 Codex 只认 mcp_servers,使用 mcp.servers 会导致整个 MCP 配置被静默忽略。
验证 MCP 是否加载成功:启动 Codex 后在 TUI 里输入 /mcp,应该能看到 blender 服务器和它提供的工具列表。
Step 3:启动连接
- 启动 Codex(CLI 或桌面端)
- 切到 Blender,在侧边栏 BlenderMCP 标签里点击 Connect to Claude(这个按钮在各种 AI 工具接入时都叫这个名字)
- 等待连接建立------Blender 状态栏底部会显示连接状态
连接建立后,Codex 里的工具列表(/mcp)应该能看到 blender 服务器下的具体工具,比如 get_scene_info、create_object、execute_blender_code 等。
其他常见问题
spawn uvx ENOENT 错误
发生原因:Codex 桌面端从 GUI 启动时不继承终端的 PATH,找不到 uvx 的位置。
解决方法:用 uvx 的完整路径:
bash
# 查找完整路径
which uvx
# 通常是 /opt/homebrew/bin/uvx (macOS) 或 ~/.local/bin/uvx (Linux)
然后在 config.toml 里用完整路径:
toml
[mcp_servers.blender]
command = "/opt/homebrew/bin/uvx"
args = ["blender-mcp"]
项目级 config 不生效
在项目目录下创建 .codex/config.toml 配置 MCP 时,需要先把该目录加入 Codex 的受信任目录列表(在 ~/.codex/config.toml 里),否则项目级 MCP 配置会被忽略。
首次连接超时
uvx 首次运行会下载 blender-mcp 包,耗时较长。可以增加启动超时:
toml
[mcp_servers.blender]
command = "uvx"
args = ["blender-mcp"]
startup_timeout_sec = 30
不要同时开两个 MCP 实例
blender-mcp README 明确警告:不要在 Codex 和 Claude Desktop(或其他工具)里同时运行 blender-mcp 服务器,会产生冲突。同一时间只开一个。
连接成功后能做什么
blender-mcp 暴露的能力包括:
- 场景信息:获取当前场景的对象列表、层次结构、材质状态
- 对象操作:创建、移动、缩放、旋转、删除 3D 对象
- 材质控制:应用颜色、创建材质、修改 PBR 参数
- 灯光与摄像机:调整光源参数、设置摄像机角度和焦距
- 执行 Python 代码:直接在 Blender 里运行任意 Python 脚本(强大但需谨慎)
- Poly Haven 资产:通过 API 搜索和导入模型、材质、HDRI
- Hyper3D 生成:用文字描述生成 3D 模型
示例对话(向 Codex 发出):
查看当前 Blender 场景里有哪些对象,然后帮我把所有灯光的强度调高 50%创建一个低多边形风格的城堡场景,包含塔楼、城墙和护城河把选中对象的材质改成金属质感,粗糙度 0.2,添加轻微反射
附:Blender 官方 MCP vs blender-mcp
Blender 官方也在 2026 年 Q1 推出了自己的 MCP 服务器(projects.blender.org/lab/blender_mcp),定位是提供 Blender Python API 的自然语言接口,侧重文档查询和 API 探索。
两者定位不同:官方 MCP 更适合"我想了解某个 Blender API 怎么用"的文档辅助场景;ahujasid/blender-mcp 更适合"我想让 AI 直接操控场景"的创作场景。
结语
整个接入流程不复杂,唯一需要特别注意的是 mcp_servers 的拼写------这是绝大多数人配置失败的唯一原因。配置对了之后,Codex 操控 Blender 的体验非常流畅,特别是批量修改对象属性和执行复杂 Python 脚本这类任务。
本文基于 blender-mcp 官方 README 和 Codex 官方 MCP 配置文档(learn.chatgpt.com/docs/extend/mcp)。
参考资料
- blender-mcp GitHub:github.com/ahujasid/blender-mcp
- blender-mcp 官网:blendermcp.org
- Codex MCP 官方文档:learn.chatgpt.com/docs/extend/mcp
- Codex 编程接入:qiniu.com/ai/plan
- Blender 官方 MCP:blender.org/lab/mcp-server