Blender模型控制协议集成

通过模型上下文协议(MCP)将Blender与Claude AI连接,实现AI辅助3D建模和场景操作。

  • by SolonaBot
  • Python
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 SolonaBot/blender-mcp

使用说明

BlenderMCP-Blender模型上下文协议集成

BlenderMCP通过模型上下文协议(MCP)将Blender连接到Claude AI,允许Claude直接与Blender交互和控制Blender。这种集成实现了快速辅助的3D建模、场景创建和操纵。

我们没有官方网站。你在网上看到的任何网站都是非官方的,与这个项目没有任何关系。使用它们的风险由你自己承担。

完整教程

加入社区

提供反馈,获得灵感,并在MCP的基础上进行构建: Discord 的中文翻译是“不和谐”或“纷争”。

支持者

CodeRabbit

所有支持者:

支持这个项目

当前版本(1.5.5)

  • 新增Hunyuan3D支持
  • 查看Blender视口的屏幕截图,以更好地理解场景
  • 搜索并下载Sketchfab模型
  • 通过其API支持保利港资产
  • 支持使用Hyper3D Rodin生成3D模型
  • 在远程主机上运行Blender MCP
  • 执行工具的遥测(完全匿名)

安装新版本(现有用户)

  • 对于新手,您可以直接进入安装。对于现有用户,请参阅以下要点
  • 下载最新的addon.py文件并替换旧文件,然后将其添加到Blender中
  • 从Claude中删除MCP服务器并重新添加,您应该可以使用了!

特性

  • 双向通信:通过基于套接字的服务器将Claude AI连接到Blender
  • 对象操作:在Blender中创建、修改和删除3D对象
  • 材料控制:应用和修改材质和颜色
  • 现场检查:获取当前Blender场景的详细信息
  • 代码执行:从Claude在Blender中运行任意Python代码

组件

该系统由两个主要部分组成:

  1. 搅拌机插件(addon.py):Blender插件,在Blender中创建套接字服务器以接收和执行命令
  2. MCP服务器(src/blender_mcp/server.py):实现模型上下文协议并连接到Blender插件的Python服务器

安装

先决条件

  • 搅拌机3.0或更新版本
  • Python 3.10或更新版本
  • uv包管理器:

如果您使用的是Mac,请将uv安装为

brew install uv

在Windows上

powershell -c "irm https://astral.sh/uv/install.ps1 | iex" 

然后将uv添加到Windows中的用户路径中(之后可能需要重新启动Claude Desktop):

$localBin = "$env:USERPROFILE\.local\bin"
$userPath = [Environment]::GetEnvironmentVariable("Path", "User")
[Environment]::SetEnvironmentVariable("Path", "$userPath;$localBin", "User")

否则,安装说明在他们的网站上: 安装uv

⚠️ 安装UV之前不要继续

环境变量

以下环境变量可用于配置Blender连接:

  • BLENDER_HOST:Blender套接字服务器的主机地址(默认:“localhost”)
  • BLENDER_PORT:Blender套接字服务器的端口号(默认值:9876)

例子:

export BLENDER_HOST='host.docker.internal'
export BLENDER_PORT=9876

桌面版Claude集成

观看设置说明视频 (假设您已经安装了uv)

转到Claude>设置>开发人员>编辑配置>Claude_desktop_Config.json,以包含以下内容:

{
    "mcpServers": {
        "blender": {
            "command": "uvx",
            "args": [
                "blender-mcp"
            ]
        }
    }
}
Claude Code

使用Claude Code CLI添加混合器MCP服务器:

claude mcp add blender uvx blender-mcp

光标集成

对于Mac用户,请转到“设置”>“MCP”并粘贴以下内容

  • 要用作全局服务器,请使用“添加新的全局MCP服务器”按钮并粘贴
  • 要用作特定于项目的服务器,请创建 .cursor/mcp.json 在项目的根和粘贴
{
    "mcpServers": {
        "blender": {
            "command": "uvx",
            "args": [
                "blender-mcp"
            ]
        }
    }
}

对于Windows用户,请转到“设置”>“MCP”>“添加服务器”,使用以下设置添加新服务器:

{
    "mcpServers": {
        "blender": {
            "command": "cmd",
            "args": [
                "/c",
                "uvx",
                "blender-mcp"
            ]
        }
    }
}

