Skip to main content
Glama
Karylcode
by Karylcode

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
CASCADEUR_PLUS_URLNoEnvironment of the proxy; its port is passed to the in-app server when the proxy starts it.http://127.0.0.1:48766
CASCADEUR_OFFICIAL_URLNoEnvironment of the proxy.http://127.0.0.1:8765

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
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
run_pythonA

Run Python inside Cascadeur on the GUI thread with csc, app, scene (domain scene), view_scene and ui in scope. Returns stdout and the value of a lone expression or of a variable named result. scene.modify*/edit return False when their callback failed; check it.

get_scene_infoB

Summarize the current scene: name/path, frames, object counts by type, selection, rig/animation behaviours, license flags.

get_object_infoB

Describe objects by exact or partial name: type, id and behaviours with their property names.

screenshotA

Capture a Cascadeur window (or one element by ref) as an image. window_units_per_pixel converts image pixels to the window coordinates used by ui_click x/y.

ui_treeA

List open windows and on-screen UI elements (text, tooltip, actionId, type, rect, clickable/input flags) with refs for the other ui_* tools.

ui_clickA

Click like a real user (synthesized mouse events) on an element by ref or query, or at window coordinates x/y. Supports right/middle button, double click and modifiers.

ui_dragA

Drag with the mouse like a user: press at the start, move in steps (button held), release at the end. Start: object (scene object name, projected into the 3D viewport), ref, query or window x/y. End: to_x/to_y or offset dx/dy in window coordinates. Each step runs separately so Cascadeur updates between moves (e.g. AutoPosing while dragging a control point). Returns the actual start/end points.

project_pointA

Project scene objects (by name) to main-window coordinates in the 3D viewport, for ui_click/ui_drag x/y. Uses the viewport camera and a 30 degree vertical FOV (verified for Cascadeur 2026.2.3).

ui_hoverB

Move the mouse over an element or point (shows tooltips, hover menus).

ui_keyB

Press keys or shortcuts, space-separated combos, e.g. 'ctrl+s', 'Escape', 'ctrl+a Delete', 'F'.

ui_typeA

Type text into the focused element, or focus an element by ref/query first. replace clears it; submit presses Enter.

ui_set_propertyA

Set a QML property on an element (e.g. checked, value, text, currentIndex). Bypasses input handlers; prefer ui_click when possible.

ui_invokeA

Invoke a no-argument QML method or signal on an element, e.g. 'clicked', 'toggle', 'open', 'close'. Useful when an element cannot be clicked on screen.

dialogsA

List visible dialogs/popups and secondary windows with their texts and buttons (as refs).

list_actionsC

List Cascadeur action keys (actionId) found in the UI, e.g. 'Commands.Rig mode.On', with labels.

call_actionB

Trigger a Cascadeur action by key via ActionManager.call_action, exactly like its toolbar button or menu item.

enter_rig_modeA

Enter Cascadeur's Rig mode using its own rig_mode.on entry points (run_after_import for a freshly imported model). Required before Quick Rigging's Add rig elements / Generate rig: without it Cascadeur crashes. Runs on the scene idle event like the official script server.

get_logB

Read the tail of Cascadeur's log file (errors and Python tracebacks land here), optionally filtered.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

B3.4/5.0

Scored across 18 tools

Disambiguation4/5

Most tools have clearly distinct purposes, and the split between action control, scene introspection, and UI automation is understandable. Minor overlap exists between ui_click vs ui_invoke/ui_set_property and between dialogs vs ui_tree, but the descriptions give enough guidance to choose correctly.

Naming Consistency3/5

Most tools follow a readable verb_noun pattern such as call_action, get_scene_info, and ui_click. However, several names are noun-only or resource-like (screenshot, dialogs, ui_tree), and the ui_* prefix mixes action tools with introspection tools, so the convention is not fully predictable.

Tool Count4/5

At 18 tools the set is slightly above the typical 3-15 range, but the broad surface (actions, scene introspection, UI automation, Python execution) justifies most tools. No tool is obviously redundant, and the UI family is grouped coherently.

Completeness4/5

The set covers action discovery and execution, rig mode setup, scene/object introspection, screenshots, dialogs, and full mouse/keyboard/QML manipulation, with run_python as a broad escape hatch. Direct high-level animation or rig-generation operations are not first-class tools, but they can be composed through actions, UI automation, or Python.

Maintenance

ActivityMaintained
ResponsivenessNo issues