PLC Cloud Sim — LAD/SCL simulation over MCP

io.github.tia-forgePublished by GitHub account tia-forgev0.1.1Updated Oct 25, 2026

Cloud PLC simulator: validate and step-run LAD/SCL programs, run scenarios, return PASS/FAIL.

VerifiedStreamable HTTPWeb executableCloud & InfrastructureDeveloper Tools

Overview

AI-generated overview

A hosted cloud PLC simulator that lets an assistant validate and step-run LAD and SCL programs and run scenarios with PASS/FAIL reports, without TIA Portal.

What you can do
Validate Ladder (LAD) documents and SCL source, reporting parse and validation results before running anything. Step-run LAD and SCL programs across scan cycles with given inputs, then read back variables and diagnostics. Run declarative scenarios — cases, exhaustive matrices, seeded fuzz or always-invariants — and get a PASS/FAIL report. Execution is deterministic, so a scenario can serve as a regression test.
When to use it
Useful when you want an assistant to check PLC logic or SCL code and simulate its behaviour without installing TIA Portal, or to turn a scenario into a repeatable regression test.
Requirements
Remote Streamable HTTP endpoint at tia.hubwiz.com/sim/mcp. A bearer API key is required in the Authorization header, obtained from the provider's dashboard via WeChat login. Calls are metered: handshake requests are free and each tools/call costs one call.
Before you install
The program text (LadDoc or SCL) is uploaded to a third-party hosted service, so avoid it if policy forbids sending code off-site. The key is a paid credential: 100 free calls, then top-ups at 1000 calls for ¥9. The service is independent of Siemens and not open source.

Installation

In SourceWeft

  1. Open PLC Cloud Sim — LAD/SCL simulation over MCP in the dashboard and add it to a workspace.
  2. Connect Authorization token credentials. They are stored privately and never shown on public pages.
  3. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/io.github.tia-forge%2Fplc-cloud-sim/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "plc-cloud-sim-lad-scl-simulation-over": {
      "type": "http",
      "url": "https://tia.hubwiz.com/sim/mcp",
      "headers": {
        "Authorization": "Bearer <YOUR_TOKEN>"
      }
    }
  }
}

README

PLC Cloud Sim — MCP server for LAD / SCL simulation

Cloud PLC simulator over MCP by 汇智网 (hubwiz.com). Validate and step-run Ladder (LAD) and SCL programs, run scenario acceptance, get a PASS/FAIL report — without installing TIA Portal.

This repository is documentation and client configuration only. The simulator runs as a hosted service at tia.hubwiz.com; its implementation is not open source.

  • Endpoint: https://tia.hubwiz.com/sim/mcp
  • Transport: Streamable HTTP (stateless, POST JSON-RPC)
  • Auth: Authorization: Bearer sim_live_… (the X-API-Key header is also accepted)
  • Dashboard / API keys: https://tia.hubwiz.com/sim
  • Registry entry: io.github.tia-forge/plc-cloud-sim (official MCP Registry)

What it does

ToolPurpose
lad_validateValidate one or more LadDoc ladder documents
lad_simulateRun scan cycles with given inputs, read back variables and diagnostics
lad_run_scenarioRun a declarative scenario (cases / exhaustive matrix / seeded fuzz / always invariants)
scl_validateParse and validate SCL source
scl_simulateStep-run SCL across scan cycles and read variables back
scl_run_scenarioRun a declarative SCL scenario

Semantics match a real PLC scan: contacts, coils, timers/counters, FC/FB calls, jumps, and IF/CASE/FOR/WHILE for SCL. Execution is deterministic and reproducible — the same input yields the same result, so a scenario is usable as a regression test.

Quick start

Claude Code

bash
claude mcp add --transport http sim-cloud https://tia.hubwiz.com/sim/mcp \  --header "Authorization: Bearer sim_live_YOUR_KEY"claude mcp list

Cursor / VS Code / any JSON-configured client

json
{  "mcpServers": {    "sim-cloud": {      "url": "https://tia.hubwiz.com/sim/mcp",      "headers": { "Authorization": "Bearer sim_live_YOUR_KEY" }    }  }}

Ask the agent for something

Validate this SCL block, then run it for two scans with Start=false then Start=true,and tell me the final value of Motor.

Pricing

  • WeChat login on the dashboard issues a key immediately: 100 calls free, no signup form.
  • Top-ups: 1000 calls for ¥9, one-off — no subscription, no monthly fee.
  • Handshake requests (initialize, tools/list) are free; each tools/call costs 1 call.

Notes

  • No TIA Portal installation is required — the program text (LadDoc / SCL) is sent to the service. If your policy forbids uploading program text, use an on-premises path instead (see TiaLink for the on-machine gateway).
  • Related services: LadDoc Cloud (LadDoc → SimaticML), TIA Portal ladder examples.
  • Documentation license: CC BY 4.0. "TIA Portal", "SIMATIC" and "S7" are trademarks of Siemens AG; this service is an independent third-party tool, not affiliated with or endorsed by Siemens.

Source: README.md at commit 0180de8

Tools

0
This server asks for a credential such as an API key, so SourceWeft could not read its tools without one and has not indexed them.

Version history

1
  1. v0.1.1LatestOct 25, 2026

Score

75% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts

    Declare a license in the repository or the registry entry.