Blender MCP Server
دليل عربي عملي لربط Blender بعملاء LLM، من التثبيت إلى تحليل المشاهد باستخدام اللغة الطبيعية.
خادم MCP (Model Context Protocol) خفيف لـ Blender. يوفّر واجهة باللغة الطبيعية للتعامل مع Blender Python API، ويسهّل الوصول إلى التوثيق، كما يتيح للمستخدمين استكشاف الإعدادات المعقّدة وفهمها.
للتفاصيل التقنية وتوثيق البنية، راجع الكود المصدري.
التثبيت
لا يحتوي Blender على وظيفة مدمجة للاتصال بنماذج LLM.
لكي يتصل Blender بنماذج LLM، يجب تنزيل ثلاث أدوات خارجية وتثبيتها وتشغيلها يدويًا.
المتطلبات
Add-on
للتفاعل مع جلسة Blender تحتاج إلى تثبيت Add-on مخصّصة لتكامل MCP Server.
اسحب وأفلِت داخل Blender...أو نزّل الملف ثم استخدم Install from Disk.
إذا استخدمت السحب والإفلات داخل Blender فستحتاج إلى تنفيذ الخطوة مرتين: الأولى لإضافة مستودع Blender Lab، والثانية لتثبيت الـ Add-on نفسها.
LLM Client
تتبع MCP Servers معيارًا محددًا وتتوافق مع عدد كبير من العملاء. اتبع توثيق Llama.cpp، أو ثبّت العميل الذي يناسبك.
MCP Server
توجد طرق مختلفة للتثبيت حسب إمكانات LLM Client لديك.
- MCP Bundle: للعملاء الأحدث الذين يدعمون ملفات
.mcpb، نزّل أحدث حزمة من صفحة الإصدارات. - MCP Server: راجع توثيق Llama.cpp أو تعليمات الإعداد.
التشغيل
بعد إعداد MCP Server داخل LLM Client، يمكنك البدء في استكشاف مشاهد Blender.

المثال الأول: تحليل المشهد
يمكن استخدام MCP لتحليل المشهد برمجيًا واكتشاف اختناقات الأداء. جرّب مثلًا ملف Classroom التجريبي:

هذا المشهد أحد ملفات Blender Benchmark. توجد هذه الملفات في الاختبار لأنها تمثّل ملفات إنتاج حقيقية أنشأها فنانون، لذلك ليس غريبًا أن تحتوي على عناصر يمكن تحسينها.
فحص عدد المضلّعات مفيد غالبًا، لكن الأكثر إثارة للاهتمام هو رسم عدد المضلّعات نسبةً إلى حجم ظهور العنصر في الرندر النهائي. يمكن الحصول على ذلك بالأمر التالي.
Analyze the scene and list the outliers: objects with highest polygon count but smaller size from the camera point of view.
تُظهر البيانات المرسومة عنصرين بارزين عن البقية بوضوح: alphabet و coat 1:

يحتوي عنصر alphabet على 20 ألف مضلّع. وبسبب وضعه المسطّح يمكن استبداله بـ Texture مع تأثير محدود على النتيجة النهائية. أما coat 1 فيحتوي على 37 ألف مضلّع بسبب Subsurf modifier؛ وتقليل مستوى Subdivision قد يخفف المشهد إذا كانت الذاكرة هي عنق الزجاجة.

