mcpField
M
Mcp Server For Victron Energy Gx Devices

Mcp Server For Victron Energy Gx Devices

本地服务
github.com/lubosstrejcek其他63 周前更新

关于 Mcp Server For Victron Energy Gx Devices

Mcp Server For Victron Energy Gx Devices 将 AI 助手连接到本地网络中的 Victron GX 设备。它通过 Modbus TCP 或 MQTT 读取实时能源和设备数据,支持原始寄存器访问,无需云端连接。

主要功能

  1. 01读取实时太阳能、电池和电网数据
  2. 02查询逆变器及连接设备状态
  3. 03发现本地网络中的 GX 设备
  4. 04读取原始 Modbus 寄存器
  5. 05浏览离线寄存器文档

适用场景

  1. 01监控本地太阳能和电池系统
  2. 02检查设备告警与运行状态
  3. 03查找 GX 设备并梳理系统连接

MCP 相关

此 stdio MCP 服务提供 32 个工具、23 个提示词和 2 个资源,用于读取 Victron 数据、发现设备及查询寄存器文档。它通过本地 Modbus TCP 或 MQTT 连接 GX 设备。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"victron-tcp": {
"command": "npx",
"args": [
"-y",
"victron-tcp"
]
}
}
}
启动命令npx -y victron-tcp

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npmvictron-tcp

工具

32

收录的工具列表 · 更新于 3 周前

参数类型必填说明
hoststring否GX 设备 IP 地址或主机名。默认使用 VICTRON_HOST 环境变量。
portinteger否Modbus TCP 端口。默认使用 VICTRON_MODBUS_PORT 环境变量或 502。
transportenum否传输协议。默认使用 VICTRON_TRANSPORT 环境变量或 "modbus"。modbus | mqtt
mqttHoststring否MQTT Broker 主机。默认使用 "host" 参数或 VICTRON_HOST 环境变量。
mqttPortinteger否MQTT Broker 端口。默认使用 VICTRON_MQTT_PORT 环境变量或 1883。
portalIdstring否用于 MQTT 主题的 Venus OS 门户 ID。使用 victron_mqtt_discover 查找。默认使用 VICTRON_PORTAL_ID 环境变量。
deviceInstancestring|number否MQTT 设备实例编号。如果省略,则使用通配符订阅查找第一个匹配的设备。

详细介绍

Victron TCP — MCP 服务

将 AI 助手连接到 Victron Energy 系统。从本地网络读取实时太阳能、电池、电网和逆变器数据,无需云服务。

32 个工具 | 23 个提示词 | 2 个资源 | 900+ 个寄存器 | Modbus TCP + MQTT


我应该选择哪个软件包?

这是这一对软件包中的本地 / LAN部分。远程 / 云端部分是 victron-vrm-mcp。

victron-tcp(此代码库)victron-vrm-mcp
传输方式stdio(本地子进程)Streamable HTTP(远程)
数据来源LAN 上的 Modbus TCP + MQTTVRM 云 API
需要访问 LAN 上的 GX是否
离开船只 / 房屋时是否可用否是
互联网中断时是否可用是否
延迟实时(约 50 ms)约 15 分钟(VRM 采样间隔)
原始寄存器访问是(900+ 个寄存器)否
写入覆盖范围(计划中)广泛——D-Bus 公开的所有内容窄——仅限 VRM 允许远程操作的内容(Dynamic ESS、清除警报、标签等)
兼容 MCP Connector API否(stdio)是(HTTPS)
客户端Claude Code、Claude Desktop、Cursor、WindsurfAnthropic Messages API + 任何支持通过 HTTP 使用 MCP 的客户端
身份验证本地无(信任 LAN)每次请求均需提供 VRM 个人访问令牌

**以下情况适合使用此软件包:**你与 GX 设备处于同一 LAN,并且需要实时、低延迟读取访问权限和原始寄存器支持。
**以下情况适合使用 victron-vrm-mcp:**你需要远程访问、要通过 MCP Connector 构建由 API 支持的应用,或不想在 LAN 上暴露任何内容。

