Skip to main content
Glama

Blender MCP 服务器

用于通过 API 完全控制 Blender 的模型上下文协议 (MCP) 服务器

此插件将 Blender 转换为一个 MCP 服务器,公开了 50 多个强大的工具,这些工具可以通过 HTTP 端点由 AI 代理进行编排。非常适合 AI 驱动的 3D 工作流、自动化和创意实验。

✨ 功能

  • 🚀 50+ 工具 - 完全控制 Blender 的功能:

    • 物体创建、操作和变换

    • 材质和着色器系统管理

    • 动画和关键帧控制

    • 相机和灯光设置

    • 修改器和约束

    • 物理模拟(刚体、布料、流体)

    • 几何节点和程序化生成

    • 文件导入/导出操作

    • 场景优化和批量操作

  • 🔒 线程安全执行 - 企业级队列系统,确保安全并发操作

  • 📦 自动安装依赖 - 首次运行时自动安装所需的包

  • 🎮 简单的 UI 面板 - 从 Blender 的 N 面板一键启动/停止服务器

  • 📊 实时监控 - 跟踪操作、统计数据和服务器状态

  • 🔧 生产就绪 - 全面的错误处理、日志记录和缓存

🚀 快速入门

安装

  1. 下载 blender_mcp.py

  2. 打开 Blender

  3. 进入 编辑 (Edit) → 首选项 (Preferences) → 插件 (Add-ons)

  4. 点击搜索栏旁边的 下拉箭头 (⌄)

  5. 选择 从磁盘安装... (Install from Disk...)

  6. 选择下载的 blender_mcp.py 文件

  7. 勾选“MCP Complete Server for Blender”旁边的复选框以启用插件

启动服务器

  1. 在 3D 视图中按 N 打开侧边栏

  2. 导航到 MCP Server 选项卡

  3. 点击 Start Server

  4. 服务器将在 http://localhost:8000 启动

插件会在首次运行时自动安装所需的依赖项(FastAPI、Uvicorn、Pydantic 等)。

🤖 与 PolyMCP 一起使用

此 MCP 服务器旨在与 PolyMCP 无缝协作——这是一个用于通过 AI 代理编排 MCP 服务器的强大框架。

示例:AI 控制的 Blender

#!/usr/bin/env python3
import asyncio
from polymcp.polyagent import UnifiedPolyAgent, OllamaProvider

async def main():
    # Initialize your LLM provider
    llm = OllamaProvider(model="gpt-oss:120b-cloud", temperature=0.1)
    
    # Connect to Blender MCP server
    agent = UnifiedPolyAgent(
        llm_provider=llm, 
        mcp_servers=["http://localhost:8000/mcp"],  
        verbose=True
    )
    
    async with agent:
        print("✅ Blender MCP Server connected!\n")
        
        # Chat with your AI to control Blender
        while True:
            user_input = input("\n🎨 You: ")
            
            if user_input.lower() in ['exit', 'quit']:
                break
            
            result = await agent.run_async(user_input, max_steps=5)
            print(f"\n🤖 Blender: {result}")

if __name__ == "__main__":
    asyncio.run(main())

示例命令

连接后,您可以要求 AI 代理执行以下操作:

  • “在位置 (0, 0, 0) 创建一个大小为 2 的立方体”

  • “为选定的物体添加红色金属材质”

  • “创建一个看向原点的相机”

  • “设置一个包含 3 盏灯的简单照明场景”

  • “为立方体添加流体模拟”

  • “将场景导出为 FBX 文件”

  • “创建一个在 100 帧内旋转物体 360 度的动画”

就是这样! PolyMCP 处理了所有复杂性:

  • 工具发现和选择

  • 多步任务规划

  • 错误处理和重试

  • 跨操作的状态管理

这使得构建 AI 驱动的 Blender 自动化工具变得异常简单!

📡 API 端点

服务器运行后,您可以访问:

  • API 文档: http://localhost:8000/docs

  • 列出所有工具: http://localhost:8000/mcp/list_tools

  • 调用工具: POST http://localhost:8000/mcp/invoke/{tool_name}

🛠️ 可用工具类别

  • 物体操作: 创建、删除、复制、选择物体

  • 变换: 移动、旋转、缩放、应用变换

  • 材质与着色: 创建材质、添加纹理、设置着色器节点

  • 建模: 添加修改器、布尔运算、网格编辑

  • 动画: 关键帧、时间轴控制、非线性动画 (NLA) 编辑器

  • 相机与灯光: 相机设置、灯光创建、HDRI 环境

  • 渲染: 渲染设置、输出配置、渲染

  • 物理: 刚体、布料、流体模拟

  • 几何节点: 程序化生成、节点树创建

  • 文件操作: 导入/导出各种格式 (FBX, OBJ, USD 等)

  • 场景管理: 场景信息、清理、优化

  • 批量操作: 多物体创建和变换

  • 高级: 粒子系统、力场、蜡笔 (Grease Pencil)

🔧 配置

您可以通过编辑 blender_mcp.py 中的 Config 类来自定义服务器:

class Config:
    HOST = "0.0.0.0"           # Server host
    PORT = 8000                # Server port
    AUTO_INSTALL_PACKAGES = True  # Auto-install dependencies
    THREAD_SAFE_OPERATIONS = True  # Enable thread-safe execution
    ENABLE_CACHING = True      # Enable result caching

📋 要求

插件会自动安装以下依赖项:

  • FastAPI

  • Uvicorn

  • Pydantic

  • docstring-parser

  • NumPy

  • PolyMCP

Blender 版本: 3.0.0 或更高

🐛 故障排除

服务器无法启动?

  • 检查 Blender 的系统控制台以获取错误消息(窗口 → 切换系统控制台)

  • 确保端口 8000 未被占用

  • 尝试在安装后重启 Blender

依赖项未安装?

  • 使用 Blender 的 Python 手动安装包:

/path/to/blender/python -m pip install fastapi uvicorn pydantic docstring-parser numpy

找不到 MCP Server 面板?

  • 在 3D 视图中按 N

  • 在侧边栏中查找“MCP Server”选项卡

  • 确保插件已在首选项中启用

🤝 贡献

欢迎贡献!该项目展示了为 PolyMCP 创建强大的 MCP 服务器是多么简单。

📝 许可证

MIT 许可证 - 详情请参阅 LICENSE 文件

🔗 相关项目

  • PolyMCP - 使用自定义代理与 MCP 服务器交互的简单高效方式

  • Model Context Protocol - 用于与 LLM 进行工具集成的开放协议

💡 为什么选择这个项目?

创建此 MCP 服务器是为了展示 PolyMCP 构建 AI 驱动工具是多么令人难以置信的简单。只需几行代码,您就可以:

  1. 将复杂的 Blender 功能公开为 MCP 工具

  2. 让 AI 代理发现并编排这些工具

  3. 为 3D 创建构建自然语言界面

没有复杂的提示词,没有手动工具选择,没有状态管理 - PolyMCP 处理了一切!


专为 PolyMCP 设计

如果您觉得有用,请给此仓库加星 ⭐!

Related MCP Connectors