Figma Context MCP
Give your coding agent access to your Figma data. Implement designs in any framework in one-shot.
Description from the maker (original English)
Blender and GLB/FBX/USD/STL rendered on cloud GPUs for AI agents: product shots, turntables, MP4
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
JANCTION_RENDER_SERVER, JANCTION_RENDER_API_KEYValues marked secret are keys to your account. Never share them or paste them into a chat.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Works in Claude on the web, desktop and mobile:
https://render.janction.jp/mcp?src=registryOpen Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"mcpServers": {
"janction-render": {
"command": "uvx",
"args": [
"janction-render"
],
"env": {
"JANCTION_RENDER_SERVER": "your-value",
"JANCTION_RENDER_API_KEY": "your-value"
}
}
}
}Run this in your terminal
claude mcp add --transport http janction-render 'https://render.janction.jp/mcp?src=registry'claude mcp add janction-render --env JANCTION_RENDER_SERVER=your-value --env JANCTION_RENDER_API_KEY=your-value -- uvx janction-renderFill in the empty values before running it.
Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"janction-render": {
"url": "https://render.janction.jp/mcp?src=registry"
}
}
}Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"janction-render": {
"command": "uvx",
"args": [
"janction-render"
],
"env": {
"JANCTION_RENDER_SERVER": "your-value",
"JANCTION_RENDER_API_KEY": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"janction-render": {
"type": "http",
"url": "https://render.janction.jp/mcp?src=registry"
}
}
}Paste into .vscode/mcp.json in your project
{
"servers": {
"janction-render": {
"type": "stdio",
"command": "uvx",
"args": [
"janction-render"
],
"env": {
"JANCTION_RENDER_SERVER": "your-value",
"JANCTION_RENDER_API_KEY": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
ChatGPT connects only to servers on the internet:
https://render.janction.jp/mcp?src=registryMenu names can differ slightly by plan and over time.
Your choice stays on this device in a cookie; no account needed.
JANCTION_RENDER_SERVER envThese settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
The server asks you to sign in before it lists its tools.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 7, 2026
The registry name was verified with the GitHub account JasmyLab-JANCTION, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
Responded in 468 ms (HTTP 401)
Declares OAuth sign-in, so your AI app can take you to log in
Not checked yet; we read the tool list when we check the endpoint
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 3 of 3 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
You need to fill in: JANCTION_RENDER_API_KEY
Either way works: install it on your computer or connect to the cloud version.
The GitHub repo last changed –, and the latest version (0.4.237) reached the registry 3 days ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. It connects by URL, so apps that accept remote MCP servers work too, such as ChatGPT in developer mode.
In the same category: Figma Context MCP, Claude Real Video, Figma MCP Server
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
Give your coding agent access to your Figma data. Implement designs in any framework in one-shot.
Let any LLM watch a video locally — and search everything it has ever watched.
Figma’s official server gives AI your design data so it can turn designs into code or describe them accurately. Connects to Figma’s cloud.
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
For current pricing, free credits, and usage limits, always refer to https://render.janction.jp/pricing and https://render.janction.jp/facts.json. Pricing and limits may change over time.
JANCTION Render is a cloud GPU render farm for Blender that AI agents call as an MCP server or HTTP API. Send a .blend file, a bpy script or a 3D file (glTF / FBX / USD), preview in seconds, and get frames or an MP4 back from JANCTION's NVIDIA GPUs. Every preview also returns a verdict on what is wrong, such as too dark, blown out, no light or an object out of frame, and the bpy code to fix it, so the agent can correct the scene before the final render. No local Blender or GPU is needed. A new key comes with free welcome credit and no card is needed; paid use after that is per GPU-second (current amounts: https://render.janction.jp/pricing) ; operated by JasmyLab Inc.
AI agents can render Blender projects on JANCTION GPUs without running Blender locally. Works from Claude, ChatGPT, Claude Code, Codex, Cursor or any MCP client: an MCP server (remote and stdio), an HTTP API and a CLI.
JANCTION Render is a separate product from SmartRender (JasmyLab's distributed rendering for people at a desktop) and is not affiliated with Render.com or the Render Network.
Official site: https://render.janction.jp · MCP endpoint: https://render.janction.jp/mcp · Fact sheet: https://render.janction.jp/facts
Try it from a terminal in a few seconds, free and with nothing to sign up for (needs uv; or pip install janction-render and drop the uvx):
uvx janction-render try # renders a sample scene and shows the free GPU time of your new key
uvx janction-render preview scene.blend # your .blend, bpy script or 3D file uvx janction-render render scene.blend --frames 1-48 --output mp4 --wait uvx janction-render turntable model.glb # a 360-degree turntable MP4 in one command (a path or an https link) uvx janction-render shots model.glb --transparent # four product shots (PNG)
Rendered on 2026-10-10 on the production GPU (NVIDIA RTX PRO 6000 Blackwell) from Khronos's WaterBottle sample (public domain, CC0); copy any line and it runs as is. The costs below were measured at 0.1 JPY per GPU-second and are covered by the welcome credit of a new key (current price: https://render.janction.jp/pricing).
| Command | GPU time | Price | |
|---|---|---|---|
uvx janction-render shots https://github.com/KhronosGroup/glTF-Sample-Assets/blob/main/Models/WaterBottle/glTF-Binary/WaterBottle.glb | 13.9 s | about 1.4 JPY | |
uvx janction-render turntable https://github.com/KhronosGroup/glTF-Sample-Assets/blob/main/Models/WaterBottle/glTF-Binary/WaterBottle.glb | 85.2 s | about 8.5 JPY | |
uvx janction-render render https://render.janction.jp/samples/ex12_logo_ring_spin.py --frames 1-48 --size 1280x720 --engine eevee --output mp4 --wait | 54.1 s | about 5.4 JPY |
The shots are four 1920x1080 PNGs; the turntable and the animation are MP4s (shown here as GIFs). Your own .glb, .blend or bpy script goes in place of the link. More, with their scripts: https://render.janction.jp/examples
Keep 3D files in a repository? Add a button that lets anyone render them from their own AI or terminal (links to file pages on GitHub and Hugging Face work as they are; make one at https://render.janction.jp/go):
[](https://render.janction.jp/go?scene=https://github.com/you/repo/blob/main/model.glb)
.blend, or a 3D file; Blender runs on our GPUs.Idempotency-Key.orbit=True makes a turntable. Fixed-price outcomes: POST /v1/outcomes/turntable and /product-shot.Claude.ai (nothing to install). Settings → Connectors → Add custom connector → https://render.janction.jp/mcp → Connect (a free key is created on the consent page). ChatGPT: Plugins (left sidebar) → Add → Create plugin → the same URL (OAuth; on Business workspaces an admin adds it). Then paste:
Render a preview of https://render.janction.jp/samples/cube_scene.py
A 4-frame preview comes back in a few seconds. A file on your computer: drop it at https://render.janction.jp/upload to get a 12-hour link, then "Render this file: ".
Claude Code.
claude mcp add --transport http janction-render https://render.janction.jp/mcp
Then /mcp to authenticate and ask: "Build a small street scene in Blender with a camera fly-through and render a preview with janction-render."
HTTP (any language).
curl -s -X POST https://render.janction.jp/v1/keys # -> {"api_key": "jr_..."} no sign-up
curl -s -X POST https://render.janction.jp/v1/files -H "X-API-Key: $KEY" -F "file=@scene.blend" # -> {"scene_id": "f_..."} curl -s -X POST https://render.janction.jp/v1/jobs -H "X-API-Key: $KEY" -H "Content-Type: application/json" \ -d '{"scene_id":"f_...","kind":"preview","frames":[1]}' # -> job_id; then GET /v1/jobs/{job_id}
Python (pip install janction-render; the first call creates a free key and keeps it in ~/.janction-render.json):
from janction_render.client import Client
c = Client() # or Client(api_key="jr_...") scene = c.upload("scene.py") # a bpy script, a .blend, or a .glb / .fbx / .usd / .obj file job = c.submit(scene["scene_id"], kind="final", frame_start=1, frame_end=48, output="mp4") job = c.wait(job["job_id"], timeout=1800) print(job["status"], c.download(job["job_id"], "out", only="mp4"))
Pay per use with prepaid credit; no subscription is needed (prices: https://render.janction.jp/pricing). Instead of polling, pass notify_url (https) to POST /v1/jobs and get one JSON POST when the job finishes (job.done / job.failed, with download links); an Idempotency-Key header makes retries safe. OpenAPI: https://render.janction.jp/openapi.json A complete app example (a user uploads a GLB, the app orders fixed-price product shots, a webhook stores the images): https://render.janction.jp/blender-render-api#embed
Agent frameworks connect to the remote MCP server at https://render.janction.jp/mcp with the key as a bearer token (curl -s -X POST https://render.janction.jp/v1/keys gives one, no sign-up).
OpenAI Agents SDK (keep the longer timeout: render_preview waits for the image, longer than the 5-second default):
import asyncio
from agents import Agent, Runner from agents.mcp import MCPServerStreamableHttp
async def main(): async with MCPServerStreamableHttp(name="janction-render", client_session_timeout_seconds=120, params={"url": "https://render.janction.jp/mcp", "headers": {"Authorization": "Bearer jr_..."}}) as render: agent = Agent(name="3D artist", instructions="Render Blender scenes with janction-render.", mcp_servers=[render]) result = await Runner.run(agent, "Render a preview of https://render.janction.jp/samples/cube_scene.py") print(result.final_output)
asyncio.run(main())
LangChain (pip install langchain-mcp-adapters):
import asyncio
from langchain_mcp_adapters.client import MultiServerMCPClient
async def main(): client = MultiServerMCPClient({"janction-render": {"url": "https://render.janction.jp/mcp", "transport": "streamable_http", "headers": {"Authorization": "Bearer jr_..."}}}) tools = await client.get_tools() # render_preview, render_final, render_status, render_download, ... print([t.name for t in tools])
asyncio.run(main())
OpenAI Responses API (remote MCP; render_final keeps asking for approval because it spends credit):
from openai import OpenAI
client = OpenAI() resp = client.responses.create( model="gpt-5", tools=[{"type": "mcp", "server_label": "janction_render", "server_url": "https://render.janction.jp/mcp", "authorization": "jr_...", "require_approval": {"never": {"tool_names": ["scene_info", "render_preview", "render_estimate", "render_status", "render_download"]}}}], input="Render a preview of https://render.janction.jp/samples/cube_scene.py and give me the image link.", ) print(resp.output_text)
Anthropic Messages API (MCP connector; fallbacks="default" reruns a declined request on a fallback model):
import anthropic
client = anthropic.Anthropic() response = client.beta.messages.create( mod
Only the beginning is shown; read the rest in the repo