AI meets Siemens TIA Portal

Connects any MCP-compatible AI assistant to Siemens TIA Portal via the Openness API. Block creation, tag management, watch tables, hardware config, cross-references, data block operations — all through natural language.

What is TiaCommander — Siemens MCP Server?

If you're reading this, you probably already use an AI assistant in your daily work — Claude Desktop, Claude Code, Codex CLI, Windsurf, Cursor, or something similar. You ask it questions, copy-paste code, look things up, maybe generate a block or two. That's the baseline — and it already saves time.

TiaCommander takes this further. It's a Siemens MCP server — an MCP (Model Context Protocol) server that gives your AI assistant hands. Instead of just chatting and copy-pasting, your AI assistant can directly reach into TIA Portal and do things — create function blocks, write SCL code, build LAD networks, manage tags, configure hardware, compile, download to PLC, and a lot more. You keep your engineering workflow exactly the way it is. The AI just does the work for you.

TiaCommander works with any MCP-compatible AI client — Claude Desktop, Claude Code, Codex CLI, Windsurf, Cursor, VS Code Copilot, Gemini CLI, and others. Everything runs locally on your machine. Your project data, your PLC programs, your intellectual property — nothing leaves your infrastructure. Ever.

Why this tool exists?

First things first — we are software developers and automation engineers who use Siemens products daily — in our own facilities, at client sites, and in every project that needs industrial automation. We love it. With Siemens, it's simple - it just works. Every time. All the time.

During years of hands-on programming, wiring, testing, debugging and making things happen with Siemens PLCs, we have built TiaCommander just for our own internal needs. That's the honest reason why it exists — we built it for ourselves, and we find it awesome. It speeds things up tenfold, sometimes twentyfold, and sometimes more — until you ask yourself: how the hell were we getting things done before?! You can get full project context through your AI assistant under a minute. Create any block in seconds — SCL, LAD, FBD, DB — get interface structures, build multi-instance DBs, run cross-references, compile, debug, retrieve errors, and a lot more.

Every tool you see in the tool map below is built from what we actually need or use in our daily operations with Siemens PLCs. Whether you're working with S7-1200 or S7-1500 series — it doesn't matter. If Siemens TIA Portal supports it, you can use TiaCommander to write code, get context, manage your project.

Now that we're making this tool public — we're genuinely keen on what features you're missing for your development workflow. Don't be shy — submit a feature request, file a bug report, leave a testimonial, or just tell us what you think. This is important for us to make TiaCommander better — and see what we are missing or how we could speed up things even more. As an Engineer to Engineer — we read every line of code, every message, every comment, and every testimonial ;) And it counts...

Architecture

AI client
Claude Desktop / Code · Cursor · VS Code / Copilot · Windsurf · Codex CLI · Gemini CLI
any MCP-compatible
client
▼ JSON-RPC 2.0 · stdio
TiaCommander MCP
16 tools · 166 actions · standalone I/O
.NET Framework 4.8
Windows
▼ Siemens Openness API
TIA Portal
Totally Integrated Automation · V15.1 – V21
S7-1200 · S7-1500
S7-300 · S7-400 · ET 200

Tool map  16 tools · 166 actions

Installation

1  Install Siemens TIA Portal with the Openness API option enabled, or use your existing installation
2  Download TiaCommander ZIP from GitHub Releases
3  Extract to C:\TiaCommander\
4  Add your Windows user to Siemens TIA Openness group and restart — mandatory to take effect
5  Add to your AI client config and restart — mandatory for the AI agent to pick up the tools
// claude_desktop_config.json
{
  "mcpServers": {
    "tiacommander": {
      "command": "C:\\TiaCommander\\TiaCommander.exe"
    }
  }
}
6  Type open manager or Open the TiaCommander manager in your AI client to get started
7  Need more details? Check our GitHub for an extensive setup guide and documentation
Installation guide
Video walkthrough · 2 min

How to use it?

Once installed, you just talk to your AI assistant. Here are some real prompts you can try — grouped by what you're working on. Copy any of them, paste into your AI client, and watch it happen.

