
Proxus Industrial MCP Server
io.github.proxusiiotplatform由 GitHub 账号 proxusiiotplatform 发布v0.1.0-beta.7更新于 Oct 31, 2026
Read-only Modbus TCP and OPC UA access to PLCs and industrial devices, with connection diagnostics
概览
以只读方式通过 Modbus TCP 和 OPC UA 访问 PLC 与工业设备,并提供连接诊断和寄存器映射。
- 可以做什么
- 列出已配置设备及其端点、ISA-95 路径和连接状态
- 读取 Modbus 原始寄存器与位,并在 1–60 秒内轮询某地址观察其变化
- 按常见字节序将最多 16 个寄存器解码为 int、uint、float32 或 float64
- 浏览 OPC UA 节点,读取或监视最多 50 个变量及其类型、质量、状态码和时间戳
- 逐步诊断设备无法连接的原因,并给出下一步建议
- 查找、查看并校验寄存器映射,按名称读取带单位的工程值
- 适用场景
- 适合需要让助手通过 Modbus TCP 或 OPC UA 查看 PLC、电表、变频器或逆变器实时数值,或排查设备无法连接的场景,且完全不必担心写入现场设备。
- 运行要求
- 作为本地进程运行:使用发布页的平台二进制文件或已发布的容器镜像,由 MCP 客户端带配置文件路径启动。需要一份列出设备(主机、协议、可选映射)的 JSON 配置,并能通过网络访问这些设备。OPC UA 需要存放证书的 PKI 目录;密码通过 password_env 指定的环境变量提供。
安装
在 SourceWeft 中
- 打开 控制台中的 Proxus Industrial MCP Server,将其添加到工作区。
- 为需要使用其工具的对话启用该服务。
Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。
其他 MCP 客户端
参照 仓库 中的启动说明。
README
[图片] Proxus Industrial MCP Server
Gives AI assistants such as Claude Desktop, Cursor and VS Code read-only access to industrial devices. Supports Modbus TCP and OPC UA (Basic256Sha256, Aes128_Sha256_RsaOaep or Aes256_Sha256_RsaPss with Sign or SignAndEncrypt, or unsecured; anonymous or user-name login).
[An AI assistant reads a PLC, decodes a meter value and diagnoses a device that does not answer]
Condensed from a real session against simulated devices (docs/demo.json). More at proxus.io/tools/industrial-mcp-server.
Tools
Nothing can write to a device.
Register maps
With a register map the assistant reads voltage_l1_n instead of guessing that hr:0-1 is a word-swapped float.
A map lists every register of a device model: address, data type, byte order, scale (fixed, or a SunSpec scale-factor
register), unit and the meaning of enumerated values, with the vendor document it comes from. The binaries include the
open Modbus Register Maps collection (energy meters, power
analysers, drives, inverters); each release also attaches it as register-maps.json.gz.
Give a Modbus device its map in the configuration, by id or as the path of a map's JSON file:
maps_dir adds maps (or replaces built-in ones with the same id) from a folder of JSON files, as
python3 tools/maps.py build in the collection writes them. A map that does not exist stops the server at start-up with the reason. Maps tell the assistant how to
read a register, never to write one: read_named only reads.
Verify a map on your device
Most maps are transcribed from vendor documents. Ask your assistant to verify the device's map: verify_device_map
reads every register once (read-only), checks that the values are plausible (floats, frequency, voltage, power factor,
energy counters, model) and asks you to compare two values with the device's display. The result is a report and a
link that opens a prefilled issue in the map collection; you submit it under your own GitHub account, and a bot adds
you to the map's verified list. Nothing is sent without you, and the report holds check results only, no addresses,
host names or serial numbers.
OPC UA security
Set security_mode (sign_and_encrypt, sign or none) and security_policy (Basic256Sha256,
Aes128_Sha256_RsaOaep or Aes256_Sha256_RsaPss) per device. Certificates live in pki_dir (default pki/ next to the configuration file),
in the layout most OPC UA tools use:
Trust is never automatic, in either direction:
- On the first connection the server's certificate lands in
rejected/and the tool answers with its SHA-256 thumbprint. Confirm the thumbprint with the server's administrator, then move the file totrusted/. - If the server answers
BadCertificateUntrustedorBadSecurityChecksFailed, it has not trusted this client yet.proxus-mcp certificate --config <file>prints this server's certificate file and thumbprint to trust on the server.
Passwords never go in the configuration file: password_env names the environment variable that holds them. Errors
carry the OPC UA StatusCode name, the specification's description and a suggested next step.
Install
Download the archive for your platform from the releases page, unpack it, and point your MCP client
at the proxus-mcp binary (see Claude Desktop below). Each archive has a .sha256 file next to it. The binaries are
not code-signed yet: on macOS run xattr -d com.apple.quarantine proxus-mcp once after unpacking, and on Windows
choose "More info, Run anyway" the first time.
proxus-mcp --version prints the version.
Docker
The image reads /config/proxus-mcp.json and speaks MCP over stdin/stdout, so an MCP client starts it with
docker as the command and run -i --rm -v <folder>:/config ghcr.io/proxus-io/proxus-mcp:<version> as the
arguments. Devices on the host are reachable as host.docker.internal; on Linux add --network host to reach the
plant network directly. Images are published for linux/amd64 and linux/arm64.
Build
Needs the .NET 10 SDK. The protocol drivers come from the Proxus.Drivers NuGet packages (Apache-2.0).
The result is one native file, artifacts/osx-arm64/proxus-mcp (about 10 MB).
Claude Desktop
Add to claude_desktop_config.json:
Copy proxus-mcp.example.json as a starting configuration.
Tests
dotnet test tests/Proxus.Mcp.Tests: unit tests, no devices needed.tests/smoke/run_all.sh: the published binary against Modbus and OPC UA simulators (seetests/smoke/README.md).- CI (
.github/workflows/ci.yml) runs both and publishes Native AOT binaries for linux-x64, linux-arm64, win-x64 and osx-arm64.
Licence
Apache-2.0, see LICENSE.
来源:README.md,提交 362a7a4
工具
0版本历史
2- v0.1.0-beta.7最新Oct 31, 2026
- v0.1.0-beta.5Oct 30, 2026
评分
已满足适用检查项的 50%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
- 近 30 天内可连通25 分
请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。
- 已声明认证方式10 分
请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。
- 已列出工具15 分
请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。
- 描述必需15 分
- 图标10 分
- 文档15 分
- 许可证10 分