heilingbrunner/tiaportal-mcp — सबसे उन्नत ओपन-सोर्स विकल्प
30 MCP टूल्स · केवल V20 · सितंबर 2025 से निष्क्रिय
यह सबसे गंभीर ओपन-सोर्स प्रतियोगी है। GitHub पर 32 स्टार्स और 11 फोर्क्स के साथ 3 योगदानकर्ताओं द्वारा लगभग 4 महीनों (जून-सितंबर 2025) में विकसित किया गया। इसे VS Code एक्सटेंशन के रूप में भी वितरित किया गया है। हालाँकि, प्रोजेक्ट 6 महीनों से अधिक समय से निष्क्रिय है।
तकनीकी स्टैक
शुद्ध C# .NET Framework 4.8 (कोई Node.js मध्यस्थ नहीं)। आधिकारिक .NET MCP SDK (ModelContextProtocol v0.3.0-preview) का उपयोग करता है। केवल stdio के माध्यम से ट्रांसपोर्ट (कोई HTTP/SSE नहीं)। Siemens V20 NuGet पैकेज को संदर्भित करता है — डायनामिक DLL लोडिंग की तुलना में अधिक आधुनिक दृष्टिकोण, लेकिन केवल एक वर्जन तक सीमित।
30 MCP टूल्स — वे क्या कवर करते हैं
टूल्स 7 श्रेणियों को कवर करते हैं: कनेक्शन मैनेजमेंट (Connect, Disconnect, GetState), प्रोजेक्ट ऑपरेशन्स (Open, Save, Close, GetProjectTree), हार्डवेयर निरीक्षण (GetDevices, GetDeviceInfo), सॉफ्टवेयर मैनेजमेंट (GetSoftwareTree, CompileSoftware), ब्लॉक ऑपरेशन्स (GetBlocks, ImportBlock, ExportBlock), UDT हैंडलिंग (GetTypes, ImportType, ExportType), और V20 डॉक्यूमेंट फॉर्मेट सपोर्ट (ExportAsDocuments, ImportFromDocuments)।
V20 डॉक्यूमेंट फॉर्मेट (.s7dcl/.s7res) सपोर्ट एक उल्लेखनीय विशेषता है — यह एक नया Siemens फॉर्मेट है जो ब्लॉक्स को स्ट्रक्चर्ड, ह्यूमन-रीडेबल फॉर्मेट में एक्सपोर्ट करने की अनुमति देता है।
यह क्या नहीं करता है
तकनीकी समस्याएं
कोई STA थ्रेडिंग नहीं
यह सबसे महत्वपूर्ण समस्या है। Siemens Openness API COM ऑब्जेक्ट्स का उपयोग करता है जिन्हें Single-Threaded Apartment (STA) मोड की आवश्यकता होती है। उचित STA डिस्पैचिंग के बिना, COM कॉल्स डेटा को करप्ट कर सकते हैं या कंक्रीट लोड के तहत रैंडम क्रैश हो सकते हैं। यह इसे किसी भी ऑटोमेटेड पाइपलाइन के लिए अविश्वसनीय बनाता है।
मोनोलिथिक आर्किटेक्चर
Portal.cs में 2,300 लाइनें हैं और McpServer.cs सभी टूल्स को एक ही फाइल में रखता है। इससे कोडबेस को मेंटेन करना और बढ़ाना मुश्किल हो जाता है।
V20 हार्डकोडेड
हालांकि यह --tia-major-version CLI तर्क स्वीकार करता है, NuGet संदर्भ V20 के लिए हार्डकोडेड हैं। अधिकांश वास्तविक दुनिया की फैक्ट्रियां अभी भी V17 या V18 चलाती हैं।
हमेशा GUI की आवश्यकता होती है
कोई हेडलेस मोड नहीं — TIA Portal को पहले मैन्युअल रूप से खोला जाना चाहिए। CI/CD पाइपलाइनों में उपयोग नहीं किया जा सकता।
प्रोसेस सिलेक्शन
processes.First() का उपयोग करता है — पाए गए पहले TIA Portal इंस्टेंस से जुड़ता है। यदि मल्टीपल इंस्टेंस चल रहे हैं, तो यह चुनने का कोई तरीका नहीं है कि किससे जुड़ना है।
T-IA Connect की कार्यात्मक सतह के लगभग 13% पर, heilingbrunner सबसे उन्नत ओपन-सोर्स विकल्प है। इसका V20 डॉक्यूमेंट फॉर्मेट सपोर्ट वास्तव में उपयोगी है। हालाँकि, STA थ्रेडिंग की कमी, कोई ऑनलाइन ऑपरेशन्स नहीं, कोई टैग मैनेजमेंट नहीं, और 6+ महीनों की निष्क्रियता इसे प्रोडक्शन ऑटोमेशन के लिए अनुपयुक्त बनाती है।