关于 PLCGateway
PLCGateway 是本地部署的网关与 SCADA 软件,提供供 AI 客户端操作 PLC、CNC 机床和控制器的 MCP 桥接程序。它可处理设备数据、报警、生产指标和配置,具体权限取决于所用令牌。
主要功能
- 01读取实时标签和历史数据
- 02查看并确认报警
- 03计算 OEE 和生产 KPI
- 04创建屏幕、仪表板和报告草稿
- 05管理设备、标签和生产资产
- 06通过 stdio 桥接程序连接
适用场景
- 01检查设备读数和趋势
- 02查看产线报警与生产损失
- 03准备班次生产仪表板
- 04添加或配置设备和标签
MCP 相关
该软件包提供 stdio 桥接程序,将 MCP 客户端请求通过 HTTP 转发至本地网络中的 PLCGateway。可用工具由所连接的 PLCGateway 版本和令牌权限决定。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
npx -y @plcgateway/mcpPLCGATEWAY_URLAddress of your PLCGateway SCADA or Connect, e.g. http://192.168.1.50:8080PLCGATEWAY_TOKEN密钥API token (PLCGateway → Settings → API token), or the MCP configuration token for device/tag setup本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
PLCGateway MCP
面向 PLC、CNC 机床和 SCADA 的 MCP 服务。 向 AI 助手询问实时设备数据、警报、历史数据和 OEE, 还可以让它在你自己的网络中添加设备、标签、画面和报告。
PLCGateway 是 PLC 网关和 SCADA 软件:它连接 PLC、CNC 机床和控制器 (Siemens S7、Modbus、Mitsubishi、Omron、Allen-Bradley、FANUC、OPC UA 等),并通过 OPC UA、MQTT、 Modbus TCP 和 REST 共享其数据。每款 PLCGateway 产品都内置 MCP 服务。此软件包是一个小型 stdio 桥接程序: 通过命令启动 MCP 服务的客户端(Claude Desktop、Claude Code、Cursor、Cline、Windsurf 等)运行此程序,它会 将所有内容转发到你网络中的 PLCGateway。
AI client ──stdio──▶ @plcgateway/mcp ──HTTP (your network)──▶ PLCGateway on your premises ──▶ PLCs & machines
- PLCGateway 在你的本地环境中运行。桥接程序只与您提供的地址通信;它不会收集任何数据,也不会将数据发送到其他地方。
- 助手使用你提供的令牌所具有的权限,与人员使用相同的角色。
你可以询问什么
- “过去 2 小时内,3 号生产线发生了多少次警报?”
- “灌装机今天的 OEE 是多少?损失时间最多的是哪里?”
- “总结一下过去 24 小时的储罐液位趋势。”
- “为 1 号生产线创建一个包含每班产量和能耗的报告仪表板。”(供你审核的草稿)
- “将位于 192.168.1.40 的 Modbus TCP 电表添加为‘2 号压缩机电能表’。”(需要 MCP 配置令牌)
工具
工具来自你连接的 PLCGateway,因此工具列表会根据你的版本和令牌权限而变化。
| 分组 | 工具 |
|---|---|
| 上下文 | get_site_context、system_status、help、list_protocols |
| 数据 | list_devices、list_tags、read_tags、query_history、write_tag |
| 警报 | active_alarms、alarm_history、alarm_stats、acknowledge_alarm、list_alarm_definitions |
| 生产 | calculate_oee、get_production_kpis、list_production_assets、list_batches、list_production_batches、set_batch_result |
| 画面和报告 | list_screens、get_screen、list_symbols、create_screen_draft、create_dashboard_draft、generate_report |
| 配置(管理员) | set_site_profile、test_device、create_device、update_device、create_tags、update_tags、define_production_asset、define_products、OPC UA 证书操作 |
完整说明:https://plcgateway.com/ai-mcp
支持的设备和协议
所有许可证均包含全部驱动程序,且不限制设备或标签数量:
Siemens S7 · Modbus TCP/RTU · Mitsubishi MC · Omron FINS · Allen-Bradley EtherNet/IP · Beckhoff ADS · FANUC FOCAS · OPC UA 和 DA · IEC 60870-5-104 · IEC 61850 · DNP3 · BACnet
数据通过 OPC UA 服务、MQTT、Modbus TCP 服务和 REST API 对外提供。详情:https://plcgateway.com/protocols
安全性
- 在本地环境中运行。 PLCGateway 不会自行向云端发送数据;工具结果只会发送给你连接的助手。 使用可自托管模型时,数据会留在你的网络中。
- 与人员使用相同的角色。 助手同样受查看者、操作员和管理员权限限制。写入数值需要操作员权限;配置需要管理员会话、本地连接或配置令牌。
- 创建草稿,不直接更改生产环境。 助手创建的画面和仪表板都是草稿,由人员审核。
- 审计跟踪。 每次写入都会记录用户名。
要求
- 可从运行 AI 客户端的计算机访问,且已启用 MCP 的 PLCGateway SCADA 或 Connect
- API token:PLCGateway → 设置 → API token(操作员权限:读取、写入、确认报警)
- Node.js 18.17 或更高版本
进行设置工作(添加设备和标签)时,请在 Settings 中创建 MCP 配置 token,完成后将其关闭。
设置
Claude Desktop、Cursor、Cline 和其他 stdio 客户端
{
"mcpServers": {
"plcgateway": {
"command": "npx",
"args": ["-y", "@plcgateway/mcp"],
"env": {
"PLCGATEWAY_URL": "http://192.168.1.50:8080",
"PLCGATEWAY_TOKEN": "<your API token>"
}
}
}
}
Claude Code
claude mcp add --transport stdio \
--env PLCGATEWAY_URL=http://192.168.1.50:8080 \
--env PLCGATEWAY_TOKEN=<your API token> \
plcgateway -- npx -y @plcgateway/mcp
支持直接使用 HTTP MCP 的客户端
无需使用此软件包;直接连接到 PLCGateway:
{ "mcpServers": { "plcgateway": { "type": "http", "url": "http://192.168.1.50:8080/mcp",
"headers": { "Authorization": "Bearer <your API token>" } } } }
在 PLCGateway 所在的计算机上
可直接将 plcgateway-scada --mcp-stdio(或 plcgateway-connect --mcp-stdio)添加为命令。
配置
| 变量 | 标志 | 说明 |
|---|---|---|
PLCGATEWAY_URL | --url | PLCGateway 地址,例如 http://192.168.1.50:8080(如果缺少 /mcp,会自动添加) |
PLCGATEWAY_TOKEN | --token | API token 或 MCP 配置 token。建议使用环境变量。 |
PLCGATEWAY_TIMEOUT | --timeout | 请求超时秒数(默认值为 120) |
使用自有证书颁发机构的 HTTPS 时,请设置 NODE_EXTRA_CA_CERTS=/path/to/ca.pem。
故障排除
桥接程序会将日志写入 stderr(可在客户端的 MCP 日志中查看)。
如果客户端连接时无法访问 PLCGateway,桥接程序会以离线模式保持运行,并仅提供一个工具:connection_status。询问助手“为什么 PLCGateway 未连接?”,即可获知原因。桥接程序会自动重试,PLCGateway 响应后,工厂工具便会显示。
| 消息 | 检查事项 |
|---|---|
PLCGateway not reachable | 地址和端口、防火墙、PLCGateway 是否正在运行 |
HTTP 401/403 | token(Settings → API token);重新生成的 token 会替换旧 token |
HTTP 404 | PLCGateway 设置中未启用 MCP,或 URL 指向了其他位置 |
获取 PLCGateway
- 每款产品和模块均可试用 30 天,无需许可证:https://plcgateway.com/contact
- 定价:每台计算机一次性购买许可证;所有版本均包含 MCP 服务:https://plcgateway.com/pricing
链接
- 产品:https://plcgateway.com
- AI 和 MCP:https://plcgateway.com/ai-mcp
- 支持的协议:https://plcgateway.com/protocols
- npm:https://www.npmjs.com/package/@plcgateway/mcp
- 桥接程序相关问题:https://github.com/CybriantOps/plcgateway-mcp/issues
许可证
本仓库中的桥接程序采用 MIT 许可证。PLCGateway 本身为专有软件,需单独授权。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。