Blender MCP建模器
一种通过模型上下文协议(Model Context Protocol)将Blender与本地人工智能模型集成的服务器,允许用户使用自然语言提示来控制Blender,以完成3D建模任务。
服务介绍
blender-open-mcp
blender-open-mcp 是一个开源项目,它通过 Model Context Protocol (MCP) 将 Blender 与本地 AI 模型(通过 Ollama)集成在一起。这使得你可以使用自然语言提示来控制 Blender,并利用 AI 的力量来辅助 3D 建模任务。
功能
- 使用自然语言控制 Blender: 向本地运行的 Ollama 模型发送提示以在 Blender 中执行操作。
- MCP 集成: 使用 Model Context Protocol 在 AI 模型和 Blender 之间进行结构化通信。
- Ollama 支持: 设计为与 Ollama 一起工作,以便轻松管理本地模型。
- Blender 插件: 包含一个 Blender 插件,提供用户界面并处理与服务器的通信。
- PolyHaven 集成(可选): 通过 AI 提示直接在 Blender 中从 PolyHaven 下载和使用资产(HDRIs、纹理、模型)。
- 基本 3D 操作:
- 获取场景和对象信息
- 创建基本体
- 修改和删除对象
- 应用材质
- 渲染支持: 使用该工具渲染图像并根据输出检索信息。
安装
先决条件
- Blender: Blender 3.0 或更高版本。从 blender.org 下载。
- Ollama: 从 ollama.com 安装,按照操作系统特定的说明进行安装。
- Python: Python 3.10 或更高版本。
- uv: 使用
pip install uv进行安装。 - Git: 用于克隆仓库。
安装步骤
-
克隆仓库:
git clone https://github.com/dhakalnirajan/blender-open-mcp.git cd blender-open-mcp -
创建并激活虚拟环境(推荐):
uv venv source .venv/bin/activate # 在 Linux/macOS 上 .venv\Scripts\activate # 在 Windows 上 -
安装依赖项:
uv pip install -e . -
安装 Blender 插件:
- 打开 Blender。
- 转到
编辑 -> 首选项 -> 插件。 - 点击
安装...。 - 从
blender-open-mcp目录中选择addon.py文件。 - 启用 "Blender MCP" 插件。
-
下载 Ollama 模型(如果尚未安装):
ollama run llama3.2(也可以使用其他模型,如
Gemma3。)
设置
-
启动 Ollama 服务器: 确保 Ollama 在后台运行。
-
启动 MCP 服务器:
blender-mcp或者,
python src/blender_open_mcp/server.py默认情况下,它监听
http://0.0.0.0:8000,但你可以修改设置:blender-mcp --host 127.0.0.1 --port 8001 --ollama-url http://localhost:11434 --ollama-model llama3.2 -
启动 Blender 插件服务器:
- 打开 Blender 和 3D 视口。
- 按
N键打开侧边栏。 - 找到 "Blender MCP" 面板。
- 点击 "启动 MCP 服务器"。
使用方法
使用 mcp 命令行工具与 blender-open-mcp 进行交互:
示例命令
-
基本提示:
mcp prompt "Hello BlenderMCP!" --host http://localhost:8000 -
获取场景信息:
mcp tool get_scene_info --host http://localhost:8000 -
创建一个立方体:
mcp prompt "Create a cube named 'my_cube'." --host http://localhost:8000 -
渲染图像:
mcp prompt "Render the image." --host http://localhost:8000 -
使用 PolyHaven(如果已启用):
mcp prompt "Download a texture from PolyHaven." --host http://localhost:8000
可用工具
| 工具名称 | 描述 | 参数 |
|---|---|---|
get_scene_info |
获取场景详细信息。 | 无 |
get_object_info |
获取对象的信息。 | object_name (字符串) |
create_object |
创建3D对象。 | type, name, location, rotation, scale |
modify_object |
修改对象的属性。 | name, location, rotation, scale, visible |
delete_object |
删除对象。 | name (字符串) |
set_material |
为对象分配材质。 | object_name, material_name, color |
render_image |
渲染图像。 | file_path (字符串) |
execute_blender_code |
在Blender中执行Python代码。 | code (字符串) |
get_polyhaven_categories |
列出PolyHaven资产类别。 | asset_type (字符串) |
search_polyhaven_assets |
搜索PolyHaven资产。 | asset_type, categories |
download_polyhaven_asset |
下载PolyHaven资产。 | asset_id, asset_type, resolution, file_format |
set_texture |
应用下载的纹理。 | object_name, texture_id |
set_ollama_model |
设置Ollama模型。 | model_name (字符串) |
set_ollama_url |
设置Ollama服务器URL。 | url (字符串) |
get_ollama_models |
列出可用的Ollama模型。 | 无 |
故障排除
如果您遇到问题:
- 确保 Ollama 和
blender-open-mcp服务器正在运行。 - 检查 Blender 的插件设置。
- 验证命令行参数。
- 查看日志以获取错误详情。
如需进一步帮助,请访问 GitHub Issues 页面。
愉快地使用 AI 进行混合吧!🚀