Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
SSYNTHGEN_PATHNoPath to the ssynthgen binary. Only needed if ssynthgen is not on PATH.

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}

Tools

Functions exposed to the LLM to take actions

NameDescription
engine_statusA

Report the path of the ssynthgen engine binary, or install help if missing.

list_examplesB

List bundled EisenScript examples with short descriptions.

get_exampleA

Return the full EisenScript source of a bundled example by name.

validate_scriptB

Check an EisenScript for syntax/parse errors without keeping geometry.

Returns 'OK' or an error message.

render_scriptA

Render EisenScript to a Wavefront OBJ mesh.

Args: script: Full EisenScript source (rules, primitives, transformations). output_path: Where to write the .obj. Empty = temp file under the system temp dir (path is returned). seed: Optional RNG seed; injected as set seed N for reproducibility. timeout: Seconds before aborting a runaway script.

Returns a summary: OBJ path, vertex/face counts, bounding box.

analyze_scriptA

Lint an EisenScript without running it.

Detects: unbalanced braces, unknown actions, primitives unsupported by this backend (torus/cone/tube/helix/circle/point), recursion cycles with no maxdepth (timeout risk), unused rules. Returns a human-readable report.

eisenscript_referenceA

EisenScript language cheat sheet: primitives, transformations, modifiers, preprocessor, and timeout-avoidance tips (libssynth backend).

export_mesh_toolA

Convert a rendered OBJ to another mesh format (stl, glb, gltf, ply, off).

Requires the optional dependency trimesh (uv add trimesh).

preview_scriptB

Render an EisenScript and return a PNG preview image path (plus the OBJ).

Uses matplotlib Agg (CPU only, no GPU). Group colors from the grammar are preserved when present.

preview_objA

Render an existing OBJ file to a PNG preview (matplotlib Agg, CPU only).

render_galleryA

Batch-render every bundled example to OBJ (+ PNG) in a directory.

Useful for building a visual gallery or checking regressions.

send_to_unrealA

Import a rendered OBJ into a running Unreal Engine editor via TCP bridge.

Requires Unreal running with the MCP plugin listening on 127.0.0.1:55557. The asset lands in the content browser at dest_path (default /Game/Imported).

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.7/5.0

Scored across 12 tools

Disambiguation4/5

Most tools target clear, distinct pipeline stages (validate → analyze → render → preview → export → import). The closest overlap is validate_script vs analyze_script and preview_script vs render_script, but the descriptions explicitly distinguish them (syntax errors vs lint report; PNG preview vs OBJ output).

Naming Consistency4/5

The set largely follows a snake_case verb_noun pattern (preview_script, render_script, get_example, list_examples, validate_script). A few deviate: engine_status and eisenscript_reference are noun-first, and export_mesh_tool appends a redundant '_tool' suffix.

Tool Count5/5

Twelve tools is well within the sweet spot and every tool maps to a distinct step in the EisenScript workflow, with no obvious filler. Setup, authoring, validation, rendering, and output tools each earn their place.

Completeness4/5

The lifecycle is well covered: discovery (list/get examples, reference), authoring support (validate/analyze), rendering (render/preview/gallery), and output (export_mesh_tool, send_to_unreal). Minor gaps: no tool to inspect existing OBJ stats or manage/clean up rendered temp files, which agents must work around manually.

Maintenance

ActivityMaintained
ResponsivenessNo issues