你可以同时使用两者——它们适用于不同场景,风险特征也各不相同。


安装

Claude Code
claude mcp add-json victron-tcp '{"type":"stdio","command":"npx","args":["-y","victron-tcp"]}'
Claude Desktop / Cursor / Windsurf
{
  "mcpServers": {
    "victron-tcp": {
      "command": "npx",
      "args": ["-y", "victron-tcp"],
      "env": {
        "VICTRON_HOST": "192.168.1.50",
        "VICTRON_TRANSPORT": "mqtt",
        "VICTRON_PORTAL_ID": "your-portal-id"
      }
    }
  }
}
不知道设备 IP?

直接询问 AI:

Find my Victron GX device on the network and set it up.

它会扫描你的网络、测试连接,并为你生成配置。

要求
  • 本地网络上的 Victron GX 设备(Ekrano、Cerbo、Venus GX 等)
  • MQTT(在 Venus OS 上默认启用)或 Modbus TCP(Settings → Services → Modbus TCP)
  • Node.js 18+

你可以做什么

能源报告
提示词功能
hourly-snapshot快速查看功率流——SOC、PV、电网、负载
daily-report发电量、能耗、自用比例、电网依赖度
weekly-review发电趋势、电池健康状况、负载模式、调度建议
monthly-analysis能源平衡、节省成本、电池老化、季节对比
能源优化
提示词功能
energy-optimizerAI 驱动的调优——选择目标:提高自用率、节省成本、延长电池寿命、做好备用准备或保持平衡
ess-tuning检查 ESS 模式、电网设定值、电池限制、Dynamic ESS
storm-prep停电前准备情况检查
监控与故障排查
提示词功能
diagnose-system全面健康检查并扫描警报
solar-performancePV 发电量分析、跟踪器对比、遮挡检测
troubleshoot引导式调试并查询错误代码
tank-monitor燃油、水、废水液位(船舶 / 房车 / 离网场景)
generator-management自动启动条件、运行时间、静音时段
设备发现
提示词功能
setup-guide首次设置向导
find-devices扫描网络,发现所有 GX 设备及其连接的设备
identify-device“单元 ID 247 是什么?”——识别任意设备
system-topology绘制 AC/DC 母线、连接关系和能源流向
device-inventory完整设备表,可用于文档或支持
register-explorer浏览寄存器,说明类型和缩放因子
firmware-check检查所有设备的固件版本
面向安装人员
提示词作用
commissioning新系统检查清单 — 设备清点、接线、配置、通过/失败
site-audit通信、警报、测量和性能审计
集成
提示词作用
nodered-checkVenus OS 上的 Node-RED — MQTT 主题、流程调试
mqtt-debug代理连接、主题追踪、保活调试

工具参考

