Poglobljena analiza 2026

Vsak MCP strežnik za TIA Portal,
Analiziran in primerjan

Štirje projekti povezujejo AI s Siemens TIA Portal prek MCP. Analizirali smo njihovo izvorno kodo, arhitekturo in varnost. Eden je zgrajen za produkcijo, trije so odprtokodni eksperimenti. Tukaj je celotna tehnična razčlenitev.

Pokrajina MCP za TIA Portal

Model Context Protocol (MCP) omogoča AI agentom neposredno interakcijo z inženirskimi orodji. Za Siemens TIA Portal danes obstajajo štiri implementacije.

T-IA Connect

Komercialno · Produkcijska raven

Industrijski MCP most s 369 orodji, ki pokrivajo celoten življenjski cikel TIA Portal: upravljanje projektov, CRUD operacije blokov, upravljanje tagov, HMI, spletne operacije, PLCSim simulacija in še več. Aktiven razvoj, strokovna podpora.

Openness API (V17–V21)

heilingbrunner/tiaportal-mcp

Odprta koda · VS Code razširitev

VS Code razširitev s 30 MCP orodji za brskanje po projektih, uvoz/izvoz blokov, prevajanje in nov format dokumentov V20. Brez upravljanja tagov, brez HMI, brez spletnih operacij. Neaktivno od septembra 2025.

Openness API (samo V20)

gangsterke/Tia-Portal-MCP-server

Odprta koda · Dokaz koncepta

Minimalen prototip z 12 orodji samo za branje za brskanje po projektih in branje tagov. Zgrajen v enem dnevu, nikoli posodobljen. V18 je trdo kodiran, brez obravnave napak, brez varnosti.

Openness API (samo V18)

cadugrillo/s7-mcp-bridge

Odprta koda · Runtime monitor

Drugačen pristop: neposredna povezava s PLC Web API (HTTPS) brez TIA Portal. 21 orodij za spremljanje izvajanja, branje/pisanje tagov in nadzor CPU. Brez inženirskih zmogljivosti.

PLC Web API (S7-1200/1500)

Analiza izvorne kode

Pregledali smo izvorno kodo vsakega projekta, da bi ocenili arhitekturo, varnost in uporabnost v realnem svetu. Tukaj je naše poročilo.

heilingbrunner/tiaportal-mcp — Najnaprednejša odprtokodna možnost

30 MCP orodij · Samo V20 · Neaktivno od septembra 2025

To je najresnejši odprtokodni konkurent. Razvijali so ga približno 4 mesece (junij–september 2025) 3 sodelavci, z 32 zvezdicami in 11 razcepi na GitHubu. Distribuira se tudi kot VS Code razširitev. Vendar pa je projekt neaktiven že več kot 6 mesecev.

Tehnični nabor

Čisti C# .NET Framework 4.8 (brez Node.js posrednika). Uporablja uradni .NET MCP SDK (ModelContextProtocol v0.3.0-preview). Prenos samo prek stdio (brez HTTP/SSE). Sklicuje se na Siemens V20 NuGet pakete — sodobnejši pristop kot dinamično nalaganje DLL-jev, vendar zaklenjen na eno različico.

30 MCP orodij — Kaj pokrivajo

Orodja pokrivajo 7 kategorij: upravljanje povezav (Connect, Disconnect, GetState), projektne operacije (Open, Save, Close, GetProjectTree), pregled strojne opreme (GetDevices, GetDeviceInfo), upravljanje programske opreme (GetSoftwareTree, CompileSoftware), operacije z bloki (GetBlocks, ImportBlock, ExportBlock), obravnava UDT-jev (GetTypes, ImportType, ExportType) in podpora za format dokumentov V20 (ExportAsDocuments, ImportFromDocuments).

Podpora za format dokumentov V20 (.s7dcl/.s7res) je pomembna lastnost — to je nov Siemens format, ki omogoča izvoz blokov v strukturirani, človeku berljivi obliki.

Česa ne zmore

Brez upravljanja tagov — ne more brati, pisati, ustvarjati ali uvažati/izvažati tagov
Brez podpore za HMI/WinCC — brez zaslonov, povezav, alarmov ali HMI tagov
Brez spletnih operacij — brez GoOnline, Download ali spremljanja v realnem času
Brez podpore za simulacijo PLCSim
Brez generiranja blokov — ne more ustvariti novih blokov v SCL, LAD, FBD ali GRAPH
Brez upravljanja omrežja/podmrežja ali podpore za knjižnice
Brez tabel za opazovanje (watch tables) ali tabel za prisiljenje (force tables)
Brez sistema opravil (job system) — vse operacije so sinhrone in blokirajoče

Tehnične težave

Brez STA nitja

To je najbolj kritična težava. Siemens Openness API uporablja COM objekte, ki zahtevajo način Single-Threaded Apartment (STA). Brez ustreznega razpošiljanja STA lahko COM klici tiho pokvarijo podatke ali se naključno sesujejo pod sočasno obremenitvijo. Zaradi tega je orodje nezanesljivo za kateri koli avtomatiziran cevovod.

Monolitna arhitektura

Portal.cs vsebuje 2.300 vrstic, McpServer.cs pa postavi vsa orodja v eno samo datoteko. To otežuje vzdrževanje in širjenje kode.

V20 trdo kodiran

Čeprav sprejema CLI argument --tia-major-version, so NuGet sklici trdo kodirani na V20. Večina tovarn v realnem svetu še vedno uporablja V17 ali V18.

Vedno zahteva GUI

Brez načina headless — TIA Portal mora biti najprej ročno odprt. Ni mogoče uporabiti v CI/CD cevovodih.

Izbira procesa

Uporablja processes.First() — priključi se na prvo najdeno instanco TIA Portal. Če teče več instanc, ni mogoče izbrati, na katero naj se priključi.

~13 % funkcionalna pokritost v primerjavi s T-IA Connect

S približno 13 % funkcionalne pokritosti v primerjavi s T-IA Connect je heilingbrunner najnaprednejša odprtokodna možnost. Njegova podpora za format dokumentov V20 je resnično uporabna. Vendar pa pomanjkanje STA nitja, odsotnost spletnih operacij in upravljanja tagov ter več kot 6-mesečna neaktivnost povzročajo, da ni primeren za produkcijsko avtomatizacijo.

gangsterke/Tia-Portal-MCP-server — Enodnevni dokaz koncepta

12 MCP orodij · Samo V18 · Zgrajen v enem dnevu, nikoli posodobljen

Ta projekt je natanko to, kar je videti: dokaz koncepta, zgrajen v enem dnevu (12. oktober 2025) in od takrat nikoli posodobljen. Skupaj približno 1.260 vrstic kode. Dokazuje, da je povezava MCP s TIA Portal možna, vendar ne ponuja ničesar onkraj tega.

Tehnični nabor

Arhitektura z dvema procesoma: plast Node.js TypeScript (~400 vrstic) skrbi za MCP protokol, podproces C# .NET Framework 4.8 (~860 vrstic v enem Program.cs) pa kliče Openness API. Komunikacija med procesoma poteka prek stdin/stdout JSON.

12 MCP orodij — Samo za branje

Vsa orodja so samo za branje: odpiranje/zapiranje projekta, seznam PLC-jev, seznam blokov (samo korenski nivo — brez rekurzije v skupine), izvoz posameznega bloka kot XML, branje tabel tagov, iskanje tagov, pridobivanje strojne konfiguracije, pridobivanje informacij o projektu in dve orodji OPC UA (izvoz/pridobivanje informacij o vmesniku). Podpora za OPC UA je njegova edina izvirna lastnost.

Orodje get_block_code je zavajajoče — vrne samo metapodatke (ime, tip, jezik), ne pa dejanske izvorne kode.

Pomembne težave

V18 trdo kodiran

Absolutne poti do Portal V18\PublicAPI\V18\ so trdo kodirane. Ni nikakršne podpore za več različic.

Brez STA nitja

Deluje po sreči na .NET Framework 4.8, ker je glavna nit privzeto STA, vendar to ni eksplicitno upravljano in bo odpovedalo pod sočasno obremenitvijo.

Tiho požiranje napak

Prazni bloki catch po celotni kodi — napake so tiho prezrte. Če gre kaj narobe, tega nikoli ne boste izvedeli.

Race condition ob zagonu

Uporablja preprost setTimeout(2000ms) za čakanje na zagon podprocesa C#. Brez preverjanja stanja, brez ustreznega rokovanja (handshake).

Ničelna varnost

Brez avtentikacije, brez validacije poti (možen je prehod med mapami), brez omejevanja hitrosti. Nič testov, nič CI/CD, brez datoteke LICENSE, kljub trditvi o MIT licenci v package.json.

~1–2 % funkcionalna pokritost v primerjavi s T-IA Connect

S približno 1–2 % funkcionalne pokritosti v primerjavi s T-IA Connect je to minimalen dokaz koncepta, ne orodje. Njegov edini izvirni prispevek je podpora za OPC UA vmesnik. Uporabno kot vaja za učenje, nevarno za vse ostalo.

cadugrillo/s7-mcp-bridge — Runtime spremljanje brez TIA Portal

21 MCP orodij · PLC Web API · Brez inženirskih zmogljivosti

Ta projekt uporablja bistveno drugačen pristop: namesto povezave s TIA Portal prek Openness API se poveže neposredno z vgrajenim Web API-jem PLC-ja (JSON-RPC prek HTTPS). Nobena Siemens programska oprema ni potrebna — le omrežna povezava s PLC-jem. Zaradi tega je komplementaren namesto konkurenčen ostalim projektom, vendar uvaja resne varnostne pomisleke.

Tehnični nabor

Čisti TypeScript/Node.js. Prenos prek HTTP-stream (vrata 57001) ali stdio. Pakiranje vključuje Docker slike za različne arhitekture in Claude Desktop razširitev (.mcpb). Brez Siemens odvisnosti — samo fetch() klici na https://<PLC_IP>/api/jsonrpc.

21 MCP orodij — Fokus na runtime

Sistem (Api-Ping, Api-Version, Api-Browse), Avtentikacija (Api-Login, Api-Logout, ChangePassword), Konfiguracija (List-AvailablePlcs), Podatki (PlcProgram-Browse, PlcProgram-Read, PlcProgram-Write), Nadzor CPU (ReadOperatingMode, RequestChangeOperatingMode, ReadSystemTime, SetSystemTime), Diagnostika (Alarms-Browse, Alarms-Acknowledge, DiagnosticBuffer-Browse) in Varnostno kopiranje (Plc-CreateBackup).

Kaj dela dobro

Namestitev Siemens programske opreme ni potrebna — kateri koli stroj z Node.js se lahko poveže
Čista arhitektura: ena datoteka na orodje, dobro organizirana koda
Podpora za Docker in Claude Desktop razširitev
Spremljanje izvajanja brez potrebe po odprtem TIA Portal

Kaj je nevarno

AI lahko ustavi produkcijo

Orodje RequestChangeOperatingMode omogoča AI agentu, da postavi CPU v način STOP. Orodje PlcProgram-Write mu omogoča pisanje poljubnih vrednosti v PLC tage. Na produkcijski liniji bi ena AI halucinacija lahko ustavila celotno tovarno. Ni potrditvenega okna, ni revizijske sledi, ni varnostnega preverjanja. 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 onemogočen globalno

Koda nastavi NODE_TLS_REJECT_UNAUTHORIZED = "0", kar onemogoči preverjanje TLS certifikatov za celoten Node.js proces — ne samo za povezave s PLC-jem. To je varnostna ranljivost.

Poverilnice v pomnilniku

PLC poverilnice so shranjene v navadnem besedilu v pomnilniku. Brez šifriranja, brez varnega shranjevanja.

Ničelna vsebnost testov

Brez zbirke testov za orodje, ki neposredno nadzoruje industrijsko opremo. Neaktivno od oktobra 2025.

Drugačna kategorija — samo runtime spremljanje

s7-mcp-bridge zaseda drugačno nišo — runtime spremljanje prek PLC Web API, ne inženiringa. Pristop brez namestitve je zanimiv za nadzorne plošče. Vendar pa popolna odsotnost varnostnih ograj pri kritičnih operacijah (CPU STOP, pisanje tagov) povzroča, da je nevaren za katero koli industrijsko okolje. T-IA Connect pokriva tako inženiring kot runtime operacije z ustreznimi zaščitami.

Zakaj je varnost v produkciji pomembna

Povezovanje AI z industrijsko opremo ni igrača. Tukaj je, kaj je na kocki.

STA nitje je nujno

Siemens Openness API uporablja COM objekte, ki zahtevajo način Single-Threaded Apartment (STA). Brez ustreznega razpošiljanja STA lahko COM klici tiho pokvarijo podatke ali se naključno sesujejo pod obremenitvijo. T-IA Connect je edina implementacija z ustreznim StaDispatcher-jem.

AI + PLC = Kritično z vidika varnosti

Ko AI agent lahko piše tage, prenaša programe ali spreminja načine delovanja CPU, lahko ena halucinacija ustavi produkcijsko linijo. T-IA Connect uporablja avtentikacijo z API ključem, omejevanje hitrosti in beleženje dejanj. Odprtokodne alternative nimajo varnostnih ograj.

Podpora za več različic je pomembna

Večina tovarn uporablja V17 ali V18 — ne V20. Orodje, trdo kodirano na eno različico TIA Portal, izključuje večino realnih instalacij. T-IA Connect dinamično naloži pravilne Openness DLL-je za različice od V17 do V21.

Headless način za CI/CD