光标设置视频

⚠️ 只运行一个MCP服务器实例(在Cursor或Claude Desktop上),而不是两者都运行

Visual Studio代码集成

先决条件:确保你有 Visual Studio Code 在继续之前安装。

安装Blender插件

  1. 下载 addon.py 此仓库中的文件
  2. 打开搅拌机
  3. 转到“编辑”>“首选项”>“附加组件”
  4. 点击“安装…”并选择 addon.py 文件
  5. 通过选中“接口:Blender MCP”旁边的框启用插件

用法

启动连接

  1. 在Blender中,转到3D视图侧栏(如果不可见,请按N)
  2. 找到“BlenderMCP”选项卡
  3. 如果您希望资产来自其API,请启用Poly Haven复选框(可选)
  4. 点击“连接到克劳德”
  5. 确保MCP服务器正在您的终端中运行

与克劳德一起使用

一旦在Claude上设置了配置文件,并且插件在Blender上运行,您将看到一个带有Blender MCP工具的锤子图标。

能力

  • 获取场景和对象信息
  • 创建、删除和修改形状
  • 为对象应用或创建材质
  • 在Blender中执行任何Python代码
  • 通过下载正确的型号、资产和HDRI 保利港湾
  • 通过AI生成3D模型 Hyper3D罗丹

示例命令

以下是一些你可以要求克劳德做的事情的例子:

  • “在地牢中创建一个低多边形场景,龙守卫着一罐金子” 演示
  • “使用HDRI、纹理和Poly Haven的岩石和植被等模型营造海滩氛围” 演示
  • 给出一个参考图像,并从中创建一个Blender场景 演示
  • “通过Hyper3D生成花园侏儒的3D模型”
  • 获取当前场景的信息,并从中绘制threejs草图 演示
  • “让这辆车变成红色和金属色”
  • “创建一个球体并将其放置在立方体上方”
  • “让灯光像工作室一样”
  • 将相机对准场景,并使其等距

Hyper3D集成

Hyper3D的免费试用密钥允许您每天生成有限数量的模型。如果达到每日限制,您可以等待第二天的重置,或从hyper3d.ai和fal.ai获取自己的密钥。

故障排除

  • 连接问题:确保Blender插件服务器正在运行,并且MCP服务器已在Claude上配置,不要在终端中运行uvx命令。有时,第一个命令不会执行,但之后它就开始工作了。
  • 超时错误:尝试简化您的请求或将其分解为更小的步骤
  • Poly-Haven整合克劳德有时行为古怪
  • 你试过把它关掉再打开吗?:如果您仍然存在连接错误,请尝试重新启动Claude和Blender服务器

技术细节

通信协议

该系统在TCP套接字上使用简单的基于JSON的协议:

  • 命令 以JSON对象的形式发送 type 可选 params
  • 回复 JSON对象具有 status 和 result 或 message

限制和安全考虑

  • 这 execute_blender_code 该工具允许在Blender中运行任意Python代码,这可能很强大,但有潜在的危险。在生产环境中小心使用。在使用之前,一定要保存好你的工作。
  • Poly Haven需要下载模型、纹理和HDRI图像。如果您不想使用它,请在Blender中的复选框中将其关闭。
  • 复杂的操作可能需要分解为更小的步骤

遥测控制

BlenderMCP收集匿名使用数据以帮助改进工具。您可以通过两种方式控制遥测:

  1. 在搅拌机中:转到编辑>首选项>附加组件>Blender MCP,取消选中遥测同意复选框

    • 同意(选中):收集匿名提示、代码片段和屏幕截图
    • 未经同意(未选中):只收集最少的匿名使用数据(工具名称、成功/失败、持续时间)
  2. 环境变量:通过运行以下命令完全禁用所有遥测:

DISABLE_TELEMETRY=true uvx blender-mcp

或者将其添加到MCP配置中:

{
    "mcpServers": {
        "blender": {
            "command": "uvx",
            "args": ["blender-mcp"],
            "env": {
                "DISABLE_TELEMETRY": "true"
            }
        }
    }
}

所有遥测数据都是完全匿名的,仅用于改进BlenderMCP。

贡献

欢迎投稿!请随时提交拉取请求。

免责声明

这是一个第三方集成,不是由Blender制作的。由……制造 西达尔特