Project Operations
Launch TIA Portal and create a new project "PumpStation"
List all projects and archives
Save and archive the project to my desktop
Block Operations
Create an FB "PumpControl" with SCL code for start, stop and speed control
Create an FC with LAD logic for 2 pumps and 1 emergency stop
Create OB1 and call PumpControl, ValveControl in separate networks
List all blocks and get PumpControl interface
Data Blocks
Create a global DB "PumpStation_Config" with speed, temperature, and running hours
Show me the structure of PumpStation_Config and create an instance DB for PumpControl
UDTs
Create a UDT "ValveControl" with Open, Close, Feedback, and FaultCode members
Use ValveControl UDT as a multi-instance member in PumpControl
Tag Tables
Create a tag table "IO_Map" using PLC_1 I/O addresses
Create a tag table for PumpControl interface variables
Watch & Force Tables
Create a watch table for monitoring all pump outputs
Add PumpStation_Config.Speed and PumpStation_Config.Temperature to the watch table
Hardware & Exports
Show me the full device topology — racks, slots, modules
Export the complete I/O address map as an Excel file
Get the network configuration for all connected devices
Library
List all master copies in the project library
Publish PumpControl as a master copy to the project library
Cross References
Find all blocks that reference PumpStation_Config
Show me all unused blocks in the project
Alarm Texts
Create alarm text list "PumpAlarms" with entries for pump faults
Export all alarm texts to Excel
Diagnostics
Go online with the PLC and check the connection status
Compare online and offline versions of the blocks
Download & Deploy
Compile everything and download to PLC
Scan the network and show all accessible PLCs
Admin
Show me tool usage statistics
List the last 10 errors from tool calls

They say an image is worth a thousand words... We do agree.

Live demo
TIA Portal session · 5 min

What works best for us

We use Claude Desktop for 99% of our TiaCommander work. It feels intuitive, we like the chat interface and the way it handles MCP server connections is exceptionally well. It gets real project context out of TIA Portal without breaking a sweat or does SCL code from the context in seconds. Finds bugs and offers solutions that work!

We have also tested TiaCommander with other MCP-compatible clients. Cursor performs really well, and Codex CLI is solid too. Each client has its strengths, and TiaCommander works across all of them — it's an MCP server, so if the client speaks MCP, it will work. It's just a matter of user preference.

One thing we've learned: TiaCommander is designed with the man-in-the-middle in mind. You stay in control and follow your workflow as you would normally do — the AI proposes, you review, you confirm. It works best as a power tool for managing and extending your existing projects, not as a "generate everything from scratch" button. Open an existing project or use one as a boilerplate, give the AI context, and tell it what to build. "Use this FB as a template and create a similar one for the cooling system" will always produce better results than "build me a complete HVAC project from zero." The AI needs context to work well — and TiaCommander is designed to give it exactly that, while keeping you in the driver's seat and following exactly your way of doing things.

That said — use whatever fits your workflow. We just thought it's important to share what works well for us - as engineers who use TiaCommander on daily basis. Try it with your favorite AI client or dev setup, and let us know how it goes. That's what this is all about!

Standalone by design

TiaCommander is built on top of the Siemens Openness API and leverages every available function it offers. On top of that, we have developed a significant amount of custom functionality — LAD/FBD network building, FlgNet XML generation with 69 instruction types, interface structure parsing, cross-reference analysis, assignment list scanning, and more — things that the Openness API does not provide out of the box. All of this runs standalone. No additional tools, no external dependencies, no setup beyond what you see in the installation steps above.

However, we strongly recommend pairing your AI assistant with Desktop Commander for your daily workflow. It gives your AI assistant terminal access, file management, and code editing capabilities across your entire OS — and it makes everything better. This is not a paid promotion — we use Desktop Commander every day in our own workflow, and it just happens to be created by our fellow Latvian, Eduards Ruzga. It's free, open-source, and it just makes everything better. Go and check it out.

Built by engineers, for engineers

TiaCommander is absolutely free during the beta period — all tools, no limits, no restrictions, just your imagination. In return, we count on you to help us make it better. Whether it saved you days or weeks on a development, got you up to speed on an unfamiliar codebase in minutes, helped your interns or teammates explore PLC functionality hands-on, written countless lines of SCL code, created hundreds of complicated LAD blocks or flowpaths or simply eliminated the repetitive clicking you used to do in TIA Portal — we just need to hear about it. Bug reports, feature ideas, and workflow stories - all matter equally.

Every report, every suggestion, every comment helps us build a better tool for the Siemens automation community. So...

Share your feedback
Bug reports · Feature requests · Testimonials
Open feedback form →

Now go build something!
> _