jasmylab-janction/janction-render
v0.4.266MIT
Render Blender scenes and 3D models (GLB, FBX, USD, OBJ, STL) on cloud GPUs from your AI app: product shots, 360-degree turntables, animations and stills, with a preview and a critic first. No local GPU or Blender; no sign-up. The remote MCP connector plus a workflow skill.
hosts
- render.janction.jp
plugin.json
- name
- janction-render
- version
- 0.4.266
- description
- Render Blender scenes and 3D models (GLB, FBX, USD, OBJ, STL) on cloud GPUs from your AI app: product shots, 360-degree turntables, animations and stills, with a preview and a critic first. No local GPU or Blender; no sign-up. The remote MCP connector plus a workflow skill.
- author
- JasmyLab Inc.https://render.janction.jp
- license
- MIT
- homepage
- https://render.janction.jp
- extensions
- com.openai
mcp.json
- janction-renderstreamable-httphttps://render.janction.jp/mcp?src=codex-plugin
{
"$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
"name": "janction-render",
"version": "0.4.266",
"description": "Render Blender scenes and 3D models (GLB, FBX, USD, OBJ, STL) on cloud GPUs from your AI app: product shots, 360-degree turntables, animations and stills, with a preview and a critic first. No local GPU or Blender; no sign-up. The remote MCP connector plus a workflow skill.",
"author": {
"name": "JasmyLab Inc.",
"url": "https://render.janction.jp"
},
"homepage": "https://render.janction.jp",
"repository": "https://github.com/JasmyLab-JANCTION/janction-render",
"license": "MIT",
"keywords": [
"blender",
"rendering",
"render-farm",
"gpu",
"3d",
"cycles",
"mcp"
],
"extensions": {
"com.openai": {
"interface": {
"displayName": "JANCTION Render",
"shortDescription": "Render Blender on cloud GPUs",
"longDescription": "JANCTION Render is a cloud GPU render farm for Blender, built for AI agents. The agent writes or receives a Blender scene as a bpy Python script, a .blend file or a 3D file (glTF/GLB, FBX, USD, OBJ), previews it in seconds on a JANCTION GPU, estimates how long the final render will take, then renders the frames or a video and returns download links.\n\nTypical flow: scene_info reads cameras, frame range, objects, lights and missing files without rendering. render_preview returns up to 4 frames tiled in one image with a short critic verdict and fix code, so the agent can check camera, lighting and materials before spending GPU time; with variations it shows 2 to 8 looks of one frame in one labelled sheet. render_estimate reports the expected GPU seconds, the queue wait, and whether the job fits the account's remaining GPU time. render_final renders PNG or EXR frames or a video (MP4, WebM, ProRes, GIF). On request it also returns a before/after video against an earlier version (compare_to), versions of an animation for X, vertical and square posts (deliver), compositing passes as multilayer EXR or ProRes 4444 (passes), and for long finals the fewest samples that look the same (auto_samples). Every final comes with a delivery check (missing, black or flickering frames, resolution, fps and length) and a contact sheet. render_status reports progress and the remaining time, render_download returns the links, render_cancel stops a job, render_import_file takes a file attached in the chat, asset_search finds CC0 models, textures and HDRIs, render_share and render_unshare publish or remove a public page for a render the user chose to share, and render_info reports worker availability and the queue.\n\nIntended users: people building 3DCG with Blender who have no GPU or whose local rendering is slow, and agents that need a rendered image or video from a Blender scene. Not for non-Blender workloads such as video conversion, image generation or modeling advice. Limits: up to 3,000 frames per instruction (automatically split internally under one job id), 1080p by default and up to 4K. Blender 3.6, 4.2, 4.5, 5.0 and 5.2 with Cycles or EEVEE on NVIDIA GPUs. No account is needed: connecting creates a key. Inputs and results are deleted automatically after a short retention period (24 hours after last use by default) and are never used for training. Operated by JasmyLab Inc. (Tokyo, Japan).",
"developerName": "JasmyLab Inc.",
"category": "Creativity",
"capabilities": [
"Render Blender scenes on cloud GPUs",
"Preview up to 4 frames in seconds",
"Estimate render time and quota before rendering",
"Render animations to MP4 or PNG frames",
"Inspect .blend files and bpy scripts without rendering"
],
"websiteURL": "https://render.janction.jp",
"supportURL": "https://render.janction.jp/support",
"privacyPolicyURL": "https://render.janction.jp/privacy",
"termsOfServiceURL": "https://render.janction.jp/terms",
"logo": "./assets/icon.png",
"composerIcon": "./assets/icon.png",
"defaultPrompt": [
"Make a red cube rotating on a grey floor in Blender and show me a 4-frame preview.",
"How long would 120 frames at 1280x720 with 64 samples take to render?",
"Render my Blender scene to a 48-frame MP4 at 1280x720."
]
},
"review": {
"test_cases": {
"positive": [
{
"description": "Preview a scene the agent writes",
"prompt": "Make a red cube on a grey floor in Blender and show me a 4-frame preview.",
"tools_triggered": "render_preview",
"expected_behavior": "The agent writes a short bpy script and calls render_preview. Within about 15 seconds an image with 4 labeled tiles comes back together with a short critic verdict; the agent shows the image and asks whether it looks right before any final render. If the reply's next_actions suggest an option (for example four lighting variants), the agent may mention it but does not run it without the user."
},
{
"description": "Inspect a scene without rendering",
"prompt": "Read this Blender scene and tell me its cameras, frame range and anything missing, without rendering: https://render.janction.jp/samples/cube_scene.py",
"tools_triggered": "scene_info",
"expected_behavior": "scene_info returns the cameras, frame range, objects, lights and missing files. No image is rendered and no GPU time is used."
},
{
"description": "Estimate before a long render",
"prompt": "How long would frames 1-120 of https://render.janction.jp/samples/cube_scene.py take, and does it fit my remaining GPU time?",
"tools_triggered": "render_estimate",
"expected_behavior": "render_estimate returns the expected GPU seconds, a human-readable duration, the queue wait and whether the job fits the remaining GPU time. The agent reports this and waits for the user before rendering."
},
{
"description": "Final render to MP4",
"prompt": "Render frames 1-48 of https://render.janction.jp/samples/cube_scene.py as an MP4.",
"tools_triggered": "render_final, render_status, render_download",
"expected_behavior": "render_final returns a job id and an ETA. render_status reports progress; render_download returns PNG frame links and an MP4 link that work for 24 hours, plus report.json and report_sheet.png (the delivery check). The agent shares the MP4 link and the check's verdict."
},
{
"description": "Check the service status",
"prompt": "Is a GPU online right now, and how long is the queue?",
"tools_triggered": "render_info",
"expected_behavior": "render_info returns worker availability, queue length and the expected wait. Nothing is rendered."
}
],
"negative": [
{
"description": "Not a Blender task",
"prompt": "Convert this MP4 to a GIF."
},
{
"description": "Question that needs no rendering",
"prompt": "What is the difference between Cycles and EEVEE in Blender?"
},
{
"description": "Request beyond the service limits",
"prompt": "Render 50,000 frames of https://render.janction.jp/samples/cube_scene.py at 8K right now."
}
]
},
"demo_recording_url": "https://render.janction.jp/media/demo.mp4",
"commerce": false,
"commerce_description": "The plugin does not sell goods, services or GPU time, does not process payments and does not link to a purchase page. When a job needs more GPU time than the account has, the tool says so and suggests a smaller render; nothing is offered or purchased inside the plugin."
},
"publication": {
"release_notes": "0.4.258: options for creators on the existing tools (no new tool, 13 tools as before). render_preview: variations (2-8 looks of one frame in one labelled sheet). render_final: colors, compare_to (before/after video against an earlier final), deliver (X, vertical and square versions of an animation), passes (multilayer EXR, Cycles) and output='prores4444', auto_samples / probe_frame (finals of 100 frames or more). render_estimate: variations, auto_samples, probe_frame. Every final carries a delivery check (report.json, report_sheet.png) made without GPU time. Preview replies suggest the options that fit in next_actions. EEVEE renders on the GPU again."
}
}
}
}
Client extensions
Data this package carries for particular clients. The directory lists the clients named and never reads what is addressed to them.
- com.openai