Trellis Blender插件MCP服务器
使用说明
项目简介
Trellis Blender Plugin 是一款 Blender 插件,它不仅集成了 TRELLIS 的文本到3D和图像到3D生成能力,还实现了 MCP (Model Context Protocol) 服务器功能。通过 MCP 服务器,该插件能够与支持 MCP 协议的 LLM 客户端(如 Cursor、Windsurf)进行通信,为 LLM 应用提供 3D 内容生成和 Blender 场景操作的上下文服务。
主要功能点
- 3D 模型生成: 支持文本到3D和图像到3D模型生成,利用 TRELLIS API 接口,可快速创建 3D 网格模型。
- 场景物体操作: 通过 MCP 协议,允许客户端远程控制 Blender 场景,包括创建、修改和删除场景中的 3D 物体。
- PolyHaven 资源集成: 集成了 PolyHaven 资源库,允许客户端通过 MCP 命令浏览、下载和应用 PolyHaven 的 HDRI、纹理和模型资源到 Blender 场景中。
- MCP 服务器: 内置 MCP 服务器功能,使用户可以通过标准的 MCP 协议与插件进行交互,扩展 Blender 的应用场景。
- 异步请求处理: 支持异步请求处理和实时状态更新,方便用户跟踪 3D 生成任务的进度。
安装步骤
- 下载插件文件: 克隆或下载仓库 trellis_blender 的代码。
- 安装 Blender 插件:
- 启动 Blender 3.6.0 或更高版本。
- 点击菜单 "编辑 (Edit)" -> "偏好设置 (Preferences)" -> "插件 (Add-ons)"。
- 点击 "安装 (Install)" 按钮,选择下载的插件文件 'trellis_for_blender.py'。
- 在插件列表中找到 "3D View: TRELLIS 3D Generation",勾选前面的复选框启用插件。
- 安装 TRELLIS API 服务: 插件依赖 TRELLIS API 服务,请参考 Trellis MCP 或仓库的 README 文档,安装并运行 TRELLIS API 服务后端。
服务器配置
要使 MCP 客户端(如 Cursor、Windsurf)连接到 Trellis Blender 插件的 MCP 服务器,您需要配置客户端的 MCP 服务器设置。以下是连接到此 MCP 服务器的 JSON 配置示例:
{ "mcpServers": { "trellis": { "command": "uvx", // 启动 MCP 服务器的命令,这里使用 uvx,表示在 uvx 环境中运行 "args": [ "trellis-mcp" // 命令参数,这里 "trellis-mcp" 可能用于标识或区分不同的 MCP 服务 ] } } }
配置参数说明:
- server name (trellis): 服务器名称,可以自定义,用于在客户端中标识该服务器连接。
- command (uvx): 启动 MCP 服务器的命令。根据仓库 'README.md' 示例,这里使用 'uvx',暗示可能需要在 'uvx' 环境中运行或启动。
- args (["trellis-mcp"]): 命令参数。示例中包含一个参数 '"trellis-mcp"',具体用途可能与插件内部服务识别有关。
注意: 实际 'command' 和 'args' 的配置可能需要根据您的 MCP 客户端和运行环境进行调整。请参考您的 MCP 客户端文档,了解如何配置和启动外部 MCP 服务器连接。
基本使用方法
- 启动 MCP 服务器:
- 在 Blender 界面中,打开 3D 视图,按下 "N" 键打开侧边栏。
- 在侧边栏中找到 "TRELLIS" 选项卡,展开后找到 "MCP Connections" 面板。
- 点击 "Start MCP Server" 按钮启动 MCP 服务器。服务器默认运行在端口 9876 上。
- 配置 MCP 客户端:
- 打开支持 MCP 协议的 LLM 客户端(如 Cursor、Windsurf)。
- 在客户端的设置中,找到 MCP 服务器配置,粘贴上面提供的 JSON 配置信息。确保服务器名称与配置一致(例如 "trellis")。
- 使用 MCP 命令:
- 在 LLM 客户端中,您可以使用 MCP 协议定义的命令与 Blender MCP 服务器进行交互。
- 例如,您可以发送命令来创建 3D 物体、修改物体属性、渲染场景或从 PolyHaven 下载资源。
- 具体可用的 MCP 命令和功能,请参考插件代码和 TRELLIS 以及 PolyHaven 相关的 API 文档。
提示: 启动 MCP 服务器后,请确保 Blender 保持运行,以便 LLM 客户端可以与之通信并执行相关操作。