Avtomatizirani cevovodi morajo teči brez GUI-ja. T-IA Connect lahko odpre TIA Portal v načinu headless, ga prevede, prenese in zapre — brez kakršne koli interakcije uporabnika. Odprtokodne alternative zahtevajo, da je TIA Portal ročno odprt.

Tabela primerjave lastnosti po postavkah

Celotna primerjalna matrica — vse lastnosti, vsi štirje strežniki, na enem mestu

Lastnost
T-IA Connect
heilingbrunner
gangsterke
s7-mcp-bridge
MCP orodja
369
30
12
21
TIA Portal različice
V17, V18, V19, V20, V21
Samo V20 (NuGet trdo kodiran)
Samo V18 (pot trdo kodirana)
N/A — TIA Portal ni potreben
Operacije z bloki
Poln CRUD + generiranje SCL/LAD/FBD/GRAPH
Uvoz/izvoz (XML in V20 dokumenti)
Samo izvoz (korenski nivo)
Brez
Upravljanje tagov
Poln CRUD + uvoz/izvoz
Brez
Samo branje
Runtime branje/pisanje
HMI / WinCC
Zasloni, povezave, alarmi, tagi
Brez
Brez
Brez
Spletne operacije
GoOnline, Download (confirmation required), monitoring — Run/Stop CPU disabled by design for safety
Brez
Brez
Run/Stop CPU, branje/pisanje tagov
PLCSim simulacija
PLCSim + PLCSim Advanced
Brez
Brez
Brez
STA nitje
StaDispatcher (varno za produkcijo)
Brez (tveganje sesutja COM)
Brez (tveganje sesutja COM)
N/A
Varnost
API ključ + omejevanje hitrosti + RSA licenca
Brez
Brez
Brez (TLS onemogočen globalno)
Prenos
HTTP + SSE + stdio
Samo stdio
Samo stdio
HTTP-stream + stdio
REST API
417 končnih točk
Brez
Brez
Brez
Headless način
Da — TIA Portal GUI ni potreben
Ne — zahteva odprt TIA Portal
Ne — zahteva odprt TIA Portal
N/A
Zadnjič posodobljeno
Aktivno (tedenske posodobitve)
September 2025 (neaktivno 6+ mesecev)
Oktober 2025 (zgrajeno v 1 dnevu, nikoli posodobljeno)
Oktober 2025 (neaktivno 6+ mesecev)
Licenca
Komercialna (14-dnevni brezplačni preizkus)
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

Pogosto zastavljena vprašanja

Kaj je MCP in zakaj je pomemben za TIA Portal?

MCP (Model Context Protocol) je odprt standard podjetja Anthropic, ki AI agentom omogoča interakcijo z zunanjimi orodji. Za TIA Portal to pomeni, da lahko kateri koli AI — Claude, GPT, Llama, Gemini — ustvarja PLC bloke, upravlja tage, prevaja in prenaša programe. To je most med sodobno AI in industrijsko avtomatizacijo.

Ali so odprtokodni MCP strežniki varni za produkcijsko uporabo?

Ne. Nobena od treh odprtokodnih implementacij ne obravnava STA nitja pravilno, kar pomeni, da tvegajo poškodbo COM objektov pri sočasni uporabi. Prav tako nimajo avtentikacije, omejevanja hitrosti in revizijskega beleženja — kar je bistveno za vsako orodje, ki komunicira z industrijsko opremo. Uporabni so za eksperimentiranje, ne pa za produkcijo.

Ali lahko uporabljam T-IA Connect s Claude, ChatGPT ali lokalnimi modeli?

Da. T-IA Connect podpira kateri koli odjemalec, združljiv z MCP: Claude Desktop, Claude Code, Cursor, VS Code s Continue, Windsurf in katero koli integracijo po meri. Ker je MCP odprt protokol, sami izberete ponudnika AI — vključno z lokalnimi modeli prek Ollama za izolirana okolja.

Kaj pa s7-mcp-bridge — ali ni komplementaren?

s7-mcp-bridge uporablja drugačen pristop: poveže se z vgrajenim Web API-jem PLC-ja, ne s TIA Portal. To je uporabno za runtime spremljanje, vendar ne more ustvarjati blokov, upravljati projektnih struktur ali izvajati inženiringa. Prav tako je nevaren: CPU lahko postavi v način STOP in piše poljubne vrednosti tagov brez varnostnih preverjanj. T-IA Connect pokriva tako inženiring kot runtime operacije z ustreznimi zaščitami.

Ste pripravljeni povezati AI s TIA Portal?

Začnite s 14-dnevnim brezplačnim preizkusom. Vseh 369 MCP orodij, vse različice TIA Portal, kreditna kartica ni potrebna.