2026 Grondige Analyse

Elke MCP Server voor TIA Portal,
Geanalyseerd en Vergeleken

Vier projecten verbinden AI met Siemens TIA Portal via MCP. We hebben hun broncode, architectuur en beveiliging geanalyseerd. Eén is gebouwd voor productie, drie zijn open-source experimenten. Hier is de volledige technische uitsplitsing.

Het MCP Landschap voor TIA Portal

Het Model Context Protocol (MCP) stelt AI-agents in staat om direct te communiceren met engineering tools. Voor Siemens TIA Portal bestaan er vandaag vier implementaties.

T-IA Connect

Commercieel · Productieniveau

MCP bridge van industriële kwaliteit met 369 tools die de volledige TIA Portal levenscyclus dekken: projectbeheer, block CRUD, tag-beheer, HMI, online operaties, PLCSim simulatie en meer. Actieve ontwikkeling, professionele ondersteuning.

Openness API (V17–V21)

heilingbrunner/tiaportal-mcp

Open Source · VS Code Extensie

VS Code extensie met 30 MCP tools voor projectbrowsing, block import/export, compilatie en het nieuwe V20 documentformaat. Geen tag-beheer, geen HMI, geen online operaties. Inactief sinds september 2025.

Openness API (alleen V20)

gangsterke/Tia-Portal-MCP-server

Open Source · Proof of Concept

Minimaal prototype met 12 read-only tools voor projectbrowsing en het lezen van tags. Gebouwd in één dag, nooit bijgewerkt. V18 hard-coded, geen foutafhandeling, geen beveiliging.

Openness API (alleen V18)

cadugrillo/s7-mcp-bridge

Open Source · Runtime Monitor

Andere aanpak: verbindt direct met de PLC Web API (HTTPS) zonder TIA Portal. 21 tools voor runtime monitoring, tag lezen/schrijven en CPU controle. Geen engineering mogelijkheden.

PLC Web API (S7-1200/1500)

Broncode Analyse

We hebben de broncode van elk project beoordeeld om de architectuur, veiligheid en bruikbaarheid in de praktijk te evalueren. Dit is wat we hebben gevonden.

heilingbrunner/tiaportal-mcp — De Meest Geavanceerde Open-Source Optie

30 MCP tools · Alleen V20 · Inactief sinds september 2025

Dit is de meest serieuze open-source concurrent. Ontwikkeld gedurende ongeveer 4 maanden (juni–september 2025) door 3 bijdragers, met 32 sterren en 11 forks op GitHub. Ook gedistribueerd als een VS Code extensie. Het project is echter al meer dan 6 maanden inactief.

Technische Stack

Pure C# .NET Framework 4.8 (geen Node.js tussenlaag). Gebruikt de officiële .NET MCP SDK (ModelContextProtocol v0.3.0-preview). Transport uitsluitend via stdio (geen HTTP/SSE). Verwijst naar Siemens V20 NuGet pakketten — een modernere aanpak dan dynamisch DLL laden, maar gebonden aan één enkele versie.

30 MCP Tools — Wat Ze Dekken

De tools dekken 7 categorieën: verbindingsbeheer (Connect, Disconnect, GetState), projectoperaties (Open, Save, Close, GetProjectTree), hardware-inspectie (GetDevices, GetDeviceInfo), softwarebeheer (GetSoftwareTree, CompileSoftware), block-operaties (GetBlocks, ImportBlock, ExportBlock), UDT-afhandeling (GetTypes, ImportType, ExportType) en ondersteuning voor het V20 documentformaat (ExportAsDocuments, ImportFromDocuments).

De ondersteuning voor het V20 documentformaat (.s7dcl/.s7res) is een opvallende feature — dit is een nieuw Siemens formaat waarmee blocks in een gestructureerd, mensleesbaar formaat kunnen worden geëxporteerd.

Wat Het Niet Doet

Geen tag-beheer — kan geen tags lezen, schrijven, aanmaken of importeren/exporteren
Geen HMI/WinCC ondersteuning — geen schermen, verbindingen, alarmen of HMI tags
Geen online operaties — geen GoOnline, Download of real-time monitoring
Geen ondersteuning voor PLCSim simulatie
Geen block-generatie — kan geen nieuwe blocks aanmaken in SCL, LAD, FBD of GRAPH
Geen netwerk/subnet beheer of bibliotheekondersteuning
Geen watch tables of force tables
Geen job-systeem — alle operaties zijn synchroon en blokkerend

Technische Problemen

Geen STA Threading

