WAGO PLC
Read and monitor WAGO PLC parameters over the WDA REST API.
Connector by WagoAlex · GitHub account verified by the MCP Registry
Chalk Labs
Need help deploying WAGO PLC?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
Install
Works with Claude Code, Codex, VS Code, Cursor, Windsurf, Claude Desktop. Read the repository before you give any tool access to your data.
npx agentmarket install connector/wagoalex-wago-plc-mcp-server
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this server can do and what it asks for, from its tool list, install config and code. Checked Oct 25, 2026.
- Tools
- 20 read · 7 write · 2 delete
- Secrets
- 1 (API keys, tokens or passwords)
- Install scripts
- None found
- Runs as
- Python package
Tools by what they do 29
Read from the source code; the running server may list different tools.
Read 20 · Look things up without changing anything.
describe_plcfind_methodsfind_parametersget_deviceget_enum_definitionget_featureget_file_metadataget_methodget_method_runget_parameterget_parameter_definitionget_parameter_instance
Show 8 more tools
get_parameter_referenced_instancesget_parameters_bulkget_plc_audit_loglist_method_runslist_parameter_instanceslist_plcslist_watchlistsread_watchlist
Write 7 · Create, change, send or run things.
create_filecreate_watchlistdownload_fileinvoke_methodset_parameterset_parametersupload_file
Delete 2 · Delete, drop, revoke or wipe things.
delete_method_rundelete_watchlist
Secrets and settings it asks for
Secrets: values you paste in that let it act as you.
DEFAULT_PLC_PASSWORD
Other settings (environment variables or headers).
AUDIT_LOG_FILEDEFAULT_PLC_USERNAMETRANSPORTWAGO_ALLOW_WRITESWAGO_PLC_HOSTSWAGO_TIMEOUT_SECONDS
Network hosts it talks to 6
1.2.3.4· found in codeapi.github.com· found in codegithub.com· found in codehub.docker.com· found in codeplc-gateway.plant.internal· found in coderaw.githubusercontent.com· found in code
Files it touches
/tmp/firmware-cache/tmp/verify-audit.log
Tools (29)
Read from the source code; the running server may differ. Descriptions are the server’s own words; hidden characters are shown as [U+…].
create_fileAllocate a file_id for uploading content into a file_id-typed parameter.
create_watchlistCreate a server-side watchlist of parameters for efficient repeated polling. Returns {watchlist_id, parameters: [{id, value, dataType}]} with initial values. Watchlist auto-expires after timeout_seconds of inactivity (reset on each read). Use timeout_seconds=0 for one-shot read.
delete_method_runFree a server-side run result before it expires on its own. Optional housekeeping, not required for correctness.
delete_watchlistDelete a watchlist to free server resources before timeout.
describe_plcGet capability summary for a PLC: counts + feature names. Cheap, cached.
download_fileDownload a file's content as base64. Pairs with a parameter whose dataType is file_id.
find_methodsSearch method IDs by substring/fuzzy match. Returns up to `limit` matches (default 20).
find_parametersSearch parameter IDs by substring/fuzzy match. Returns up to `limit` matches (default 20, max 255). Set writeable_only=True to filter parameters that can be written. Set user_settings_only=True to filter user-configurable parameters. Empty query returns the first N parameters alphabetically.
get_deviceGet a device resource plus the features it exposes (one call).
get_enum_definitionGet an enum definition's cases (value → stringValue). Useful to inspect an enum's full case list directly.
get_featureGet a feature plus its composition: nested features, contained parameter/method definitions (one call).
get_file_metadataHEAD a file_id — size/content-type without downloading the body.
get_methodGet method metadata with inline inArgs/outArgs signatures. One call gives the full schema needed for invoke_method.
get_method_runPoll an async method run. Use after invoke_method(wait=False) to check status.
get_parameterRead a single parameter value. Resolves enum values to human-readable labels.
Show 14 more tools
get_parameter_definitionGet a parameter's definition: writeable, userSetting, dataType, related enum — without reading its value.
get_parameter_instanceGet one class-parameter instance: its device, own parameters, and methods (one call).
get_parameter_referenced_instancesFor an instance_identity_ref-typed parameter: the class instances that reference it.
get_parameters_bulkRead one parameter from multiple PLCs in parallel — one call instead of N. requests: list of {"plc_ip": str, "parameter_id": str} Returns: list of {"plc_ip": str, "parameter_id": str, "value": ..., ...} or {"error": ...} Concurrency is bounded by WAGO_MAX_CONCURRENT_READS (default 10) so a large request list cannot overload slow PLCs (CC100 web server is easily starved). Example — read firmware version from all PLCs: [{"plc_ip": "192.168.42.110", "parameter_id": "0-0-version-firmwareversion"}, ...]
get_plc_audit_logReturn recent audit log entries, newest first. plc_ip: filter to a specific PLC IP (empty = all PLCs). action: filter by action type — register_plc, deregister_plc, set_parameters, invoke_method (empty = all actions). limit: max entries to return (default 50, max 500). Each entry contains: ts, action, plc, agent, result, prev (chain hash), plus action-specific fields.
invoke_methodInvoke a method. Pass `arguments` as a flat dict {name: value}. wait=True (default): blocks until done/error. Returns {status, run_id, out_args}. wait=False: returns immediately with run_id; poll with get_method_run. Example: invoke_method(plc_ip, "0-0-ntpclient-updatetime")
list_method_runsList past runs of a method still held server-side (audit/inspection use).
list_parameter_instancesList instance numbers of a class-typed parameter (dataType 'instantiations'). Use get_parameter_instance for detail.
list_plcsList all reachable WAGO PLCs. Use first to find a target IP.
list_watchlistsList watchlist IDs still active server-side (e.g. after a restart, to find orphans).
read_watchlistRead current values from an existing watchlist. Resets the timeout.
set_parameterWrite a single parameter. Prefer set_parameters for more than one — same PATCH-per-call cost either way.
set_parametersWrite multiple parameters in one PATCH call. Pre-validates writeability from cache. parameters: list of {"id": str, "value": any} Example: [{"id": "0-0-systemtime-local-now", "value": "2026-05-13T14:30:00"}]
upload_fileUpload whole file content (base64-encoded) to a file_id from create_file.
Signals
- Stars
- 4
- Forks
- 1
- Open issues
- 0
- Weekly downloads
- 96
- Last commit
- Sep 25, 2026 (1 month ago)
- Last release
- Sep 21, 2026 (1 month ago)
- Last package publish
- Sep 21, 2026 (1 month ago)
From GitHub (fetched Oct 24, 2026) and the package registry.
Details
- Registry name
io.github.WagoAlex/wago-plc-mcp-server- Version
- 2.4.4
- Auth
- API key
- Packages
- pypi wago-plc-mcp-serveroci
docker.io/wagoalex/wago-plc-mcp-server:2.4.4 - License
- License unknown
- Repository
- github.com/WagoAlex/wago-plc-mcp-server
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get WAGO PLC running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
WAGO PLC MCP server. Agent Mart. https://agentmart.dev/connectors/wagoalex-wago-plc-mcp-server (last updated 2026-10-24)