Token导航 LogoToken导航TokenDH.com
Modbus MCP logo
搜索检索未说明官方级别未说明来源级核验

Modbus MCP

MCP Server

An MCP server that standardizes and contextualizes industrial Modbus data.

工具数

0

提示词数

0

GitHub Stars

23

资源数

0
PythonClaude自动化控制Claude DesktopClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

kukapay

提供方

kukapay

最后核验

2026/5/18 04:07

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

Modbus MCP服务器

一个标准化和上下文化Modbus数据的MCP服务器,实现了AI代理与工业物联网系统的无缝集成。

Status

特性

  • Modbus工具:

- 读/写保持寄存器(read_register, write_register). - 读/写线圈(read_coils, write_coil). - 读取输入寄存器(read_input_registers). - 读取多个保持寄存器(read_multiple_holding_registers).

  • 提示:使用可定制的提示分析Modbus寄存器值(analyze_register).
  • 柔性连接:支持TCP、UDP或串行Modbus,通过环境变量配置。

需求

  • python: 3.10
  • 紫外线 用于依赖性和虚拟环境管理。

安装

  1. 安装 uv:
   curl -LsSf https://astral.sh/uv/install.sh | sh
  1. 克隆存储库:
   git clone https://github.com/kukapay/modbus-mcp.git
   cd modbus-mcp
  1. 再进行:
   uv sync

配置

服务器使用通过环境变量指定的参数连接到Modbus设备。将这些变量设置为 .env 文件或shell环境。

环境变量

变量描述默认值必填
MODBUS_TYPE连接类型: tcp, udp,或 serialtcp是的
MODBUS_HOSTTCP/UDP的主机地址127.0.0.1对于TCP/UDP
MODBUS_PORTTCP/UDP端口502对于TCP/UDP
MODBUS_DEFAULT_SLAVE_ID从属ID1对于TCP/UDP
MODBUS_SERIAL_PORT串行端口(例如。, /dev/ttyUSB0, COM1)/dev/ttyUSB0对于串行
MODBUS_BAUDRATE串行波特率9600对于串行
MODBUS_PARITY串行奇偶校验: N (无), E (甚至), O (奇数)N对于串行
MODBUS_STOPBITS串行停止位1对于串行
MODBUS_BYTESIZE串行字节大小8对于串行
MODBUS_TIMEOUT串行超时(秒)1对于串行

示例 .env 文件

对于TCP:

MODBUS_TYPE=tcp
MODBUS_HOST=192.168.1.100
MODBUS_PORT=502
MODBUS_SLAVE_ID=1

对于序列号:

MODBUS_TYPE=serial
MODBUS_SERIAL_PORT=/dev/ttyUSB0
MODBUS_BAUDRATE=9600
MODBUS_PARITY=N
MODBUS_STOPBITS=1
MODBUS_BYTESIZE=8
MODBUS_TIMEOUT=1

用法

为Claude Desktop安装

配置文件:

{
   "mcpServers": {
       "Modbus MCP Server": {
           "command": "uv",
           "args": [ "--directory", "/path/to/modbus-mcp", "run", "modbus-mcp" ],
           "env": { "MODBUS_TYPE": "tcp", "MODBUS_HOST": "127.0.0.1", "MODBUS_PORT": 502 },
       }
   }
}

使用工具

备注:自然语言支持取决于客户端解析提示并将其映射到工具的能力。MCP检查器需要结构化的JSON,但下面的示例显示了会话输入是如何翻译的。

  1. 读取持有登记簿:

- 提示:

     Please read the value of Modbus holding register 0.

- MCP检查器JSON:

     {
       "tool": "read_register",
       "parameters": {"address": 0, "slave_id": 1}
     }

- 期望输出: Value:

  1. 写入持有登记簿:

- 提示:

     Set Modbus holding register 10 to the value 100.

- MCP检查器JSON:

     {
       "tool": "write_register",
       "parameters": {"address": 10, "value": 100, "slave_id": 1}
     }

- 期望输出: Successfully wrote 100 to register 10

  1. 读线圈:

- 提示:

     Check the status of the first 5 Modbus coils starting at address 0.

- MCP检查器JSON:

     {
       "tool": "read_coils",
       "parameters": {"address": 0, "count": 5, "slave_id": 1}
     }

- 期望输出: Coils 0 to 4: [False, False, False, False, False]

  1. 写入线圈:

- 提示:

     Turn on Modbus coil 5.

- MCP检查器JSON:

     {
       "tool": "write_coil",
       "parameters": {"address": 5, "value": true, "slave_id": 1}
     }

- 期望输出: Successfully wrote True to coil 5

  1. 读取输入型寄存器:

- 提示:

     Read the values of 3 Modbus input registers starting from address 2.

- MCP检查器JSON:

     {
       "tool": "read_input_registers",
       "parameters": {"address": 2, "count": 3, "slave_id": 1}
     }

- 期望输出: Input Registers 2 to 4: [, , ]

  1. 读取多个保持寄存器:

- 提示:

     Get the values of Modbus holding registers 0 through 2.

- MCP检查器JSON:

     {
       "tool": "read_multiple_holding_registers",
       "parameters": {"address": 0, "count": 3, "slave_id": 1}
     }

- 期望输出: Holding Registers 0 to 2: [, , ]

许可证

该项目根据MIT许可证获得许可。看 许可证 了解详情。

目录标签

目录标签

PythonClaude自动化控制research-and-data工业物联网本地部署Modbus协议数据标准化AI集成

支持客户端

Claude DesktopClaude

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

none

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明none部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP