TiaLink › 西门子 TIA Portal(博途)工程自动化
TiaLink · 博途 MCP 网关
让 Agent 直接操作西门子 TIA Portal(博途)工程:读项目、改组态、写块、编译、跑仿真
博途(TIA Portal)里最耗时间的从来不是想逻辑,是导入、改地址、编译、截图这些重复动作。TiaLink 就是给这个过程用的 TIA Portal MCP 网关,把它们交给 Agent,人只管验收。
它在博途里替你干哪些活
读:项目树、硬件明细(S7-1200 / S7-1500、ET 200 分布式 I/O、HMI 面板的型号、订货号、I/O 地址、IP)、STEP 7 程序块(OB / FB / FC / DB)、变量表、UDT 一次读出来,清单不用手工抄。
改:增删设备与模块、摆插槽、建 PROFINET 子网与 IO 系统、分配 IP;批量导入程序块与变量表,按需求生成 SCL 再编译。
验:启动 S7-PLCSIM Advanced,把工程下载进虚拟 S7-1200 / S7-1500,读写变量跑一遍测试场景,最后读回核对——不接真机也能先验证。
四类活儿,手工做和交给它的差别
| 活儿 | 手工怎么做 | 交给 TiaLink |
|---|---|---|
| 100 个 STEP 7 块的导出与编译 | 逐个右键导出、再逐个编译,半天起 | 一次批量,直接返回编译错误列表 |
| PLC 与模块清单核对 | 打开每个设备的设备视图,抄型号与 I/O 地址 | 读一遍项目树,生成清单 |
| 项目迁移 / 升级 | 上千个对象逐个处理,容易漏 | 批量导入导出,漏项可查 |
| WinCC Unified 画面与变量表 | 一张张画,规范靠记 | 按你的规范批量生成 |
覆盖范围:TIA Portal V19 / V20 / V21 里的 STEP 7(PLC 程序)、WinCC Unified(HMI 画面)与硬件/网络组态。不碰安全回路,也不替你做安全设计。未授权也能只读:连上就能读工程、读块、读硬件树;写入需要许可。
三步接入(主路径是 Streamable HTTP)
- 在装了博途 V19 / V20 / V21 的那台 Windows 上下载并安装 TiaLink 网关(博途 MCP 下载安装包与许可说明都在 /tia-link);运行网关的 Windows 账号要加进本地 Siemens TIA Openness 用户组,否则 Openness 一律报授权错误。
- 在网关控制台配一个 Bearer 令牌。还没授权也能连上只读,可以先把工程读一遍再决定给不给写权限。
- 客户端里加一个 HTTP 型 MCP 服务器,地址以 /mcp 结尾、带上 Authorization 头(见下)。只支持 stdio 的客户端用 npx tialink-mcp 转发,适配器只是转发,不解锁额外能力。
{"mcpServers":{"tialink":{"type":"http","url":"http://127.0.0.1:8080/mcp",
"headers":{"Authorization":"Bearer <你的令牌>"}}}}
接进你手里的客户端
| 客户端 | 怎么配 | 注意 |
|---|---|---|
| VS Code(Cline / Continue 等) | MCP 配置里加 type http、URL 填 http://127.0.0.1:8080/mcp、带 Authorization 头 | 博途 MCP 怎么和 VS Code 整合,卡住的通常是漏了 /mcp 后缀或没发 Bearer 头 |
| WorkBuddy | 写进 ~/.workbuddy/mcp.json,或用「插件 → MCP 服务器」粘贴同一段 JSON | 装好插件后可直接让它通过 TIA 查找程序、读块、编译 |
| Claude Code / Codex | cline 式 HTTP MCP 配置同上;只支持 stdio 时用 npx tialink-mcp 转发 | 适配器只转发,不解锁能力 |
| DeepSeek 等模型 | DeepSeek 本身不是 MCP 客户端;在支持自定义模型的客户端里把模型换成它,MCP 那头照旧连 TiaLink | 博途 MCP 接 DeepSeek 就是这么接的,别去找「DeepSeek 插件」 |
同一件事,三种做法
| 手工在博途里点 | 自己写 Openness 脚本 | TiaLink + Agent | |
|---|---|---|---|
| 上手成本 | 会博途就行 | 读西门子 Openness 文档 + 写 C#,一两周起步 | 会写清楚需求就行 |
| 批量处理 100 个块 | 逐个点,大半天 | 自己写循环、自己处理异常 | 一句话批量导入/导出/编译 |
| 出错了怎么兜 | 全靠人复核 | 校验逻辑也得自己写 | 预演 → 编译错误列表 → 仿真跑通 → 读回核对 |
| 依赖什么 | 装了博途 + STEP 7 就行 | Openness API 的版本差异自己适配 | 网关跟你的 TIA Portal 版本对齐(V19 / V20 / V21) |
常见问题
博途 MCP 怎么下载、安装、配置?
下载与许可说明在 /tia-link:装到与博途同机的那台 Windows 上,启动后按机器码申请许可,再在客户端里填 http://127.0.0.1:8080/mcp 与 Bearer 令牌。连不上先查三件事:地址有没有 /mcp 后缀、令牌有没有放进 Authorization 头、运行网关的账号在不在 Siemens TIA Openness 用户组。
博途 MCP 怎么和 VS Code 整合?
在 VS Code 的 MCP 客户端(Cline、Continue 等)里加一个 HTTP 类型服务器:URL 写 http://127.0.0.1:8080/mcp,请求头带 Authorization: Bearer <令牌>。多数「整合不上」是漏了 /mcp 后缀,或者客户端只支持 stdio——那种情况用 npx tialink-mcp 转发。
WorkBuddy 怎么连博途?能通过 TIA 查找程序吗?
能。WorkBuddy 里写 ~/.workbuddy/mcp.json,或用「插件 → MCP 服务器 → 配置 MCP」粘贴同一段 JSON;连上之后让它通过 TIA 查找程序、读块、编译都可以,未授权时是只读。
博途 MCP 能接 DeepSeek 吗?
能,但不是装「DeepSeek 插件」。DeepSeek 本身不是 MCP 客户端,正确做法是在支持自定义模型的客户端(WorkBuddy、Cline 等)里把模型换成 DeepSeek,MCP 那一头照旧连 TiaLink。
TIA Portal MCP 的标准接法是什么?
就是 MCP 的 Streamable HTTP:type 填 http、URL 以 /mcp 结尾、带 Bearer 令牌。TiaLink 不绑定任何一家客户端或模型,Claude Code、Codex、VS Code、WorkBuddy、自研工具都能接。
还没授权能不能先用?
能只读。连上网关就能读工程、读 STEP 7 的程序块与变量表、读硬件树,写入类操作需要许可——所以完全可以先拿只读把项目摸清楚,再决定要不要开写权限。
它能动 HMI 吗,还是只能改 PLC 程序?
两边都能碰:STEP 7 这一侧是程序块、变量表、UDT 的导入导出与编译;WinCC Unified 这一侧是按你的规范生成画面与变量表。硬件与网络组态(设备、模块、子网、IP)也在范围内。
工程数据会上传到你们服务器吗?
不会。网关和博途跑在同一台 Windows 上,Agent 通过局域网访问网关,工程文件、块、变量表都不出内网。
Agent 把工程写坏了怎么办?
两道保险:写之前预演、写完直接返回编译错误列表;要验证行为就下载到 S7-PLCSIM Advanced 跑一遍再读回核对。第一次上手建议在工程副本上做。
我的工程不是 V19 / V20 / V21 怎么办?
需要 V19 / V20 / V21(V21 从 TiaLink 1.5.0 起支持)。更早的 V17 / V18 工程先在博途里升上来;如果只是想验证梯形图/SCL 逻辑、暂时不碰工程本身,可以用云端 /sim。
TiaLink 是西门子官方产品吗?
不是。由汇智网出品,是第三方工具,与西门子没有隶属关系,也不是任何官方产品的别称;它调用的是你自己已经授权的博途。
先只读跑一遍,再决定给不给写权限
支持西门子 TIA Portal V19 / V20 / V21(V21 从 TiaLink 1.5.0 起支持),与博途同机运行,工程不出内网;未授权时可用只读把项目读一遍。
了解 TiaLink