heilingbrunner/tiaportal-mcp — La opción de código abierto más avanzada
30 herramientas MCP · Solo V20 · Inactivo desde septiembre de 2025
Este es el competidor de código abierto más serio. Desarrollado durante aproximadamente 4 meses (junio-septiembre de 2025) por 3 colaboradores, con 32 estrellas y 11 forks en GitHub. También se distribuye como una extensión de VS Code. Sin embargo, el proyecto ha estado inactivo durante más de 6 meses.
Pila Tecnológica
C# .NET Framework 4.8 puro (sin intermediario de Node.js). Utiliza el SDK oficial de .NET MCP (ModelContextProtocol v0.3.0-preview). Transporte solo a través de stdio (sin HTTP/SSE). Referencia paquetes NuGet de Siemens V20: un enfoque más moderno que la carga dinámica de DLLs, pero bloqueado a una sola versión.
30 herramientas MCP — Qué cubren
Las herramientas cubren 7 categorías: gestión de conexiones (Connect, Disconnect, GetState), operaciones de proyecto (Open, Save, Close, GetProjectTree), inspección de hardware (GetDevices, GetDeviceInfo), gestión de software (GetSoftwareTree, CompileSoftware), operaciones de bloques (GetBlocks, ImportBlock, ExportBlock), manejo de UDT (GetTypes, ImportType, ExportType) y soporte para el formato de documentos V20 (ExportAsDocuments, ImportFromDocuments).
El soporte para el formato de documentos V20 (.s7dcl/.s7res) es una característica notable: este es un nuevo formato de Siemens que permite exportar bloques en un formato estructurado y legible por humanos.
Lo que no hace
Problemas Técnicos
Sin subprocesos STA (Threading)
Este es el problema más crítico. La Openness API de Siemens utiliza objetos COM que requieren el modo Single-Threaded Apartment (STA). Sin un despacho STA adecuado, las llamadas COM pueden corromper datos silenciosamente o fallar aleatoriamente bajo carga concurrente. Esto hace que la herramienta no sea fiable para cualquier pipeline automatizado.
Arquitectura Monolítica
Portal.cs contiene 2.300 líneas y McpServer.cs coloca todas las herramientas en un solo archivo. Esto hace que la base de código sea difícil de mantener y extender.
V20 Hardcoded
Aunque acepta un argumento CLI --tia-major-version, las referencias de NuGet están hardcoded a V20. La mayoría de las fábricas del mundo real todavía funcionan con V17 o V18.
Siempre requiere GUI
Sin modo headless: TIA Portal debe abrirse manualmente primero. No se puede utilizar en pipelines de CI/CD.
Selección de Proceso
Utiliza processes.First(): se acopla a la primera instancia de TIA Portal encontrada. Si se están ejecutando varias instancias, no hay forma de seleccionar cuál.
Con aproximadamente el 13% de la superficie funcional de T-IA Connect, heilingbrunner es la opción de código abierto más avanzada. Su soporte para el formato de documentos V20 es genuinamente útil. Sin embargo, la falta de subprocesos STA, la ausencia de operaciones online, la falta de gestión de variables y más de 6 meses de inactividad lo hacen inadecuado para la automatización de la producción.