MCP ETC Nomad
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| EOS_HOST | No | The console IP address (e.g., from Nomad Shell; not always 127.0.0.1 when MCP runs on another machine). | |
| EOS_PORT_RX | No | UDP TX Port on the console (match this to the console's OSC UDP TX Port, typically 9001). | |
| EOS_PORT_TX | No | UDP RX Port on the console (match this to the console's OSC UDP RX Port, typically 8000). | |
| EOS_PROTOCOL | No | Transport protocol: udp (default) or tcp. Use tcp for real TCP OSC (ports 3032 or 3037). | udp |
| EOS_ALLOW_LIVE | No | Allow live writes when the console is LIVE or state is unknown (default false). | false |
| EOS_REQUIRE_CONFIRM | No | Require confirm=true for live-write tools (default true). | true |
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
} |
| prompts | {
"listChanged": true
} |
| resources | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| eos_commandA | Send an Eos command-line instruction via OSC (/eos/cmd). Use for record, patch, copy, save, and any CLI-only operations. |
| eos_new_commandC | Clear the command line, then send an instruction via /eos/newcmd |
| eos_eventC | Send a console event via /eos/event (same syntax as eos_command) |
| channel_selectB | Select an Eos channel (leaves command line unterminated) |
| channel_set_levelC | Set a channel intensity (0-100) |
| channel_set_dmxB | Set a channel DMX level (0-255) |
| group_set_levelC | Set a group intensity (0-100) |
| at_set_levelA | Set level for the current OSC selection via /eos/at |
| cue_selectC | Select a cue, optionally within a cue list |
| cue_fireA | Fire a cue (does not follow GO sequencing unless using cue_go) |
| cue_goB | Press the console Go key (sequential cue advance) |
| key_pressA | Press an Eos hardkey by OSC name (e.g. 'go', 'clear', 'stop') |
| macro_fireB | Run a macro by number |
| submaster_set_levelC | Set a submaster level (0.0-1.0) |
| magic_sheet_openB | Open a magic sheet, optionally a specific view |
| get_console_stateA | Return cached console state (blind/live, user, connection) |
| get_active_cueA | Return the active cue text and completion percent from OSC cache |
| get_command_lineA | Return the current command line text from OSC cache |
| osc_resetC | Send /eos/reset to clear OSC switches and refresh implicit output |
| wait_for_oscB | Wait for an incoming OSC address pattern (timeout in ms) |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| eos-operator | System guidance for safely controlling ETCnomad/Eos via MCP |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| playback-active | Currently running cue text and completion from OSC cache |
| playback-state | Blind/live mode, OSC user, connection metadata |
TDQS
Scored across 20 tools
Several tools overlap heavily: eos_command, eos_new_command, and eos_event are easily confused, especially since eos_event is described as using 'same syntax as eos_command.' Also, cue_fire, cue_go, and key_press all relate to the GO action, while channel_set_level and at_set_level both set intensity, creating boundary ambiguity.
Naming is not chaotic and consistently uses snake_case, but conventions vary: object-first names like channel_set_level and cue_fire sit alongside verb-first names like get_console_state and wait_for_osc, with oddities like eos_command and eos_new_command that have no clear action verb. It is readable but not predictable.
20 tools is on the heavy/borderline side. The Eos Nomad control domain is fairly broad and most tools target distinct console resources, but several overlapping command/event/Go tools could be consolidated, making the count feel higher than necessary.
The set covers core console workflows well: channels, groups, cues, submasters, macros, command-line entry, key presses, and state read-back. The generic eos_command tool helps fill CLI-only gaps, though there are minor missing read-back operations such as querying submaster or channel levels directly.