连接 AI 的 492 个 MCP 工具
到西门子 TIA Portal
T-IA Connect 实现了一个完整的 Model Context Protocol 服务端,让任何 AI 助手都能直接访问您的 TIA Portal 项目。项目管理、PLC 块、变量、HMI、仿真、版本控制、流水线、测试 -- 全部通过一个 MCP 服务端实现。
什么是 MCP?
Model Context Protocol (MCP) 是由 Anthropic 创建的一个开放标准,它定义了 AI 模型如何与外部工具通信。MCP 让 AI 能够直接与 TIA Portal 交互(读取项目、创建块、管理变量、编译并下载到 PLC),而无需在聊天窗口和工程软件之间进行复制粘贴。
T-IA Connect 将西门子 TIA Portal Openness API 封装为 492 个 MCP 工具。任何兼容 MCP 的 AI 客户端(Claude、GPT、Llama 或通过 Ollama 运行的本地模型)都可以使用它们。它就像一个通用适配器:AI 使用 MCP 协议,T-IA Connect 将其转换为 TIA Openness API 调用。无专有插件,无供应商锁定。
工作原理
AI 与 TIA Portal 之间的三层结构
AI 客户端
您在任何兼容 MCP 的客户端(Cursor、VS Code, Claude Code、Windsurf 或 Claude Desktop)中的 AI 助手(Claude、GPT、Llama)。
T-IA Connect MCP 服务端
运行在您的工程工作站本地。通过 JSON-RPC 接收 MCP 工具调用,并将其转换为 TIA Portal Openness API 操作。
TIA Portal
启用了 Openness API 的西门子 TIA Portal V17-V21。您的 PLC 项目、设备、HMI 画面和配置。
全部 492 个 MCP 工具
搜索并浏览 T-IA Connect MCP 服务端中可用的每个工具
Project Management
(25)Archives the current project to a .zap* file asynchronously and returns a jobId.
Archives the current project into the bounded remote artifact store asynchronously.
Attaches to an already running TIA Portal instance by explicit processId.
Requests cooperative cancellation of a Pending or Running asynchronous T-IA Connect job.
Closes the currently open project.
Creates a new TIA Portal project asynchronously and returns a jobId.
Deletes one remote artifact from the bounded store.
Detaches from the current TIA Portal instance without closing it.
Exports all translatable project texts to an XLSX file asynchronously and returns a jobId.
Returns artifact metadata and an internal HTTP download URL.
Gets status, progress percentage, progress message, result, and the structured known-or-unknown error contract for an asynchronous T-IA Connect job returned by tools such as open_project or VCS operations.
Retrieves the history of actions and snapshots for the current project.
Gets the editing and reference languages configured for the project, plus all available languages.
Retrieves a comprehensive overview of the entire project structure (devices, blocks, tags, and HMI screens) in a single call.
Gets the name and path of the currently open project.
Imports translated texts from an XLSX file back into the project asynchronously and returns a jobId.
Lists remote artifacts, optionally filtered by artifact jobId.
Scans an allowed project directory for TIA Portal project files (.ap*).
Opens an existing TIA Portal project asynchronously and returns a jobId.
Retrieves (unzips) a project from an archive file asynchronously and returns a jobId.
Starts an asynchronous project save job and returns a jobId.
Updates project language settings.
Enables or disables simulation support for the project.
Closes/disposes the current TIA Portal instance through the clean T-IA Connect PortalManager.ShutdownPortal path.
Forces a synchronization between the API state and TIA Portal.
Devices & Hardware
(35)Adds generic hardware using the existing compatibility path.
Changes the CPU hardware type of a device (equivalent to 'Change device' in TIA Portal GUI).
Removes all devices from the parking lot.
Starts an asynchronous device compilation job and returns a jobId.
Configures one analog input channel to an allowlisted signal mode using writable parameter metadata exposed by TIA Portal.
Configures CPU properties: clock/system memory byte, comment, plant designation, location identifier, web server, cycle time, communication load, PUT/GET, startup mode, PROFINET name, system diagnostics, configuration control.
Changes one module input or output byte start address after overlap validation.
Sets network properties on one exact interface and node.
Sets PROFINET identity assignment on the NetworkInterface node: PnDeviceName, PnDeviceNameSetDirectly, ChangeIpAtDevice/IP-address direct assignment, PnDeviceNameAutoGeneration, and optionally IpProtocolSelection.
Attempts exact prepared CPU creation once, without save or retry.
Creates a new subnet in the project.
Removes one or more devices from the project.
Deletes a subnet from the project.
Exports hardware configuration of a device to an AML file asynchronously and returns a jobId.
Lists compatible module slots for a parent device and order number.
Reads current CPU properties (clock memory, system memory configuration).
Gets detailed hardware information (modules, interfaces, addresses) for a device.
Lists the exact ordered network interfaces and node indexes accepted by configure_network, including the canonical displayed target.
Gets physical network connections (neighbors) for a specific device.
Lists devices in the parking lot (unplaced devices).
Dumps the Openness attributes exposed by the PROFINET NetworkInterface node used by configure_profinet_identity.
Gets all physical network connections between devices in the project.
Returns a read-only snapshot of the TIA Portal Device view, Topology view and Network view tables, including columns for empty sections.
Imports AutomationML through the project-wide Siemens CAx provider and may replace existing devices.
Parses an AutomationML .aml exchange into a bounded read-only engineering preview.
Validates a raw PROFIBUS .gsd or PROFINET .gsdml station-description file without installing or importing it.
Lists all PLC and HMI stations with explicit stationName, cpuName and main-module identity fields.
Lists all IO systems across all project subnets.
Lists all subnets defined in the current project.
Plugs a hardware I/O module (DI, DQ, AI, AQ, etc.) into a device at the next available slot or a specific slot.
Prepares explicit CPU configuration questions from the server catalogue, or reviews an existing CPU without recreation.
Compares a bounded AutomationML preview with one read-only TIA device hardware snapshot.
Renames a hardware station or device item.
Searches the Siemens hardware catalog for devices by name or order number.
Starts compatible-slot discovery as a cancellable compatible-slots-job/1 job.
Communication Settings
(6)Creates a new PG/PC access point in the Windows registry.
Deletes a PG/PC access point from the Windows registry.
Runs a diagnostic on the PG/PC interface configuration.
Lists all PG/PC access points configured in Siemens online access settings (legacy SINEC registry and modern Simatic OAM XML).
Lists available PG/PC parameter sets from Siemens XML configuration files.
Changes the parameter set (communication interface) assigned to an access point.
CPU Services
(7)Creates a new OPC UA user on the CPU.
Creates a new web server user on the CPU.
Deletes an OPC UA user from the CPU.
Deletes a web server user from the CPU.
Gets the CPU's OPC UA server configuration: enabled state, port, users, and server interfaces.
Gets the CPU's built-in web server configuration: enabled state, users, and user-defined pages.
Inspects Siemens Openness services exposed by the CPU DeviceItem.
PLC Software & Blocks
(31)Adds a new member (variable) to a block's interface.
Compiles a single block (software only, not full device compile).
Creates a new folder in the block structure of a PLC device.
Creates a snapshot of a block's current state (for undo).
Creates a folder in the external source structure of a PLC device.
[DEPRECATED - use create_program_block with language:'SCL' instead] Creates a new SCL block (FB/FC) with SIMPLE logic only (assignments, basic expressions).
Deletes one or more program blocks.
Deletes a folder from the block structure of a PLC device.
Deletes an external source from a PLC device.
Deletes a folder from the external source structure of a PLC device.
Exports a block to a SimaticML XML file.
Exports a block as SCL/STL source document.
Exports ProDiag supervision information for a block.
Gets the block interface and decoded code.
Gets the know-how protection status of a block (protected, protectable).
Gets program block structure.
[DEPRECATED - use create_program_block with language:'SCL' and sclSource parameter instead] Imports SCL source code text, generates the corresponding PLC blocks, and cleans up the temporary source.
Imports SCL source code from a local file path, generates the corresponding PLC blocks, and cleans up the temporary source.
Lists all program blocks (OB, FB, FC, DB) for a specific device.
Lists all external sources on a PLC device.
Restores a block to its last snapshot state.
Loads start values into actual values of a data block.
Moves one or more blocks to a different folder.
Applies know-how protection to a compiled block.
Applies know-how protection to multiple blocks (best-effort).
Removes a member from a block's interface.
Renames a program block.
Sets the Namespace attribute on an existing block.
Removes know-how protection from one or more blocks.
Rewrites only the SCL body of an existing SCL block while preserving its confirmed current interface.
Updates an existing member in a block's interface.
Block Generation
(4)UNIFIED tool for creating ANY PLC block.
[DEPRECATED - use create_program_block instead] Generates a new program block (FB, FC, OB, DB) or UDT from a structured description and imports it into the project.
[DEPRECATED - use create_program_block with language:'GRAPH' instead] Generates a GRAPH (SFC/Sequential Function Chart) Function Block and imports it into the project.
Returns a complete step-by-step guide with minimal working JSON examples for generating program blocks in the specified language using generate_and_import_block.
Software Units
(7)Adds a dependency relation to a software unit.
Creates a new standard software unit.
Deletes a standard software unit by name.
Gets dependency relations for a software unit.
Lists all software units (standard + safety) for a device.
Sets a block or PLC type as Published or Unpublished within a software unit.
Sets the namespace preset on a software unit.
Tags & Constants
(25)Creates a new user constant in a tag table.
Creates a single PLC tag.
Creates a tag table below an exact parent, or in the legacy Main root.
Creates a folder in the tag table structure of a PLC device.
Creates multiple PLC tags in a single call (additive, does NOT overwrite existing tags).
Deletes a user constant from a tag table.
Deletes one or more PLC tags.
Deletes a PLC tag table.
Deletes a folder from the tag table structure of a PLC device.
Exports the table selected by tableIdentifier, or a legacy Main-root table, to CSV.
Exports the table selected by tableIdentifier, or a legacy Main-root table, to XLSX.
Exports the table selected by tableIdentifier, or a legacy Main-root table, to SimaticML XML.
Gets all tags across all tag tables for a device.
Gets the hierarchical tree of tag tables including folders.
Alias for list_tag_tables.
Imports multiple PLC tags into a specific tag table.
Imports tags from a CSV file into a tag table.
Imports tags from an Excel (.xlsx) file into a tag table.
Lists constants from the table selected by tableIdentifier, or from a legacy Main-root table.
Lists all PLC tag tables for a specific device.
Lists tags from a canonical tableIdentifier, or from a legacy root tableName.
Renames an existing PLC tag without changing its data type, address, comment or HMI flags.
Renames a PLC tag table.
Updates an existing user constant.
Updates properties of an existing PLC tag.
Data Types (UDT)
(10)Creates a new User-Defined Type (UDT) with specified members.
Creates a folder in the UDT structure.
Deletes one or more User-Defined Types (UDTs).
Deletes a folder from the UDT structure.
Exports a UDT to an XML file.
Gets detailed information about a specific UDT, including its members read through a provider export.
Gets the hierarchical tree structure of UDTs including folders, metadata only.
Imports a UDT from an XML file.
Lists all User-Defined Types (UDT) for a specific PLC device, metadata only.
Updates an existing UDT (rename and/or replace members).
Watch & Force
(12)Adds entries (variables to monitor) to an existing watch table.
Removes ALL entries from a watch table (keeps the table itself).
Creates a folder in the watch/force table structure of a PLC device.
Creates a new watch table in a PLC device.
Deletes a folder from the watch/force table structure of a PLC device.
Exports a watch table to an XML file.
Gets entries of a specific force table.
Gets detailed information and entries of a specific watch table.
Imports a watch or force table from an XML file.
Lists all force tables for a specific PLC device.
Lists all watch tables for a specific PLC device.
Removes specific entries from a watch table by their address.
PLC Alarms
(11)Creates a user-defined PLC alarm text list from a library master copy.
Deletes a user-defined PLC alarm text list.
Exports PLC alarm instance texts (multilingual alarm messages) to an XLSX file.
Exports PLC alarm text lists to an XLSX file.
Exports ProDiag supervision settings to an XML file via SupervisionSettingsProvider.
Exports ProDiag supervisions to an XLSX file.
Lists all PLC alarm text lists (user + system) for a device.
Imports PLC alarm text lists from an XLSX file (overwrites existing).
Imports ProDiag supervision settings from an XML file via SupervisionSettingsProvider.
Imports ProDiag supervision settings from an XLSX file (overwrites existing).
Imports ProDiag supervisions from an XLSX file (overwrites existing).
HMI
(54)Adds a graphical element to an HMI screen.
Batch-adds multiple graphical elements in a single operation (single XML round-trip, much faster).
Configures HMI runtime settings.
Modifies properties of an HMI screen (e.g.
Modifies properties of an existing screen element.
Creates a new HMI graphic list.
Creates an HMI alarm (discrete or analog) on a WinCC Unified device.
Creates a new HMI connection to a PLC device.
Creates a new HMI update cycle.
Creates a new HMI screen, screen template, or popup.
Creates a new HMI script.
Creates a new HMI tag in a tag table.
Creates a new HMI tag table on a device.
Creates multiple HMI tags in a single batch import.
Creates a new HMI text list with optional entries (index→text mappings).
Deletes an HMI alarm (discrete or analog) by name.
Deletes one or more HMI connections.
Deletes one or more HMI screens.
Deletes an HMI tag from a tag table.
Deletes an HMI tag table by name.
Deletes multiple HMI tags from a tag table in a single operation.
Deletes one or more screen elements.
Lists HMI alarm classes (errors, warnings, etc.).
Lists HMI analog alarms.
Lists all HMI/PLC connections.
Lists all HMI cycles and their update times.
Lists HMI discrete alarms.
Lists HMI library items (Faceplates, Styles) with their versions.
Lists HMI Data Logs, Alarm Logs and Audit Trails (Unified).
Gets the WinCC Unified Plant View tree.
Gets HMI runtime settings like languages and OPC UA config (Unified).
Returns screen items and geometry.
Gets the global elements for a given HMI device.
Gets the screen overview for a given HMI device.
Gets the full tree of Screens, Popups, and Templates.
Reads the source code of an HMI script.
Gets the tree of HMI scripts (VBScript for Comfort/Advanced, JavaScript for Unified).
Gets the full folder tree and tag tables.
Reads ALL properties, dynamic bindings, and events of a screen item.
Lists library types like Faceplates or Styles.
Lists all multilingual graphics in the HMI.
Lists HMI tag tables on a device.
Lists all HMI tags in a specific tag table with their data types and addresses.
Lists all Text and Graphic lists.
Modifies the source code of an existing HMI script (exports XML, updates SourceCode, reimports).
Removes animations/dynamizations from a screen item.
Reviews or applies the TIA Portal HMI Device Wizard on an existing HMI.
Sets an appearance animation on a screen item - changes colors or visibility based on tag value ranges.
Creates an event handler on a screen item or on the screen itself.
Creates a flashing dynamization on a screen item property.
Sets a movement animation on a screen item. movementType: 'horizontal' (X only), 'vertical' (Y only), 'diagonal' (X+Y linked), 'direct' (X and Y controlled by separate tags).
Creates a script-based dynamization (JavaScript) on a screen or screen item property (WinCC Unified).
Binds an HMI tag to a screen item property.
Sets a visibility animation on a screen item based on tag value range.
Online & Download
(15)Clears the online authentication password for a device.
Compares online and offline programs for a device to detect differences.
Starts an asynchronous download job and returns a jobId.
Aggregates the Siemens Openness information T-IA Connect can read for TIA Portal Online & diagnostics: connection, RUN/STOP, module/station metadata, PROFINET/IP, diagnostic status, cycle, memory, LEDs, services, and explicit notAvailable reasons for diagnostic buffer or certificate/trust data when Siemens does not expose them.
Gets the current connection state, operating state, and discovered online CPU diagnostics.
Gets the online authentication password status for a device (whether a password is stored).
Gets the current online connection state (connected/disconnected) of a PLC device.
Looks up the embedded T-IA Connect online/download compatibility matrix before go_online or download_to_plc.
Disconnects from a PLC device.
Starts an asynchronous online connection job and returns a jobId.
Scans Siemens Online access interfaces through Openness GetAccessibleDevices without going online or downloading.
Stores a complete login for the current project/device.
Starts the CPU through TIA Openness (sets to RUN mode).
Stops the CPU (sets to STOP mode).
Starts an asynchronous upload job from the physical PLC device to the TIA Portal project and returns a jobId.
PLCSim Simulation
(43)Read multiple PLC tags at once.
Set values on multiple simulation widgets in a single call.
Write multiple PLC tags at once.
Connect to a PLCSim Advanced instance for tag read/write operations.
Create (register) a new PLCSim Advanced instance with the specified name.
Delete (unregister) one or more PLCSim Advanced instances and delete the default Siemens persistence folder by default.
Explicitly delete the default Siemens PLCSIM Runtime\Persistence folder for one instance.
Delete a simulation profile from disk by file name.
Disconnect from the currently connected PLCSim Advanced instance.
Get the simulation configuration of an instance (scale factor, strict motion timing, CPU type).
Get PLCSIM Advanced diagnostics for an instance, including LED states when the runtime exposes them.
Get the current operating state of a specific PLCSim Advanced instance (Off, Booting, Stop, Run, Freeze, ShuttingDown).
List PC network interfaces visible to PLCSIM Advanced Runtime Manager for TCP/IP binding/mapping.
Get the current IP configuration (IP, subnet, gateway) of a PLCSim Advanced instance interface.
Get diagnostics for one default Siemens PLCSIM Runtime\Persistence folder.
Get the current Runtime Manager configuration (network mode, port, strict motion timing).
Get the current state of the simulation engine: running status, active profile, widget states, and supported widget types.
List all registered PLCSim Advanced instances with their names, IDs and states.
List default Siemens PLCSIM Runtime\Persistence folders with size, timestamps, registered-state and safe-delete diagnostics.
List saved simulation profiles.
List available PLC tags from the connected instance.
Load a simulation profile from disk by file name.
Perform a memory reset on one or more PLCSim Advanced instances.
Power off one or more PLCSim Advanced instances.
Power on one or more registered PLCSim Advanced instances (transitions from Off to Stop state).
Read the current value of a PLC tag from the connected PLCSim Advanced instance.
Force a refresh of the tag list from the connected PLCSim Advanced instance.
Run the deterministic PLCSIM repair sequence after MRES or invalid network state: read diagnostics, power on if needed, apply target network with readback, optionally switch to RUN, and return final ProductLed/LED diagnostics.
Switch one or more registered PLCSim Advanced instances to RUN mode after a program has been downloaded.
Save a simulation profile to disk as JSON.
Update the simulation configuration of an instance.
Apply PLCSIM Advanced virtual switch bindings.
Configure the IP address, subnet mask and default gateway of a PLCSim Advanced instance interface.
Update the Runtime Manager configuration.
Change the Runtime Manager communication port.
Set the value of a simulation widget (e.g. click a button, move a slider).
Start the PLCSim Advanced Runtime Manager.
Start the simulation engine with a given profile (JSON).
Preflight diagnostic for PLCSim Advanced.
Switch one or more PLCSim Advanced instances to STOP mode.
Stop the running simulation engine.
Update an existing simulation profile.
Write a value to a PLC tag on the connected PLCSim Advanced instance.
PLC Tests
(5)Save a PLC test case.
Delete a saved PLC test case by name.
Get the results from the last test suite run.
List all saved PLC test cases.
Run PLC test(s) against a PLCSim Advanced instance.
FAT / SAT
(3)Generates a Factory Acceptance Test (FAT) report.
Generates a Site Acceptance Test (SAT) report.
Generates a support reproduction evidence report from the last selected PLC test run.
Libraries
(21)Archives an open global library to a compressed file asynchronously and returns a jobId.
Closes an open global library.
Compares two versions of a library type to find differences.
Creates a new object from a library type version.
Creates a new object (block, UDT) from a master copy.
Creates a new global library asynchronously and returns a jobId.
Creates a new version of a library type from a source object (block or UDT).
Creates a master copy from an existing block, UDT, or tag table.
Creates a folder in the Master Copies section of a library.
Deletes a library type.
Deletes a master copy from a library.
Gets cross-references for a PLC block or tag.
Gets the hierarchical tree structure of an open global library.
Gets the library types (versioned types) from a library.
Gets the master copies from a library.
Gets information about the project library.
Gets the hierarchical tree structure of the project library including Master Copies and Types.
Lists all available global libraries registered in TIA Portal.
Opens a global library file (.al19, .al18, etc.).
Saves changes to an open global library.
Sets the default version for a library type.
Motion & Drives
(12)Creates a new Technological Object on a device.
Deletes a Technological Object (axis, PID, cam, etc.) from a device.
Gets a specific parameter value from a Drive object.
Lists all parameters of a specific Drive object.
Lists telegrams configured on a Drive object (main, safety, auxiliary).
Lists all Drive objects for a device (simple name list).
Lists all Drive objects with details (name, category, parameter count, telegram count).
Gets detailed info about a specific Technological Object including all its parameters (axis config, PID tuning, etc.).
Lists all Technological Objects (TO) like Axes, Cams, PIDs, etc. for a device.
Gets a specific parameter value from a Technological Object.
Sets a parameter value on a Drive object.
Sets a parameter value on a Technological Object.
Safety
(8)Creates a new F-runtime group.
Deletes an F-runtime group by name.
Lists safety runtime groups for an F-CPU.
Gets safety settings (block number ranges, modification state).
Gets safety signatures for an F-CPU.
Gets a full safety summary for an F-CPU: runtime groups, signatures, and settings.
Logs in to the safety offline program (required before making safety changes).
Logs off from the safety offline program.
Security & Users
(27)Applies explicit CPU configuration deltas after all-request preflight and exact diagnosis binding.
Assigns one or more roles to UMAC project users.
Clears the stored default CPU master secret password.
Configures required CPU security settings for compilation/download.
Creates a new UMAC custom role.
Creates a new UMAC project user with specified roles.
Deletes a UMAC custom role.
Deletes a UMAC project user.
Deletes a local encrypted secret by id or label.
Reads existing CPU configuration and requested differences without resolving secrets or writing.
Reports whether a default CPU master secret password is configured.
Lists all UMAC roles (system + custom) available in the project.
Lists all UMAC project users with their assigned roles.
Gets the current access protection level of a PLC CPU.
Gets metadata for one local secret by id or label.
Gets a summary of security settings for a device, including protection levels and UMAC users.
Gets health and status information about the TIA Portal API server and connected instances.
Lists local secret metadata.
Manages the Master Secret (global project protection) for a device.
Removes one or more roles from UMAC project users.
Resets (removes) an access password for a specific protection level on the CPU.
Reviews or applies the TIA Portal PLC security wizard on an existing CPU.
Stores a default CPU master secret password securely.
Sets the display password (Anzeige-Passwort) for CPU protection display.
Sets an access password for a specific protection level on the CPU.
Sets the current access protection level of a PLC CPU without changing passwords.
Stores a local encrypted secret with metadata.
History & Snapshots
(4)Creates a manual snapshot of a block or tag table.
Gets statistics for snapshots authorized to the current project.
Lists all available snapshots for a specific item (block or tag table).
Restores a block or tag table to a previous state from a snapshot ID.
Source Control
(19)Switches to an existing branch.
Creates a new branch from the current HEAD.
Deletes a branch.
Lists all branches (local and remote) with their last commit info.
Exports all project items (blocks, tags, UDTs, watch tables, hardware) and creates a Git commit.
Gets or sets the Git configuration.
Shows differences between two commits (or between a commit and HEAD).
Imports all blocks, tag tables and UDTs from the VCS source/ working directory back into TIA Portal, restoring the folder structure from the directory layout.
Initializes a Git repository for the current TIA Portal project.
Shows the commit history with SHA, message, author, and timestamp.
Merges a branch into the current branch.
Pulls (fetch + merge) from a remote repository.
Pushes commits to a remote repository.
Adds a remote repository (e.g., GitHub, Gitea, GitLab).
Lists all configured remote repositories.
Removes a remote repository by name.
Restores a block, UDT, or tag table from a previous commit by re-importing its XML into TIA Portal.
Exports the full project (blocks, tags, UDTs, watch tables, hardware) to the source control working directory WITHOUT committing.
Shows modified files since the last commit.
Version Control Interface
(7)Creates a new VCI workspace.
Creates a VCI workspace user group.
Deletes a VCI workspace by name.
Lists VCI workspace groups (folder structure).
Gets mappings (project object ↔ workspace path) for a workspace.
Lists all VCI workspaces in the project.
Synchronizes a workspace (all mappings).
Workplans
(14)Adds an artifact to a WorkplanPhase.
Adds an execution log to a Workplan, optionally linked to a WorkplanPhase.
Adds a WorkplanPhase to a Workplan.
Archives a Workplan through the accepted Workplan transition rules.
Creates a new Workplan.
Gets compact agent context for the active WorkplanPhase without raw CDC or full Workplan payload.
Gets a Workplan by id.
Gets Workplan progress with compact nextReadyPhase projection.
Lists Workplans, optionally filtered by projectKey.
Marks a ready or in-progress WorkplanPhase as Implemented after the service proof gate passes, without verifying it.
Sets the active WorkplanPhase when its dependencies are ready.
Updates a full Workplan aggregate.
Updates an existing WorkplanPhase.
Updates WorkplanPhase verification.
Pipelines
(9)Delete a saved pipeline by name.
Load a pipeline definition by name.
Get a pipeline template by ID.
Get pipeline execution history.
Create a new pipeline from a template.
List all saved CI/CD pipelines for TIA Portal automation.
List all available pipeline templates (pre-configured CI/CD pipelines).
Execute a pipeline (saved or inline).
Create or update a pipeline definition.
Patterns
(5)Gets the full definition of a pattern: blocks with interface, tags, code, folders, and parameters.
Returns a guide about the pattern library: naming conventions, workflow, available categories, and how to customize patterns with parameters.
Creates all blocks, tags, folders, and instance DBs defined by a pattern in the target device.
Lists available industrial patterns (motor, cylinder, sensor, safety...) from the built-in pattern library.
Searches industrial patterns by keyword.
Reports
(2)Generates a complete project deliverable ZIP containing the PDF report, Excel data files, and the TIA Portal project archive (.zap).
Generates a PDF project report with optional Excel data files.
AI Assistant
(7)Send a message to the in-app AI Copilot.
Clear the copilot chat history.
Export the server-side Copilot chat history as Markdown or JSON.
Read Copilot history. source=desktop returns the full thread currently shown in the T-IA Connect window (user messages, assistant replies and tool activity, oldest first), with or without an open project. source=conversation reads one conversation created by copilot_chat. source=persistent reads saved project history.
Check the copilot's status and retrieve its last response.
Returns the current copilot configuration and instance context: provider, model, code model, custom endpoint, enabled state, storage mode, machine name, process ID, and settings source.
Stop the copilot's current operation.
LLM Tips
(11)Build an anonymized BugTrace ticket draft from a local LLM tip.
Get a local dashboard summary for LLM tips: categories, tools, usefulness, consultations, duplicates, lifecycle.
Retrieve local usage statistics for the LLM tips knowledge base.
Retrieve tips from the communal LLM knowledge base.
Preview the sanitized/anonymized payload that would be sent for a local LLM tip.
Record whether a local tip was useful, partially useful, not useful, obsolete, or dangerous/inaccurate.
Submit a troubleshooting tip or lesson learned to the communal LLM knowledge base.
Submit one existing LLM tip as anonymized product feedback for improving T-IA Connect.
Suggest local LLM tips that may match an error message and MCP tool context.
Update the lifecycle status of a local LLM tip.
Upvote a tip that you found helpful or that you can confirm is accurate.
Knowledge
(3)Retrieves the full technical documentation for a specific help topic found by search_tia_help.
Searches the official Siemens TIA Cloud documentation (docs.tia.siemens.cloud).
Searches the official TIA Portal local help documentation (F1).
Documentation
(3)Gets the content of a specific T-IA Connect documentation section.
Lists all available T-IA Connect documentation sections.
Searches T-IA Connect documentation for a keyword or phrase.
Custom Documentation
(5)Gets the full text of a specific chunk from a custom document.
Gets the full extracted text of a custom document.
Gets statistics about the custom knowledge base (document count, chunk count, errors, directory path).
Lists all documents indexed in the user's custom knowledge base.
Searches the user's custom knowledge base (PDF, Markdown, TXT, HTML documents) for relevant information.
Discovery
(5)Checks the server-side MCP catalog for critical T-IA Connect tools and returns a clear status for detecting partial client-side tool discovery after reconnect.
Returns the full description and input schema for one MCP tool by name.
Returns a dynamic reference of the MCP tool catalog, grouped by module/category.
Returns a compact guide for choosing MCP tools and documentation for common T-IA Connect workflows.
Searches the available T-IA Connect MCP tools and returns compact matches with module/category hints.
CODESYS
(20)Adds a device to the CODESYS project.
Builds (compiles) the application for a device.
Closes the currently open CODESYS project.
Creates a LAD (Ladder Diagram) POU in a CODESYS device application.
Creates a POU (FB, FC, or Program) in a device application.
Creates a new CODESYS project at the specified path.
Exports a POU to PLCopenXML.
Lists POUs (program blocks) for a device.
Lists all devices in the current CODESYS project.
Gets the declaration code of a GVL (Global Variable List).
Gets the declaration and implementation code of a POU.
Gets info about the currently open CODESYS project (name, path, dirty state).
Returns a complete overview of all POUs, GVLs, types, and languages in the device application.
Gets the CODESYS version and executable path.
Lists all devices available in the CODESYS device repository (catalog).
Lists all GVLs (Global Variable Lists) in the device application.
Opens an existing CODESYS project.
Saves the currently open CODESYS project.
Sets the declaration and/or implementation code of a POU.
Updates the LAD body (and optionally declaration) of an existing CODESYS POU by re-importing PLCopenXML with ConflictResolve.Replace.
Server & System
(10)Lists installed TIA Portal versions and distinguishes the configured preference, authoritative selection, loaded runtime, selection reason, and exact loaded Openness assembly.
Returns all T-IA Connect features with their license status (enabled/disabled) and description.
Returns the effective local MCP approval registry for the current authenticated session.
Returns the current health status, version, and environment of the T-IA Connect server.
Returns matching tail lines from a bounded live-file scan (at most 1 MiB).
Returns recent T-IA Connect operation history captured by this server for compile, download, go_online, PLCSIM and job operations.
Lists all available log files in the T-IA Connect logs directory with their sizes and last modified dates.
Lists all running T-IA Connect project instances.
Opens or focuses the local MCP Approval Center.
Runs a comprehensive self-test of the T-IA Connect server.
Bridge (broker)
(7)Broker: clears the explicit target selection so the bridge can return to automatic local discovery.
Broker: compiles devices across all running T-IA Connect project instances and returns a compact result grouped by instance, project, and device.
Broker: returns the MCP bridge target currently selected for subsequent project/tool calls.
Broker: lists compact compile targets across all running T-IA Connect project instances without switching the MCP target.
Broker: lists running T-IA Connect instances visible to the local MCP bridge, with the currently selected target if any.
Broker: selects the T-IA Connect instance that the local MCP bridge must route subsequent project/tool calls to.
Broker: starts a new empty T-IA Connect project instance on the next available local API port.
根据 T-IA Connect 2.5.354 的 API 契约生成。
兼容的 MCP 客户端
在您首选的 AI 开发环境中使用 T-IA Connect
Cursor
AI 优先的代码编辑器。将 T-IA Connect 添加为 MCP 服务端,即可直接在 Cursor 中使用 Claude 或 GPT 处理 TIA Portal 项目。
VS Code + Continue
在 VS Code 中使用 Continue 扩展连接到 T-IA Connect 的 MCP 服务端。支持任何 AI 模型提供商。
Claude Code (CLI)
Anthropic 官方的 Claude CLI。原生支持 MCP -- 添加 T-IA Connect 即可从终端与 TIA Portal 交互。
Windsurf
Codeium 带有 MCP 支持的 AI IDE。连接 T-IA Connect,在代码编辑工作流中进行 TIA Portal 操作。
Claude Desktop
Anthropic 的桌面应用。将 T-IA Connect 配置为 MCP 服务端,获得对话式的 TIA Portal 使用体验。
自定义集成
使用开放规范构建您自己的 MCP 客户端。从 CI/CD 流水线、脚本或自定义工具中自动化 TIA Portal 操作。
Step-by-step guide
ChatGPT + TIA Portal — Connect GPT-4o via MCP
安全:原生本地部署
除非您选择云端 AI 提供商,否则您的 PLC 代码永远不会离开您的网络
本地 MCP 服务端
T-IA Connect 运行在您的工程工作站上。无云端服务器,无外部依赖。MCP 服务端仅与本地 TIA Portal 实例通信。
您的 AI,您的选择
将 AI 请求路由到 Claude/GPT API(数据传输到其服务器)或通过 Ollama 路由到本地模型(零云端暴露)。您可以根据每个会话进行选择。
无数据收集
T-IA Connect 不收集、存储或传输您的项目数据。它是一个透明的桥梁 -- 数据在您的 AI 客户端和 TIA Portal 之间流动,不保留任何内容。
兼容 NIS2 和 IEC 62443
配合本地模型的本地部署方案符合最严格的工业网络安全要求。无外部数据处理,无云端依赖。
3 分钟快速入门
从下载到生成您的第一个 AI 驱动的 PLC 块
安装 T-IA Connect
下载安装程序,在您的工程工作站上运行。T-IA Connect 会自动检测您的 TIA Portal 安装。
配置您的 MCP 客户端
在您的 AI 客户端(Cursor、VS Code、Claude Code)中将 T-IA Connect 添加为 MCP 服务端。只需一行 JSON 配置即可。
打开 TIA Portal 项目
启动 TIA Portal 并打开您的项目。T-IA Connect 通过 Openness API 进行连接,并将所有 492 个工具开放给您的 AI。
常见问题解答
什么是 Model Context Protocol (MCP)?
MCP 是 Anthropic 发布的一个开放标准,定义了 AI 模型如何与外部工具交互。它规定了用于工具发现、调用和结果处理的 JSON-RPC 协议。可以将其视为 AI 的 USB 接口 -- 任何 AI 模型都可以使用任何兼容 MCP 的工具。T-IA Connect 为 TIA Portal 实现了这一协议。
T-IA Connect 是否支持 TIA Portal Openness?
是的。T-IA Connect 封装了官方的西门子 TIA Portal Openness API (.NET/COM),并将其暴露为 MCP 工具。这意味着您需要 TIA Portal 专业版或更高版本(包含 Openness),并且在您的工作站上安装了 Openness 组件。
我可以不配合 AI 而是用于自动化脚本吗?
是的。虽然 T-IA Connect 是为 AI 交互设计的,但 MCP 协议适用于任何客户端。您可以构建自定义脚本来调用 T-IA Connect 的工具,以实现 TIA Portal 操作的自动化 -- 批量创建块、变量导入、自动编译等。
哪些版本的 TIA Portal 通过 T-IA Connect 支持 MCP?
T-IA Connect 支持 TIA Portal V17、V18、V19、V20 和 V21。所有支持 Openness API 的版本均兼容。各版本的 MCP 工具集相同,但某些功能(如 PLCSim Advanced)需要特定的 TIA Portal 版本。