用一句文字在 Blender 里生成 3D 模型和 PBR 材质:BlenderMCP 完整教程
【免费下载链接】blender-mcpCommunity plugin to control Blender 3D with any LLM of your choice项目地址: https://gitcode.com/GitHub_Trending/bl/blender-mcp
BlenderMCP 通过模型上下文协议(MCP)把 Blender 3D 接入任意大语言模型,让你直接在对话里用文字完成建模、调材质、看场景截图这些原本要逐菜单点的操作。整条链路只有两半:装在 Blender 里的插件负责接收并执行指令,MCP 服务器负责把你的 AI 客户端(比如 Claude Desktop)和插件连起来。下面以"做一间带龙守金堆的中世纪地牢,再给它铺上真实感材质"这个任务为主线,走完整个流程。
装好 uv,让服务器能被一键拉起
BlenderMCP 的服务器端是一个 Python 包,通常用uvx命令临时运行,不需要手动pip install。先确认三件事:
| 依赖 | 最低要求 | 说明 |
|---|---|---|
| Blender | 3.0+ | 需要正常 GUI 窗口,blender -b后台模式跑不了插件的 socket |
| Python | 3.10+ | 服务器侧使用 |
| uv | 最新版 | 推荐用官方脚本安装,pip install uv可能不会生成uvx |
各平台安装 uv:
# macOS brew install uv # Linux curl -LsSf https://astral.sh/uv/install.sh | shWindows 则在 PowerShell 里跑powershell -c "irm https://astral.sh/uv/install.ps1 | iex",并把~/.local/bin加进 PATH。装好后可以用BLENDER_HOST和BLENDER_PORT环境变量调整监听地址,默认localhost:9876,一般不用动。
安装插件,把 Blender 接到 Claude 上
这一步在 addon.py 和 Claude 配置文件之间切换:
- 从项目仓库拿到
addon.py,在 Blender 里走Edit → Preferences → Add-ons → Install,选中文件,启用 "Interface: Blender MCP"。 - 打开 Claude 桌面端的Settings → Developer → Edit Config,把 MCP 服务器加进去:
{ "mcpServers": { "blender": { "command": "uvx", "args": ["blender-mcp"] } } }- 改完配置后完全退出并重启客户端。
- 回到 Blender,按
N打开 3D 视图侧边栏,切到BlenderMCP标签页,点Connect to Claude。
连上之后,连接是双向的:插件在 Blender 内开一个 TCP socket 服务,MCP 服务器侧的 server.py 把每条 AI 指令转成 JSON 发过去,执行结果再原路返回。所以"服务器"其实一直是由 Claude 客户端帮你启动的,不需要你手动跑uvx。
第一条文字指令能做出什么
连上后直接输入一句话试试:
"Create a low poly dungeon with a dragon guarding gold"(做一个低多边形地牢,一条龙守着一堆金币)
AI 会自己拆成若干步:建房间、摆模型、调材质、放相机。除了直接建东西,这套工具还内置了几个实用能力,值得知道:
- 场景检查:可以问"现在场景里有什么",它会列出所有对象、灯光、相机,相当于替你看了一遍大纲视图。
- 视口截图:AI 能拿到 Blender 视口的实时画面,所以你可以说"把相机转到侧面再看一次",它是在看着结果改的,不是盲调。
- 执行代码:复杂操作可以直接让它在 Blender 里跑一段 Python。注意这条通道能执行任意代码,用之前先存盘。
后续指令可以更具体,比如"给龙加一圈金属质感的鳞片,金属度 0.8,粗糙度 0.3"、"把金币堆换成 Sketchfab 上的现成模型"——指令越具体,返工越少。
从 Poly Haven 给场景拉 PBR 材质
光有模型还不够,下一步是把真实感材质铺上去。在侧边栏的 BlenderMCP 面板里勾选Poly Haven,AI 就多了一组资产工具:搜索 HDRI、纹理和模型,按分辨率下载,再自动绑到指定对象上。
你可以直接说"给石墙找一个 Poly Haven 的粗糙石材纹理"。底层走的是 server.py 里的search_polyhaven_assets和download_polyhaven_asset两个工具;真正贴图的是插件侧的set_texture逻辑,它会按用途处理每张通道图——albedo 这类颜色图设为 sRGB,法线、粗糙度这类数据图设为 Non-Color,并把图片打包进 .blend 文件,避免丢路径。
另外三个资源开关按需打开:
| 集成 | 用途 | 凭证存放 |
|---|---|---|
| Poly Haven | HDRI / 纹理 / 模型 | 无需密钥 |
| Hyper3D Rodin | 用文字生成 3D 模型(有免费额度) | 插件偏好里填 API Key |
| Sketchfab | 搜索并导入现成模型 | API Key |
| Hunyuan3D | 文字/图片生成 3D 模型 | 在偏好里配置 |
密钥建议存在Edit → Preferences → Add-ons → Blender MCP的偏好面板里,重启不丢,也可以改用BLENDERMCP_SKETCHFAB_API_KEY这类环境变量注入。
BlenderMCP 连不上或超时,往哪里查
按出现频率从高到低排:
| 现象 | 常见原因 | 处理 |
|---|---|---|
| 第一条指令报错 | 连接刚建立,偶发失败 | 直接重试一次即可 |
spawn uvx ENOENT | GUI 客户端读不到终端的 PATH | 用which uvx(Windows 用where uvx)拿到完整路径,填进配置的"command" |
| 指令长时间无响应 | 一次要求做太多事 | 把大任务拆成几条连续的短句 |
| Apple Silicon 上 cryptography 编译报错 | 架构不匹配 | 配置里改为"args": ["--python", "3.11-aarch64", "blender-mcp"] |
| WSL / Docker 里连不到 | 宿主地址不对 | 在配置env里设BLENDER_HOST(如host.docker.internal) |
改完任何配置,记得重启 AI 客户端和 Blender 里的服务器再试。如果确认连上了,Claude 侧会显示一个小锤子图标,表示 Blender 工具已激活。
想让结果更可控,还有两个习惯:生成前先想清楚尺寸和结构(比如"房间 10m×8m,拱顶"),出图不满意时先让 AI 截图看看现状,再针对截图提修改意见,比反复重掷随机结果稳定得多。
接下来可以往哪走
想深入实现细节,先看 server.py,所有 MCP 工具的定义和参数都在这一个文件里;想改插件行为(比如新增指令、调整贴图逻辑),对应的是 addon.py,仓库根目录的 test_set_texture_version_guard.py 示范了如何在不启动 Blender 的情况下对插件代码做静态校验。项目采用 MIT 许可(见 LICENSE),欢迎通过提 issue 或 PR 的方式参与:fork 后建分支、提交改动即可。先打开 Blender 和 Claude,把第一条地牢指令发出去,看看它给出的第一版场景长什么样。
【免费下载链接】blender-mcpCommunity plugin to control Blender 3D with any LLM of your choice项目地址: https://gitcode.com/GitHub_Trending/bl/blender-mcp
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考