This release has been yanked by its maintainers, and will be ignored by installers, except when explicitly specified.
studio-mcp
Give your MCP client eyes for LEGO models. An MCP server that renders
LDraw files (.ldr / .mpd / .dat) to images with real part geometry —
studs, slopes, window glass — using headless Blender and the ImportLDraw
addon. The result looks like a BrickLink Stud.io render, with no GUI
anywhere in the loop.
Point a vision-capable model at a build and it sees the actual bricks: crossed rotation matrices, floating plates, sunken windows — the kinds of export bugs a geometric proxy render will happily hide.
Quickstart
# 1. install
pip install -e .
# 2. install the LDraw parts library + ImportLDraw addon
studio-mcp-setup
# 3. register with Claude Code
claude mcp add studio -- studio-mcp
Then ask things like "render output/build.ldr and tell me what looks wrong" — the model sees the render, not just the text.
Blender is a prerequisite (see Requirements); it is not
installed by studio-mcp-setup.
Tools
| tool | what it does |
|---|---|
render_ldraw_file(path, azimuths="-60,120", resolution=640, samples=24) |
Render a model file to a PNG (multi-view, stitched side by side) |
render_ldraw_text(ldr, azimuths="-60,120", resolution=640, samples=24) |
Render inline LDraw content without writing a file first |
check_renderer() |
Diagnose the Blender / addon / parts-library setup |
azimuths is a comma-separated list of view angles in degrees; each is
rendered and the views are stitched horizontally. Elevation is fixed at
22°. Higher samples = cleaner but slower.
Requirements
- Blender 4.x on
PATH, or pointSTUDIO_MCP_BLENDERat the binary. Install it yourself (package manager, blender.org, or a local build);studio-mcp-setupdoes not install Blender. - ImportLDraw addon (
io_scene_importldraw) in Blender's addons dir — installed bystudio-mcp-setup. - LDraw parts library at
~/.ldraw(orLDRAW_LIBRARY_PATH) — installed bystudio-mcp-setup.
Environment variables
| var | meaning |
|---|---|
STUDIO_MCP_BLENDER |
Path to the blender binary (overrides PATH lookup) |
STUDIO_MCP_DISABLE |
Set to 1 to force is_available() to False |
LDRAW_LIBRARY_PATH |
Path to the LDraw parts library (community convention) |
Manual setup
If studio-mcp-setup can't detect things automatically:
- LDraw library: download
complete.zip
and unzip so that
~/.ldraw/parts/exists. - ImportLDraw addon: download the latest release from
TobyLobster/ImportLDraw
and install it via Blender > Preferences > Add-ons > Install, or unzip
into
~/.config/blender/<version>/scripts/addons/io_scene_importldraw/. (Launch Blender once first so the config directory exists.)
Troubleshooting
check_renderersays NOT FOUND: runstudio-mcp-setup, or set the relevant env var above.- No GPU / WSL2 / containers: rendering uses Cycles on CPU, which works headless everywhere — no GPU or display needed. A ~150-part model takes a few seconds at the default 640px / 24 samples.
- "no mesh objects imported": the addon couldn't resolve parts —
usually a wrong or incomplete LDraw library path. Re-run setup or check
LDRAW_LIBRARY_PATH. - Addon not enabled: the render script enables it automatically per
run; if a manual Blender session complains, enable
io_scene_importldrawin Preferences > Add-ons.
Provenance
This renderer was extracted from the prompt2brick project, where it started life as the vision critic's "see the actual model" path. prompt2brick keeps its own vendored copy of the render wrapper and Blender script, but this repo is the canonical source going forward — fixes and improvements to the renderer should land here first and be ported back into prompt2brick.
License
MIT — see LICENSE.
Metadata
Release files for studio-mcp 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| studio_mcp-0.1.0.tar.gz | 11.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| studio_mcp-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 23.7 kB
Release files / studio_mcp-0.1.0.tar.gz
| Download URL | studio_mcp-0.1.0.tar.gz |
|---|---|
| Size | 11.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
477fad7fec7c4dfc2d69b9f9398856763b0741bc27f7c7aa3bf87fae9372b27d
|
|
BLAKE2b-256 checksum How to use checksums |
8449dc9f252c953e1382852f5d1b31140c79064e191e0ceb59b7302606f87d44
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.2
|
Release files / studio_mcp-0.1.0-py3-none-any.whl
| Download URL | studio_mcp-0.1.0-py3-none-any.whl |
|---|---|
| Size | 12.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
b0aeb635f54ddd5c2a9770e77f3325e6ecb91aba0e621c68461076463dd4732a
|
|
BLAKE2b-256 checksum How to use checksums |
9f45e3153efdfcdfb7da38c479479203ed931881fe2869912ba3df0e3f8ee22a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.2
|