
IlluGen
io.github.dokaNcPublished by GitHub account dokaNcv0.1.1Updated Oct 24, 2026
Build, edit and render JangaFX IlluGen node graphs (textures, VFX) from your AI agent.
Overview
A local MCP server that lets an AI assistant build, edit, validate and render JangaFX IlluGen node graphs for textures and VFX on Windows.
- What you can do
- Check IlluGen installation, running instances and catalog version, and browse node types, parameters, pins and shipped presets with their defaults and ranges. Create projects from scratch or from an editable copy of a preset, and read back nodes, links, settings, curves and gradients. Add, change and remove nodes and links, set curves, gradients and spline control points, expose subgraph parameters, and add framed groups and notes. Set project settings such as FPS, loop region and default texture size, and generate a thumbnail. Validate a project offline or with a real load and trial export, render all export nodes to files with an inline preview, take a screenshot, and normalize a project.
- When to use it
- Useful when you work with JangaFX IlluGen on Windows and want an assistant to turn plain-language descriptions of textures, procedural masks or VFX flipbooks into working node graphs, or to inspect, adjust and re-render existing .illugen projects.
- Requirements
- Windows with an installed, activated IlluGen 1.2.x and a valid JangaFX license; Python 3.10+ with uv recommended. Runs as a local stdio process. Set ILLUGEN_EXE if IlluGen is not in its default install folder. Rendering starts a private IlluGen instance.
Installation
In SourceWeft
- Open IlluGen in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
IlluGen MCP
Let your AI agent build, edit and render JangaFX IlluGen node graphs.
Describe a texture, a VFX flipbook or a procedural mask in plain words: your agent creates the
.illugen project, wires the nodes, checks it and renders it with your own IlluGen. No clicks, no window.
[MIT license] [Python 3.10+] [MCP] [Windows] [CI]
Quick start · What it can do · Tools · How it works · FAQ
[An AI agent builds three IlluGen graphs (lava, underwater caustics, energy web) through illugen-mcp and renders them]
Real tool calls and timings, real IlluGen renders. Reproduce them with examples/demo_scenes.py.
Quick start
1. Requirements
- Windows with IlluGen 1.2.x installed and activated (a valid JangaFX license: this project does not include or replace IlluGen).
- Python 3.10+.
uvis recommended (no manual install needed).
2. Add it to your agent
Claude Desktop: one click
Download illugen-mcp-<version>.mcpb from the latest release
and open it (or drag it into Claude Desktop › Settings › Extensions). Needs uv
on your PATH. If IlluGen is installed elsewhere, set its path in the extension settings.
Claude Code
Claude Desktop, Cursor, Windsurf, VS Code, Gemini CLI… (any MCP client): add this to the client's
MCP configuration (claude_desktop_config.json, .cursor/mcp.json, …):
Without uv (plain pip)
or "command": "illugen-mcp" in the JSON configuration.
IlluGen installed somewhere else?
Set ILLUGEN_EXE to the full path of IlluGen.exe:
3. Ask
Restart your agent, then try:
What it can do
- Build graphs from scratch: all 157 node types of IlluGen 1.2.1 (Grayscale, Color, UV, Geometry, Islands, Utils, signals, import/export…), with their real defaults, every legal enum value, ranges, units and descriptions.
- Wire them safely: pin types (Grayscale, Color, UV, Normal, Islands, GeometryBuffer…) are checked before IlluGen sees the file, and the error suggests a converter node when types don't match.
- Go beyond plain parameters: curves, color gradients, spline / lattice control points, subgraphs with
exposed parameters, signal modulation (Oscillator →
Scale…), framed groups and notes. - Start from the shipped examples: copy any of IlluGen's 120+ example presets and modify it.
- Validate for real:
project_validate(engine=true)loads the project in IlluGen, runs a trial export and reports dropped nodes or links, log errors and a screenshot of any warning dialog. - Render:
project_renderruns File › Export on every export node (PNG, JPG, TGA, EXR, HDR, RAW, R16, R8, OBJ, FBX, flipbook sequences…), returns the produced files and an inline preview. - Stay out of your way: rendering uses a private, invisible IlluGen instance. An IlluGen you have open keeps running untouched, and nothing steals your mouse or keyboard focus.
Tools
Typical flow: project_new → node_add … → link_add … → project_validate(engine=true) → project_render.
Showcase
[Lava, underwater caustics and energy web textures rendered by IlluGen through illugen-mcp]Lava (Voronoi noise → levels → color ramp → glow), caustics (polygon fractal → caustics → ramp) and an energy
web (Voronoi edges → ramp → glow): 4 to 5 nodes each, built and rendered by the agent in about 15 seconds.
The exact graphs are in examples/demo_scenes.py.
Example prompts
How it works
- Editing happens directly on the file.
.illugenprojects are read and written losslessly (a file saved without changes is byte-identical), so offline edits are instant and safe. Node definitions come from bundled tables matching IlluGen 1.2.1. - Rendering uses IlluGen itself. The server starts a private copy of IlluGen in its own folder, hidden from the screen and the taskbar, loads the project and triggers IlluGen's own export shortcut. It follows progress through IlluGen's log and closes it when done. Your settings and open IlluGen windows are not touched.
- Errors come back to the agent. Failed exports and loading warnings are detected and returned with a screenshot, so the agent can fix the graph by itself.
Files written by the server: projects and renders where you ask, plus a scratch folder in
%LOCALAPPDATA%\illugen-mcp (override with ILLUGEN_MCP_HOME).
Updating IlluGen
The bundled node tables target IlluGen 1.2.1. After an IlluGen update, rebuild the catalog from your installation (takes a few minutes, IlluGen runs invisibly):
The new catalog is stored in %LOCALAPPDATA%\illugen-mcp\data and takes precedence over the bundled one.
FAQ
Does it work on macOS or Linux?
Not yet: rendering drives the Windows build of IlluGen. Offline editing (project_*, node_*, link_*)
is pure Python and should work elsewhere, but only Windows is tested.
Will it mess with the IlluGen I have open? No. Each render runs in its own private instance with its own configuration and recovery file.
IlluGen did not finish starting
Start IlluGen once by hand (activate the license, close the welcome screen), check the path with
illugen_status, and look at the latest log in %LOCALAPPDATA%\JangaFX\illugen\logs. If it persists,
open an issue with that log.
A render says "Nodes failed to export".
Usually a graph problem (pin type mismatch, disconnected input). The screenshot returned with the error
shows the node in warning; describe_node_type lists the expected pin types.
I changed IlluGen's keyboard shortcuts.
Supported: the server reads them from IlluGen's config.ini.
Development
Contributions are welcome: see CONTRIBUTING.md.
Disclaimer
IlluGen MCP is an independent community project. It is not affiliated with, endorsed by or supported by JangaFX. IlluGen and JangaFX are trademarks of their respective owner. You need your own licensed copy of IlluGen; this project neither includes nor modifies it.
License
Source: README.md at commit 3f92b8a
Tools
0Version history
2- v0.1.1LatestOct 15, 2026
- v0.1.0Oct 15, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts