vmix-workbench-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| VMIX_API_URL | No | The fixed control target URL of the vMix API. | http://127.0.0.1:8088/api/ |
| VMIX_POLL_MS | No | Polling interval for managed triggers, in milliseconds. | 250 |
| VMIX_DATA_DIR | No | Directory used for configuration and operation records. | .vmix-mcp |
| VMIX_READ_ONLY | No | If true, write operations are disabled; dry-run is still allowed. | false |
| VMIX_ASSET_ROOT | No | Actual directory where MCP-hosted assets are copied to. Defaults to a data-directory subdirectory named 'assets'. | |
| VMIX_TIMEOUT_MS | No | Timeout for complete HTTP responses, in milliseconds. | 5000 |
| VMIX_API_PASSWORD | No | Optional password for Basic Authorization with the vMix API. | |
| VMIX_API_USERNAME | No | Optional username for Basic Authorization with the vMix API. | |
| VMIX_SOURCE_ROOTS | No | JSON array of asset directories that are allowed to be read. Defaults to the startup directory. | |
| VMIX_VISIBLE_ASSET_ROOT | No | Directory path visible to vMix (e.g., a Windows path). Defaults to the same value as VMIX_ASSET_ROOT. |
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
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| vmix_inspectA | Read real vMix inputs, GUIDs, title fields, layers, program, preview and overlays. |
| vmix_operation_getA | Get persisted operation status. Same request_id is never executed twice, including after restart. |
| vmix_actionsA | Run up to 20 typed actions in order. Supports preview, transition, overlay, text/image, playback/audio, layers, native transition buttons, GT stinger binding and replay. No arbitrary API function. |
| vmix_title_updateA | Update named text fields on a title input. Inspect exact field names first (GT uses .Text). All fields validate before writing; multiple updates are ordered, not a frame-atomic transaction. |
| vmix_asset_stageA | Copy a local media file into the configured asset directory with a SHA-256 filename. VMIX_VISIBLE_ASSET_ROOT can map a Mac-mounted Windows share. Does not import into vMix. |
| vmix_input_addA | Import a file already visible to vMix, or create a colour input. Returns discovered GUID. Use asset_stage first when bytes need copying. Does not take the input on air. |
| vmix_scene_createB | Build an off-air colour-backed scene from existing inputs, with up to 10 layers, pixel rectangles and crop. Pixel coordinates are based on the vMix preset resolution. Never removes inputs on failure. |
| vmix_scene_templateA | Build a full, two_up, quad or picture-in-picture scene. Sources must already exist. Canvas dimensions must match your vMix preset; this tool does not change output resolution. |
| vmix_transition_configureA | Configure one of the four native vMix transition buttons: effect and duration. Optionally bind a GT title input to a Stinger slot. Native writes via documented API. |
| vmix_transition_preset_saveA | Save a reusable MCP transition preset. Also use transition_configure if you want to modify a native vMix button. |
| vmix_transitionC | Take a specified input on the main program using a saved MCP transition preset; returns state confirmation. |
| vmix_trigger_saveA | Save a DISARMED MCP-managed trigger. Events are polled state changes, not native vMix triggers. playback_stopped includes manual pauses; playback_time can detect seeks. Default one-shot per arm. |
| vmix_trigger_armA | Explicitly arm/disarm a saved managed trigger. No startup/reconnect event catch-up; restarting MCP disarms all triggers. Disarming cancels pending delayed actions. |
| vmix_trigger_deleteC | Disarm and remove an MCP-managed trigger definition. |
| vmix_configurationA | List saved transition presets and MCP-managed triggers, including armed state. |
| vmix_native_setup_guideA | Produce concrete native vMix setup steps for a trigger or non-GT Stinger. Read-only: these unsupported settings are NOT written into vMix. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 16 tools
Most tools map to a distinct resource+action pair, and the descriptions are detailed enough to guide selection. The main overlaps are vmix_actions vs. vmix_transition (both can perform transitions) and vmix_scene_create vs. vmix_scene_template (both build scenes).
All tools share the vmix_ prefix and snake_case, and most follow an area_action pattern like vmix_title_update or vmix_trigger_arm. A few bare nouns (vmix_inspect, vmix_actions, vmix_transition, vmix_configuration) and noun-noun names break the otherwise consistent pattern.
16 tools is at the upper edge of acceptable for a vMix workbench covering inspection, operations, actions, scenes, transitions, triggers, assets, and setup guidance. The count is slightly heavy but each tool covers a real part of the workflow.
Core creation and control workflows are well covered, including inputs, scenes, transitions, triggers, and actions. However, there are notable lifecycle gaps: no removal/cleanup for inputs, scenes, assets, or transition presets, and scene creation is one-shot with no update path.