Talk to Your PLC in Plain English: An Open-Source MCP Server for WAGO Devices

If you’ve ever wished you could ask your PLC “which network interfaces are active?” and just get an answer - without looking
up parameter IDs, writing a script, or opening the web interface - this project might interest you.

We built wago-plc-mcp-server: an open-source MCP (Model Context Protocol) server that connects WAGO PLCs directly to AI
assistants like Claude. It bridges the WDA REST API to a standard protocol that LLM-based tools understand, so you can query,
configure, and monitor your WAGO devices in plain language.

What does that look like in practice?

You can ask things like:

  • “What WAGO PLCs are online right now?”
  • “Set the NTP server on the PFC200 to 192.168.1.1.”
  • “Run the restart-webserver method on all PFCs in the fleet.”
  • “Watch these 5 parameters and tell me when any of them change.”

The AI assistant handles parameter discovery, pagination, type validation, and method invocation - you describe what you
want.

Supported hardware

CC100, PFC100 G2, PFC200 G2, PFC300, Edge Controller, WP400, TP600 - any device running WDA firmware build 28 or later.

Get started

The project is open source on GitHub. Clone it, point it at your test rack, and ask your first question in under 10 minutes.

or use Docker:

docker run -d
–name wmcp
–network host
-e WAGO_PLC_HOSTS=192.168.42.110
-e DEFAULT_PLC_USERNAME=admin
-e DEFAULT_PLC_PASSWORD=wago
-e HOST=0.0.0.0
-e PORT=6042
-e TRANSPORT=streamable-http
-v $(pwd)/data:/app/data
wagoalex/wago-plc-mcp-server:latest

For a multi-PLC setup just extend the hosts list:

-e WAGO_PLC_HOSTS=192.168.42.110,192.168.42.118,192.168.42.119

Docker image: wagoalex/wago-plc-mcp-server:latest


Curious what questions your fleet would answer?

Drop a comment below - happy to discuss real-world use cases or help you get
it running on your setup.

Awesome !
I need to find some time to try this out.