核心监控(9 个工具)
工具描述
victron_system_overview电池 SOC、PV 功率、电网功率、AC 消耗、ESS 状态
victron_battery_statusSOC、电压、电流、功率、温度、电芯数据、剩余时间
victron_solar_statusPV 功率、今日/昨日/总发电量、充电器状态、跟踪器数据
victron_grid_status各相电网功率(L1/L2/L3)、电压、电流、频率
victron_vebus_statusMulti/Quattro:AC 输入/输出、电流限制、模式、状态、警报
victron_tank_levels液位、容量、剩余量、液体类型
victron_temperature温度、传感器类型、湿度、气压
victron_inverter_status独立逆变器:AC 输出、状态、警报
victron_evcs_statusEV Charging Station:功率、状态、充电会话能量
扩展设备(14 个工具)
工具描述
victron_multi_statusMulti RS 逆变器/充电器
victron_pvinverter_statusAC 耦合型 PV 逆变器(Fronius、SolarEdge、ABB)
victron_genset_statusAC 发电机组控制器
victron_dcgenset_statusDC 发电机
victron_alternator_statusNMEA 2000 交流发电机
victron_charger_statusAC 充电器(Skylla、Blue Smart)
victron_dcdc_statusOrion XS DC-DC 转换器
victron_acload_statusAC 负载/电流传感器
victron_dcenergy_statusDC 电能表(DC 电表模式下的 SmartShunt)
victron_gx_infoGX 设备标识、继电器状态
victron_digital_inputs数字输入状态和类型
victron_gps_statusGPS 位置、海拔、速度
victron_meteo_status太阳辐照度、风速、温度
victron_generator_status发电机自动启停、运行时间、警报
发现与设置(4 个工具)
工具描述
victron_network_scan扫描本地网络以查找 GX 设备
victron_setup完整设置:测试传输方式、发现设备、生成配置
victron_mqtt_discover自动发现 MQTT 门户 ID、服务和设备实例
victron_discover扫描 Modbus 单元 ID 以查找已连接设备
实用工具与文档(5 个工具)
工具描述
victron_read_category读取任意设备类别的所有寄存器
victron_read_register按地址读取原始寄存器(仅限 Modbus)
victron_list_registers列出设备类别可用的寄存器
victron_search_docs搜索离线文档(寄存器 + VRM API)
victron_check_online获取最新 Victron 文档的 URL
资源
URI内容
victron://register-listCCGX Modbus TCP 寄存器列表(Rev 3.71)— 943 个寄存器
victron://unit-id-mapping设备类型到单元 ID 的映射

配置

环境变量

均为可选。设置这些变量可避免在每次工具调用时重复传入参数。

变量默认值描述
VICTRON_HOST(none)GX 设备 IP 或主机名
VICTRON_TRANSPORTmodbusmodbus 或 mqtt
VICTRON_PORTAL_ID(auto)MQTT 的 Portal ID
VICTRON_MODBUS_PORT502Modbus TCP 端口
VICTRON_MQTT_PORT1883MQTT 代理端口
VICTRON_UNIT_ID100默认 Modbus 单元 ID
远程使用(MCP Connector API)

此软件包使用 stdio 通信,Anthropic MCP Connector API 无法直接访问它(Connector 需要 HTTPS)。如需通过云端访问,请使用配套软件包 victron-vrm-mcp。

如果确实需要让 Connector API 访问此软件包(例如,远程读取原始寄存器),则需要将其置于自建的 HTTPS 网关之后;该网关通过 Streamable HTTP 连接上游,并在下游启动 victron-tcp——一般情况下不建议这样做。


调试

MCP Inspector 是交互式试用服务的最快方式。

# Inspect a locally-built server
npm run inspect

# Inspect the published npm package as users would run it
npm run inspect:npm

这两种方式都会打开基于浏览器的 UI,你可以在其中调用工具、查看结构化内容并监视通知流。日志会写入 stderr(stdout 专用于 stdio 传输中的 JSON-RPC 流——切勿写入 stdout)。

对于 Claude Desktop,MCP 服务日志位于 ~/Library/Logs/Claude/mcp-server-victron-tcp.log(macOS)或 %APPDATA%\Claude\logs\mcp-server-victron-tcp.log(Windows)。有关完整操作指南,请参阅规范中的调试指南。


文档

指南内容
配置客户端配置、传输方式对比、单元 ID、支持的设备
示例真实场景提示词及 AI 行为逐步说明
故障排查常见错误及解决方法
常见问题常见问题解答
架构代码结构、寄存器映射、工作原理
安全安全模型、数据敏感性、网络暴露

路线图

  • 写入支持 — ESS 模式控制、电网设定值、充电电流限制、继电器控制(通过 MQTT W/ 主题)
  • MCP 资源 — 寄存器列表和单元 ID 映射(VRM API 规范已移至 victron-vrm-mcp)
  • MCP 提示词 — 23 个引导式工作流
  • NPM 软件包(npx victron-tcp)
  • 用于访问 VRM 云端的配套软件包 — victron-vrm-mcp

参考资料

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。