Dit is het meest kritieke punt. De Siemens Openness API gebruikt COM-objecten die de Single-Threaded Apartment (STA) modus vereisen. Zonder correcte STA dispatching kunnen COM-aanroepen geruisloos gegevens corrumperen of willekeurig crashen onder gelijktijdige belasting. Dit maakt de tool onbetrouwbaar voor geautomatiseerde pipelines.

Monolithische Architectuur

Portal.cs bevat 2.300 regels en McpServer.cs plaatst alle tools in één enkel bestand. Dit maakt de codebase moeilijk te onderhouden en uit te breiden.

V20 Hard-coded

Hoewel het een --tia-major-version CLI argument accepteert, zijn de NuGet referenties hard-coded op V20. De meeste fabrieken draaien in de praktijk nog op V17 of V18.

Vereist Altijd GUI

Geen headless-modus — TIA Portal must be manually opened first. Cannot be used in CI/CD pipelines.

Proces Selectie

Gebruikt processes.First() — koppelt aan de eerste gevonden TIA Portal instantie. Als er meerdere instanties draaien, is er geen manier om te selecteren welke moet worden gebruikt.

~13% functionele dekking t.o.v. T-IA Connect

Met ongeveer 13% van het functionele oppervlak van T-IA Connect, is heilingbrunner de meest geavanceerde open-source optie. De ondersteuning voor het V20 documentformaat is echt nuttig. Echter, het gebrek aan STA threading, geen online operaties, geen tag-beheer en meer dan 6 maanden inactiviteit maken het ongeschikt voor productie-automatisering.

gangsterke/Tia-Portal-MCP-server — Een Eéndaagse Proof of Concept

12 MCP tools · Alleen V18 · Gebouwd in één dag, nooit bijgewerkt

Dit project is precies wat het lijkt: een proof of concept gebouwd in één dag (12 oktober 2025) en sindsdien nooit meer bijgewerkt. Ongeveer 1.260 regels code in totaal. Het toont aan dat het verbinden van MCP met TIA Portal mogelijk is, maar biedt verder niets.

Technische Stack

Architectuur met twee processen: een Node.js TypeScript laag (~400 regels) handelt het MCP protocol af, terwijl een C# .NET Framework 4.8 subproces (~860 regels in één enkele Program.cs) de Openness API aanroept. Communicatie tussen de twee processen verloopt via stdin/stdout JSON.

12 MCP Tools — Alleen-lezen

Alle tools zijn alleen-lezen: project openen/sluiten, PLC's tonen, blocks tonen (alleen hoofdniveau — geen recursie in groepen), een enkel block exporteren als XML, tag-tabellen lezen, tags zoeken, hardwareconfiguratie ophalen, projectinfo ophalen en twee OPC UA tools (interface-info exporteren/ophalen). De OPC UA ondersteuning is de enige originele feature.

De get_block_code tool is misleidend — deze geeft alleen metadata (naam, type, taal) terug, niet de werkelijke broncode.

Opmerkelijke Problemen

V18 Hard-coded

Absolute paden naar Portal V18\PublicAPI\V18\ zijn hard-coded. Geen enkele ondersteuning voor meerdere versies.

Geen STA Threading

Werkt bij toeval op .NET Framework 4.8 omdat de main thread standaard STA is, maar dit wordt niet expliciet beheerd en zal falen onder gelijktijdige belasting.

Stilzwijgend Negeren van Fouten

Lege catch blocks door de hele code — fouten worden geruisloos genegeerd. Als er iets misgaat, zul je het nooit weten.

Race Condition bij Opstarten

Gebruikt een eenvoudige setTimeout(2000ms) om te wachten tot het C# subproces start. Geen health check, geen fatsoenlijke handshake.

Nul Beveiliging

Geen authenticatie, geen pad-validatie (directory traversal is mogelijk), geen rate limiting. Nul tests, nul CI/CD, geen LICENSE bestand ondanks de claim van MIT in package.json.

~1–2% functionele dekking t.o.v. T-IA Connect

Met ongeveer 1–2% van het functionele oppervlak van T-IA Connect, is dit een minimaal proof of concept, geen tool. De enige originele bijdrage is de OPC UA interface ondersteuning. Nuttig als leerervaring, gevaarlijk voor al het andere.

cadugrillo/s7-mcp-bridge — Runtime Monitoring Zonder TIA Portal

21 MCP tools · PLC Web API · Geen engineering mogelijkheden

Dit project hanteert een fundamenteel andere aanpak: in plaats van te verbinden met TIA Portal via de Openness API, verbindt het direct met de ingebouwde Web API van de PLC (JSON-RPC over HTTPS). Er is geen Siemens software nodig — alleen een netwerkverbinding met de PLC. Dit maakt het complementair in plaats van concurrerend met de andere projecten, maar brengt serieuze veiligheidsrisico's met zich mee.

