Reference for the designer_action MCP tool: navigation, visual targeting, runtime control, and dynamic tab actions.
AI Integration → designer_action Reference
|
New in 10.1.5. Three visual-targeting actions added ( |
The designer_action MCP tool performs every non-object-mutation operation against the live Designer: navigation between tabs, finding objects, targeting a specific row for visual attention, starting and stopping the runtime, and dispatching dynamic tab actions the active tab advertises.
Use this reference together with MCP SDK Reference for the transport model and Claude Code MCP Setup for setup.
designer_action(
action: string, // one of the core actions below, or any tabActions value
target: string // meaning depends on action
) -> object
|
When the server does not recognize the action, the response includes a validActions array with the core list. Dynamic tab actions are discovered through tool responses (for example, the tabActions array returned by get_objects).
| Action | Target format | Purpose |
|---|---|---|
navigate | Section.Tab, tab name, table name, or Table.Object | Go to any module, table, or object. Use for info pages (AlarmsGroups, DataExplorer.MQTTTools, Monitors) and to focus a specific object. Table-name form matches the table_type = Section + Tab convention used elsewhere in the API. |
select_row | TableType.ObjectName | Select a specific row in a config grid by name and scroll it into view. Visual only, no mutation. |
scroll | TableType.ObjectName | Alias of select_row. |
expand | TreeName.path/segments | Expand a tree node, select it, scroll into view. V1 supports AssetTree only. Library and symbol trees return UNSUPPORTED_TREE. |
find_object | Object name | Open the Find Results panel with every location where the object is referenced. |
find_next | – | Step to the next location in the Find Results panel. |
start_runtime | – | Start the runtime for the current solution. |
stop_runtime | – | Stop the runtime. |
hot_reload | – | Reload the active configuration into the running runtime. |
Each Designer tab advertises extra actions in the tabActions array on get_objects responses. Call designer_action with any advertised value. Common examples:
| Action | Target format | Example |
|---|---|---|
logon | user:password | designer_action('logon', 'admin:tatsoft') |
set_theme | Theme name | designer_action('set_theme', 'Dark') |
set_language | BCP-47 code | designer_action('set_language', 'pt-BR') |
builtin_broker | start or stop | designer_action('builtin_broker', 'start') |
build | Build label | designer_action('build', 'v2.1 release') |
go_to_folder | Folder path | designer_action('go_to_folder', 'Line1/Tank1') |
Unknown dynamic actions return a clear error with the current tab's tabActions list, so the client always has a recovery path.
# Navigate to an info page
designer_action('navigate', 'DataExplorer.MQTTTools')
designer_action('navigate', 'AlarmsMonitor')
# Navigate to a specific object
designer_action('navigate', 'Tag.Line1/Tank1/Level')
designer_action('navigate', 'Display.MainPage')
# Navigate by table name (Section + Tab concatenated — same convention as table_type)
designer_action('navigate', 'UnsTagProviders')
designer_action('navigate', 'AlarmsItems')
designer_action('navigate', 'DevicesChannels')
# Navigate via the UnifiedNamespace public alias
designer_action('navigate', 'UnifiedNamespace.TagProviders')
# Target a config grid row (no mutation)
designer_action('select_row', 'UnsTags.Plant1/Temperature')
designer_action('select_row', 'AlarmsItems.HighTemp')
designer_action('select_row', 'DevicesChannels.Modbus1')
# Expand an AssetTree path
designer_action('expand', 'AssetTree.Plant1/Motor1')
designer_action('expand', 'AssetTree.Plant1/Tank2/Inlet')
# Find references
designer_action('find_object', 'Tag.Folder1/Level')
designer_action('find_next')
# Runtime control
designer_action('start_runtime')
designer_action('stop_runtime')
designer_action('hot_reload')
# Dynamic tab actions (from tabActions)
designer_action('set_theme', 'Dark')
designer_action('set_language', 'pt-BR')
designer_action('builtin_broker', 'start')
|
| Code | When | Recovery |
|---|---|---|
MISSING_PARAMETER | Target omitted for an action that needs one. | Response includes an examples array. Retry with a valid target. |
INVALID_PARAMETER | Target has the wrong format (for example, no TableType. prefix on select_row). | Response includes an examples array with the correct format. |
ROW_NOT_FOUND | select_row target exists neither as a row name nor as a folder path. | Check spelling. Use get_objects to list the table contents. |
UNSUPPORTED_TREE | expand target names a tree other than AssetTree. | V1 supports AssetTree only. Library and symbol trees are a future extension. |
INVALID_ACTION | Action is neither a core action nor an advertised tab action. | Response includes the validActions list and, when available, the current tab's tabActions. |