Mmcp.market

WAGO PLC MCP server

by WagoAlex·io.github.WagoAlex/wago-plc-mcp-server·v2.4.3

Read and monitor WAGO PLC parameters over the WDA REST API. Read-only unless writes are allowed.

B83/100grade B
What users say
No reviews yet
Be the first
Safety scan
B83/100

full report

Adoption
Growing

3 stars

Reviews

Write one

Nobody has reviewed WAGO PLC yet.

If you have run it, two minutes of your experience saves the next person an afternoon.

WAGO PLC tools (29, 8 write)

write = sends, deletes, buys or posts

Read from the package source without running it. The installed server may list more.

  • create_filewrite action

    Allocate a file_id for uploading content into a file_id-typed parameter.

  • create_watchlistwrite action

    Create a server-side watchlist of parameters for efficient repeated polling.

  • delete_method_runwrite action

    Free a server-side run result before it expires on its own. Optional housekeeping, not required for correctness.

  • delete_watchlistwrite action

    Delete a watchlist to free server resources before timeout.

  • describe_plc

    Get capability summary for a PLC: counts + feature names. Cheap, cached.

  • download_file

    Download a file's content as base64. Pairs with a parameter whose dataType is file_id.

  • find_methods

    Search method IDs by substring/fuzzy match. Returns up to `limit` matches (default 20).

  • find_parameters

    Search parameter IDs by substring/fuzzy match. Returns up to `limit` matches (default 20, max 255).

  • get_device

    Get a device resource plus the features it exposes (one call).

  • get_enum_definition

    Get an enum definition's cases (value → stringValue). Useful to inspect an enum's full case list directly.

  • get_feature

    Get a feature plus its composition: nested features, contained parameter/method definitions (one call).

  • get_file_metadata

    HEAD a file_id — size/content-type without downloading the body.

  • get_method

    Get method metadata with inline inArgs/outArgs signatures. One call gives the full schema needed for invoke_method.

  • get_method_runwrite action

    Poll an async method run. Use after invoke_method(wait=False) to check status.

  • get_parameter

    Read a single parameter value. Resolves enum values to human-readable labels.

  • get_parameter_definition

    Get a parameter's definition: writeable, userSetting, dataType, related enum — without reading its value.

  • get_parameter_instance

    Get one class-parameter instance: its device, own parameters, and methods (one call).

  • get_parameter_referenced_instances

    For an instance_identity_ref-typed parameter: the class instances that reference it.

  • get_parameters_bulk

    Read one parameter from multiple PLCs in parallel — one call instead of N.

  • get_plc_audit_log

    Return recent audit log entries, newest first.

  • invoke_method

    Invoke a method. Pass `arguments` as a flat dict {name: value}.

  • list_method_runs

    List past runs of a method still held server-side (audit/inspection use).

  • list_parameter_instances

    List instance numbers of a class-typed parameter (dataType 'instantiations'). Use get_parameter_instance for detail.

  • list_plcs

    List all reachable WAGO PLCs. Use first to find a target IP.

  • list_watchlists

    List watchlist IDs still active server-side (e.g. after a restart, to find orphans).

  • read_watchlist

    Read current values from an existing watchlist. Resets the timeout.

  • set_parameterwrite action

    Write a single parameter. Prefer set_parameters for more than one — same PATCH-per-call cost either way.

  • set_parameterswrite action

    Write multiple parameters in one PATCH call. Pre-validates writeability from cache.

  • upload_filewrite action

    Upload whole file content (base64-encoded) to a file_id from create_file.

Public scan report

scanner v0.1.5 · 2026-09-19 · same rubric, same numbers if you re-run it

no findings
  • Code scan13 source files scanned25/25
  • Live reliabilityno gateway calls yet and no remote to proben/a
  • Tool poisoningtools not inspected (local package is not executed); not countedn/a
  • Auth qualitystatic API keys via environment variables6/15
  • Maintenancelast push 1 days ago15/15
  • Maintainer identityregistry namespace matches repository owner; GitHub account older than a year8/10
Overall 83/100. Components that don't apply are left out of the denominator. Any critical finding is an F.RubricAppeal a findingJSON

Install directly

claude mcp add wago-plc-mcp-server -- uvx wago-plc-mcp-server
Add to Cursor

WAGO PLC: common questions

Is WAGO PLC MCP server safe?
Mostly: it is graded B (83/100). Read the WAGO PLC safety report
How do I install WAGO PLC?
It runs on your machine. Copy the Claude Code, Claude Desktop or Cursor config from the install section.
Does WAGO PLC need an API key?
Yes. The registry entry asks for DEFAULT_PLC_PASSWORD.
Is WAGO PLC maintained?
The last commit was 2 days ago (2026-09-18). The latest release is v2.4.3.

More from WagoAlex