Technische Stack

Pure TypeScript/Node.js. Transport via HTTP-stream (poort 57001) of stdio. Verpakking bevat Docker multi-arch images en een Claude Desktop extensie (.mcpb). Geen Siemens afhankelijkheden — alleen fetch() aanroepen naar https://<PLC_IP>/api/jsonrpc.

21 MCP Tools — Focus op Runtime

Systeem (Api-Ping, Api-Version, Api-Browse), Authenticatie (Api-Login, Api-Logout, ChangePassword), Configuratie (List-AvailablePlcs), Gegevens (PlcProgram-Browse, PlcProgram-Read, PlcProgram-Write), CPU Controle (ReadOperatingMode, RequestChangeOperatingMode, ReadSystemTime, SetSystemTime), Diagnostiek (Alarms-Browse, Alarms-Acknowledge, DiagnosticBuffer-Browse) en Backup (Plc-CreateBackup).

Wat Het Goed Doet

Geen Siemens installatie vereist — elke machine met Node.js kan verbinding maken
Schone architectuur: één bestand per tool, goed georganiseerde codebase
Ondersteuning voor Docker en Claude Desktop extensie
Runtime monitoring zonder dat TIA Portal open hoeft te staan

Wat Gevaarlijk Is

AI Kan Productie Stoppen

Met de RequestChangeOperatingMode tool kan een AI-agent een CPU in STOP-modus zetten. Met de PlcProgram-Write tool kan deze willekeurige waarden naar PLC tags schrijven. Op een productielijn kan één AI-hallucinatie een hele fabriek stilleggen. Er is geen bevestigingsvenster, geen audit trail, geen veiligheidscontrole. By contrast, T-IA Connect deliberately disabled the start_cpu and stop_cpu commands — they return an explicit error even though the Openness API would allow it. Downloading to a physical CPU requires a manual confirmation with a detailed safety message.

TLS Wereldwijd Uitgeschakeld

De code stelt NODE_TLS_REJECT_UNAUTHORIZED = "0" in, wat TLS certificaatverificatie uitschakelt voor het gehele Node.js proces — niet alleen voor PLC verbindingen. Dit is een beveiligingslek.

Inloggegevens in Geheugen

PLC inloggegevens worden in plaintext in het geheugen opgeslagen. Geen versleuteling, geen veilige opslag.

Nul Tests

Geen testsuite voor een tool dat direct industriële apparatuur bestuurt. Inactief sinds oktober 2025.

Andere categorie — alleen runtime monitoring

De s7-mcp-bridge bezet een andere niche — runtime monitoring via PLC Web API, geen engineering. De installatievrije aanpak is interessant voor monitoring dashboards. Echter, de volledige afwezigheid van veiligheidswaarborgen bij kritieke operaties (CPU STOP, tag schrijven) maakt het gevaarlijk voor elke industriële omgeving. T-IA Connect dekt zowel engineering als runtime operaties met de juiste beveiligingen.

Waarom Productieveiligheid Belangrijk Is

Het verbinden van een AI met industriële apparatuur is geen speeltje. Dit is wat er op het spel staat.

STA Threading Is Ononderhandelbaar

De Siemens Openness API gebruikt COM-objecten die de Single-Threaded Apartment (STA) modus vereisen. Zonder correcte STA dispatching kunnen COM-aanroepen geruisloos gegevens corrumperen of willekeurig crashen onder belasting. T-IA Connect is de enige implementatie met een correcte StaDispatcher.

AI + PLC = Veiligheidskritisch

Wanneer een AI-agent tags kan schrijven, programma's kan downloaden of CPU-modi kan wijzigen, kan één hallucinatie een productielijn stilleggen. T-IA Connect gebruikt API key authenticatie, rate limiting en actielogging. De open-source alternatieven hebben nul veiligheidswaarborgen.

Ondersteuning voor Meerdere Versies Is Cruciaal

De meeste fabrieken draaien op V17 of V18 — niet op V20. Een tool die hard-coded is op één enkele TIA Portal versie sluit de meerderheid van de werkelijke installaties uit. T-IA Connect laadt dynamisch de juiste Openness DLL's voor V17 tot en met V21.

Headless-modus voor CI/CD

Geautomatiseerde pipelines moeten draaien zonder GUI. T-IA Connect kan TIA Portal in headless-modus openen, compileren, downloaden en sluiten — zonder enige gebruikersinteractie. De open-source alternatieven vereisen dat TIA Portal handmatig eerst wordt geopend.

