一个用于管理和执行 Blender 脚本的 Model Context Protocol (MCP) 服务器,它可以帮助用户在无头 Blender 环境中轻松管理脚本的添加、编辑、执行和删除等操作,并能查看执行结果和错误,还能跟踪脚本元数据。
python server.py
add_script(name, content)
- 添加新脚本edit_script(name, content)
- 编辑现有脚本execute_script(name, blend_file=None)
- 在 Blender 中执行脚本,可选指定 .blend 文件remove_script(name)
- 删除脚本scripts://list
- 获取可用脚本列表script://{name}
- 获取特定脚本的内容result://{name}
- 获取脚本的执行结果pip install mcp
# 添加一个简单的脚本
add_script("hello_cube", '''
import bpy
# 删除现有对象
bpy.ops.object.select_all(action='SELECT')
bpy.ops.object.delete()
# 创建一个立方体
bpy.ops.mesh.primitive_cube_add(size=2, location=(0, 0, 0))
print("创建了立方体!")
''')
# 执行脚本
execute_script("hello_cube")
# 获取结果
# 使用以下地址访问:result://hello_cube
# 添加一个结合_blend文件的脚本
add_script("analyze_scene", '''
import bpy
# 打印当前场景的信息
print(f"当前 Blender 版本: {bpy.app.version_string}")
print(f"当前文件: {bpy.data.filepath}")
# 列出场景中的所有对象
print("\n场景中的对象:")
for obj in bpy.data.objects:
print(f" - {obj.name} ({obj.type})")
''')
# 指定_blend 文件执行脚本
execute_script("analyze_scene", blend_file="/path/to/your/project.blend")
# 获取结果
# 使用以下地址访问:result://analyze_scene
script_files/scripts
目录中script_files/results
目录中script_files/metadata.json
中进行跟踪MIT