Blender MCP サーバー
Blender スクリプトを管理および実行するための Model Context Protocol (MCP) サーバー。
特徴
Blender Python スクリプトの追加、編集、実行、削除
ヘッドレスBlender環境でスクリプトを実行する
実行結果とエラーを表示する
スクリプトのメタデータ(作成日、最終更新日、実行回数)を追跡する
Related MCP server: MCP Python Server
要件
Python 3.7以上
Blenderがインストールされアクセス可能
MCP ライブラリ (
pip install mcp)
使用法
サーバーを起動します。
python server.pyMCPクライアント(Claude Desktopなど)を使用してサーバーに接続します
提供されているツールを使用してスクリプトを管理します。
add_script(name, content)- 新しいスクリプトを追加するedit_script(name, content)- 既存のスクリプトを編集するexecute_script(name, blend_file=None)- オプションで.blendファイルを指定して、Blenderでスクリプトを実行します。remove_script(name)- スクリプトを削除する
情報を取得するにはリソースにアクセスしてください:
scripts://list- 利用可能なスクリプトのリストを取得しますscript://{name}- 特定のスクリプトの内容を取得するresult://{name}- スクリプトの実行結果を取得する
例
基本的な例
# Add a simple script
add_script("hello_cube", '''
import bpy
# Clear existing objects
bpy.ops.object.select_all(action='SELECT')
bpy.ops.object.delete()
# Create a cube
bpy.ops.mesh.primitive_cube_add(size=2, location=(0, 0, 0))
print("Cube created!")
''')
# Execute the script
execute_script("hello_cube")
# Get the result
# Access using: result://hello_cubeBlend ファイルの操作
# Add a script that works with a blend file
add_script("analyze_scene", '''
import bpy
# Print information about the current scene
print(f"Current Blender version: {bpy.app.version_string}")
print(f"Current file: {bpy.data.filepath}")
# List all objects in the scene
print("\\nObjects in the scene:")
for obj in bpy.data.objects:
print(f" - {obj.name} ({obj.type})")
''')
# Execute with a specific blend file
execute_script("analyze_scene", blend_file="/path/to/your/project.blend")
# Get the result
# Access using: result://analyze_scene仕組み
スクリプトが追加されると、
script_files/scriptsディレクトリに保存されます。実行されると、スクリプトはヘッドレスBlenderインスタンスで実行されます。
ブレンドファイルが指定されている場合、Blenderはスクリプトを実行する前にそのファイルを開きます。
それ以外の場合は、デフォルトの空のBlenderシーンが使用されます。
出力とエラーは
script_files/resultsディレクトリにキャプチャされ保存されます。スクリプトに関するメタデータは
script_files/metadata.jsonで追跡されます。
インストール
このリポジトリをクローンする
MCPライブラリをインストールします:
pip install mcpBlenderがインストールされ、PATHからアクセスできることを確認してください
ライセンス
マサチューセッツ工科大学