Vergelijkingstabel Feature-voor-Feature

De volledige vergelijkingsmatrix — alle functies, alle vier de servers, in één oogopslag

Feature
T-IA Connect
heilingbrunner
gangsterke
s7-mcp-bridge
MCP Tools
369
30
12
21
TIA Portal Versies
V17, V18, V19, V20, V21
Alleen V20 (NuGet hard-coded)
Alleen V18 (pad hard-coded)
N.v.t. — geen TIA Portal nodig
Block Operaties
Volledige CRUD + SCL/LAD/FBD/GRAPH generatie
Import/Export (XML & V20 documenten)
Alleen export (hoofdniveau)
Geen
Tag-beheer
Volledige CRUD + import/export
Geen
Alleen-lezen
Runtime lezen/schrijven
HMI / WinCC
Schermen, verbindingen, alarmen, tags
Geen
Geen
Geen
Online Operaties
GoOnline, Download (confirmation required), monitoring — Run/Stop CPU disabled by design for safety
Geen
Geen
Run/Stop CPU, lezen/schrijven tags
PLCSim Simulatie
PLCSim + PLCSim Advanced
Geen
Geen
Geen
STA Threading
StaDispatcher (productieveilig)
Geen (risico op COM-crash)
Geen (risico op COM-crash)
N.v.t.
Beveiliging
API key + rate limiting + RSA licentie
Geen
Geen
Geen (TLS wereldwijd uitgeschakeld)
Transport
HTTP + SSE + stdio
Alleen stdio
Alleen stdio
HTTP-stream + stdio
REST API
417 eindpunten
Geen
Geen
Geen
Headless-modus
Ja — geen TIA Portal GUI vereist
Nee — vereist open TIA Portal
Nee — vereist open TIA Portal
N.v.t.
Laatst Bijgewerkt
Actief (wekelijkse updates)
September 2025 (6+ maanden inactief)
Oktober 2025 (in 1 dag gebouwd, nooit bijgewerkt)
Oktober 2025 (6+ maanden inactief)
Licentie
Commercieel (gratis proefperiode van 14 dagen)
MIT
MIT
MIT
CPU Safety Guardrails
start/stop CPU disabled by design, physical download requires mandatory confirmation, full audit trail
None (no online operations)
None (no online operations)
None — RequestChangeOperatingMode exposed unprotected, arbitrary tag write without confirmation

Veelgestelde Vragen

Wat is MCP en waarom is het belangrijk voor TIA Portal?

MCP (Model Context Protocol) is een open standaard van Anthropic waarmee AI-agents kunnen communiceren met externe tools. Voor TIA Portal betekent dit dat elke AI — Claude, GPT, Llama, Gemini — PLC-blocks kan aanmaken, tags kan beheren, programma's kan compileren en downloaden. Het is de brug tussen moderne AI en industriële automatisering.

Zijn de open-source MCP servers veilig voor productiegebruik?

Nee. Geen van de drie open-source implementaties handelt STA threading correct af, wat betekent dat ze het risico lopen op COM-object corruptie bij gelijktijdig gebruik. Ze missen ook authenticatie, rate limiting en audit logging — essentieel voor elke tool die communiceert met industriële apparatuur. Ze zijn nuttig voor experimenten, niet voor productie.

Kan ik T-IA Connect gebruiken met Claude, ChatGPT of lokale modellen?

Ja. T-IA Connect ondersteunt elke MCP-compatibele client: Claude Desktop, Claude Code, Cursor, VS Code met Continue, Windsurf en elke aangepaste integratie. Omdat MCP een open protocol is, kiest u zelf uw AI-provider — inclusief lokale modellen via Ollama voor air-gapped omgevingen.

Hoe zit het met de s7-mcp-bridge — is die niet complementair?

De s7-mcp-bridge kiest een andere aanpak: deze verbindt met de ingebouwde Web API van de PLC, niet met TIA Portal. Dit is nuttig voor runtime monitoring, maar het kan geen blocks aanmaken, projectstructuren beheren of enig engineering-werk verrichten. Het is ook gevaarlijk: het kan een CPU in STOP-modus zetten en willekeurige tag-waarden schrijven zonder enige veiligheidscontrole. T-IA Connect dekt zowel engineering als runtime operaties met de juiste beveiligingen.

Klaar om AI te Verbinden met TIA Portal?

Begin met een gratis proefperiode van 14 dagen. Alle 369 MCP tools, alle TIA Portal versies, geen creditcard vereist.