Skip to main content
Glama
Svel26

Sigmatek LASAL MCP Server

by Svel26

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
LASAL_CLASS2_EXENoFull path to Lasal2.exe (Defaults to C:\Program Files (x86)\Sigmatek\Lasal\Class2\Bin\Lasal2.exe)C:\Program Files (x86)\Sigmatek\Lasal\Class2\Bin\Lasal2.exe
LASAL_VISUDESIGNER_EXENoFull path to VISUDesigner.exe (Defaults to C:\Program Files\Sigmatek\Lasal\VISUDesigner\VISUDesigner.exe)C:\Program Files\Sigmatek\Lasal\VISUDesigner\VISUDesigner.exe

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
select_projectA

Set the active LASAL project by its full path. All subsequent tools will operate on this project.

open_visudesignerA

Open VISUDesigner with a station from the active project. Omit lcp_path to see available stations.

close_visudesignerA

Close VISUDesigner (kills the process).

open_class2B

Open LASAL CLASS 2 with the active project's .lsm file.

close_class2A

Close LASAL CLASS 2 (kills the process).

inspect_projectA

Parse a LASAL CLASS 2 project (.lcp) and return a complete structural inventory: all classes with their Server/Client channels, all networks with their objects and connections. Use this before making any changes to understand what exists and how things are connected.

inspect_visu_projectA

Read a VISUDesigner (.lvp) project's current state from disk: stations (connection targets), datapoints (HMI-visible PLC values with types), languages, text list names, and schemes. Use this before apply_visu_changes to understand what already exists.

read_class_sourceA

Return the full source of a CLASS 2 class (.st file). Use this to read method implementations, variable declarations, and logic before modifying a class.

write_class_sourceA

Write the full source of a CLASS 2 class back to its .st file (and optionally its .h header). Use this after read_class_source to apply code changes — method bodies, variable declarations, logic — directly to the file. The IDE must be closed; use close_class2 first if needed. Content must be latin1-compatible.

set_target_ipA

Change the online connection target for a station in the project's .lss file. Surgically updates only the TCPIP element, preserving all other file content. Use before compile_project / download_project when targeting a different device.

apply_project_changesA

Apply structural changes to a LASAL CLASS 2 project. Channel operations (add/remove/rename_server, add/remove/rename_client) edit .st files directly and cascade to all .lcn network files automatically. Network operations (create/delete/rename_network, add/remove/rename_object, create/delete_connection, set_init_value, delete_class) run via Lasal2.exe batch script. The IDE is killed before any changes are made.

compile_projectA

Compile the active LASAL CLASS 2 project. Kills any open CLASS 2 instance first. Returns compiler errors and warnings from the log.

download_projectA

Download the compiled CLASS 2 project to a PLC over the Sigmatek online protocol (TCP port 1954). Uses the project's saved connection if none is specified.

get_plc_stateA

Query the runtime state of a PLC (e.g. Running, Stopped, Offline). Uses the project's saved connection if none is specified.

read_plc_valuesA

Read live channel values from a running PLC. Opens a connection, reads all requested channels, then closes the connection. Each channel is specified as 'ObjectName.ChannelName'.

write_plc_valuesA

Write values to channels on a running PLC. Opens a connection, writes all values, then closes the connection. Each channel is specified as 'ObjectName.ChannelName'.

start_plcB

Start the running project on the PLC. Uses the project's saved connection if none is specified.

stop_plcA

Stop the running project on the PLC. Uses the project's saved connection if none is specified.

apply_visu_changesA

Apply changes to a VISUDesigner (.lvp) project using the headless VISUDesigner API. Kills any running VISUDesigner first, runs the operations as a Python 3.12 script, then saves and closes. Supports: update_all_stations, update_station (single station by number), publish, text list/text management (add/remove/change/set_revisions), CSV import/export for translations, datapoint/datatype property editing, scheme management (add/remove/configure entries), media items (images, video, audio, docs, fonts), code modules, and HMI download. Run 'update_all_stations' or 'update_station' after CLASS 2 channel changes to sync datapoints into the VISUDesigner project.

download_visu_projectA

Download a VISUDesigner (.lvp) project to an HMI device. Does not save the project — use apply_visu_changes with a 'download' operation if you need to make changes and deploy in one step.

deploy_allA

Run the full deploy pipeline in one call: compile CLASS 2 → download to PLC → update VISUDesigner stations → optionally download visu to HMI. Each step is skipped if its flag is false. Stops immediately on any failure and reports which step failed. Use after making CLASS 2 or VISUDesigner changes to push everything to the target hardware.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Svel26/Lasal-MCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server