المثال الثاني: أوامر متنوعة
هذه بعض حالات الاستخدام التي تم اختبارها. ستحتاج إلى لصق محتوى Prompt كاملًا ليعمل. استخدم ملف المثال المناسب كنقطة بداية، وستعتمد النتيجة على النموذج المستخدم.
| حالة الاستخدام | Prompt | ملف التجربة | النتيجة |
|---|---|---|---|
| إعادة تسمية Data-blocks: تصحيح الأخطاء | With the current open Blender file fix the name of all the data-blocks to remove typos. Report back which data-blocks got fixed. | Scattering Pebbles | GRP-rocks → GRP-pebble، LGT-Lights → LGT-lights، Compositing Nodetree → Compositing Node Tree |
| إعادة تسمية Data-blocks: أسماء أوضح | With the current open Blender file suggest descriptive names for all data-blocks, and apply if approved. | Scattering Pebbles | Camera → CAM-main، Area → LGT-sun-key، Area.001 → LGT-sun-fill، Area.002 → LGT-area-rim، GEO-pebble.001 → GEO-pebble-B، … |
| استعلام علاقات البيانات باللغة الطبيعية | Which objects are using the following material: pebbles | Scattering Pebbles | 7 objects: GEO-pebble، GEO-pebble.001، GEO-pebble.002، GEO-pebble.003، GEO-pebble.004، GEO-pebble.005، GEO-pebble.006 |
| تشخيص المشهد | What is the object with the highest poly-count on this file? Ignore objects which are not linked to any scene. | Scattering Pebbles | GEO-ground with 4,096 faces. |
| توثيق Geometry Nodes | With the current open Blender file explain what the main geometry nodes setup is doing. Add inline documentation for it with frame elements. Create a Text data-block with the result of analysis. | Scattering Pebbles | 4 major color-coded frames + text file with explanation. |
أوامر أخرى لم تُستكشف بعد:
- Translate all the data-blocks from French to English.
- My mesh is not being deformed by my armature, how can I fix that?
- Blender is running out of memory rendering this scene, how can I optimize it?
- This mesh has strange shading artifacts, how can you fix that?
- Find objects that have meshes with bad normals.
- Check my scene for non-uniformally transformed mesh objects.
- The video I exported doesn’t play in my web browsers, which settings should I change?
- Which sculpt brushes should I use for creating and detailing tree branches?
- Set up compositing nodes to save my image both as SDR and HDR.
- Verify this checklist: meshes must be manifold, all objects must have materials, naming must follow convention, no absolute paths, …
‹تصحيح أخطاء أسماء Data-blocks
- GRP-rocks → GRP-pebbles (the scene contains only pebble objects, not rocks).
- LGT-Lights → LGT-lights (inconsistent casing).
- Compositing Nodetree → Compositing Node Tree (Nodetree is a compound word error).
‹اقتراح أسماء أوضح لـ Data-blocks
Objects
Camera → CAM-main Area → LGT-sun-key Area.001 → LGT-sun-fill Area.002 → LGT-area-rim GEO-pebble.001 → GEO-pebble-B GEO-pebble.002 → GEO-pebble-C GEO-pebble.003 → GEO-pebble-D GEO-pebble.004 → GEO-pebble-E GEO-pebble.005 → GEO-pebble-F GEO-pebble.006 → GEO-pebble-G
Light Data-Blocks
Area → LGT-sun-key Area.001 → LGT-sun-fill Area.002 → LGT-area-rim
Camera Data-Block
Camera → CAM-main
Textures
Texture → TEX-ground-clouds Texture.001 → TEX-ground-image
Scene & World
World → WLD-environment Scene → SCN-main
‹توثيق Geometry Nodes
Frames الجديدة

Text Data-block
GEOMETRY NODES ANALYSIS -- "Pebble Scattering Nodes" Applied to object: GEO-ground | Modifier: Pebbles ======================================================== OVERVIEW This node group scatters three size categories of pebble meshes across the faces of a ground mesh. Each category uses its own density mask and a global Factor multiplier so coverage can be art-directed. INPUTS (Group Interface) Geometry -- The ground mesh to scatter pebbles on. Large Pebbles Mask -- Float mask defining where large pebbles appear. Medium Pebbles Mask -- Float mask for medium pebble placement regions. Small Pebbles Mask -- Float mask for small pebble placement regions. Factor -- Global density multiplier shared by all lanes. LARGE PEBBLES LANE Source object: GEO-pebble Distribute Points on Faces -> Instance on Points -> Join Geometry.003 Random Rotation.001 [-pi, +pi] Random Value [0.25 - 0.60] MEDIUM PEBBLES LANE Source object: GEO-pebble.004 Distribute Points on Faces.001 -> Instance on Points.001 -> Join Geometry.003 Random Rotation.002 [-pi, +pi] Random Value.002 [0.25 - 0.45] SMALL PEBBLES LANE Source object: GEO-pebble.002 Distribute Points on Faces.002 -> Instance on Points.002 -> Join Geometry.003 Random Rotation [-pi, +pi] Random Value.003 [0.10 - 0.35] MERGE & OUTPUT Join Geometry.003 receives large, medium and small instances plus the original ground geometry, then sends Geometry to Group Output. NOTES & SUGGESTIONS * Add a Seed input to re-randomise all three layers simultaneously. * Merge the three Factor inputs into one shared socket. * Label Math.003-.007 and Random Value nodes for easier maintenance.
