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
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.
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.