Victron TCP-MCP服务器
将人工智能助手连接到Victron Energy系统。从本地网络读取实时太阳能、电池、电网和逆变器数据,无需云。
32个工具|23个提示|2个资源|900+个寄存器|Modbus TCP+MQTT
______________________________________________________________________
我想要哪个包裹?
这是 本地/LAN 半双。远程/云的一半是 victron-vrm-mcp.
victron-tcp (此回购) | victron-vrm-mcp | |
|---|---|---|
| 传输 | stdio(本地子进程) | 可流式HTTP(远程) |
| 数据源 | 局域网上的ModbusTCP+MQTT | VRM云API |
| 需要访问局域网上的GX | 是 | 没有 |
| 当你离开船/房子时,它仍然有效 | 否 | 是 |
| 在互联网关闭时工作 | 是 | 没有 |
| 延迟 | 实时(~50ms) | ~15min(VRM采样) |
| 原始寄存器访问 | 是 (900多个寄存器) | 否 |
| 写入覆盖范围(计划) | 广泛——D-Bus暴露的任何内容 | 狭窄——仅VRM远程制裁的内容(动态ESS、清除警报、标签等) |
| MCP连接器API兼容 | 否(stdio) | 是 (HTTPS) |
| 客户 | Claude Code,Claude Desktop,Cursor,Windsurf | Anthropic Messages API+任何通过HTTP说MCP的东西 |
| Auth | 本地无(信任LAN) | 按请求VRM个人访问令牌 |
在以下情况下使用此软件包: 您与GX设备位于同一局域网内,需要具有原始寄存器支持的实时、低延迟读取访问。 使用 victron-vrm-mcp 什么时候: 您需要远程访问,您正在通过MCP连接器构建一个API支持的应用程序,或者您不想在局域网上暴露任何内容。
你可以使用 两者 同时,它们服务于不同的用例,并具有不同的风险特征。
______________________________________________________________________
安装
克劳德代码
claude mcp add-json victron-tcp '{"type":"stdio","command":"npx","args":["-y","victron-tcp"]}'克劳德桌面/光标/风帆
{
"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等)
- 消息队列遥测传输 (在Venus OS上默认启用)或 Modbus TCP (设置→ 服务→ Modbus TCP)
- Node.js 18+
______________________________________________________________________
你能做什么
能源报告
| 提示 | 它做什么 |
|---|---|
hourly-snapshot | 快速潮流快照——SOC、PV、电网、负载 |
daily-report | 生产、消费、自用率、电网依赖性 |
weekly-review | 产量趋势、电池健康状况、负载模式、调度提示 |
monthly-analysis | 能源平衡、成本节约、电池老化、季节比较 |
能量优化
| 提示 | 它做什么 |
|---|---|
energy-optimizer | 人工智能驱动的调优——选择目标:自我消耗、成本节约、电池寿命、备份准备或平衡 |
ess-tuning | 审查ESS模式、电网设定点、电池限制、动态ESS |
storm-prep | 大修前准备情况检查 |
监控和故障排除
| 提示 | 它做什么 |
|---|---|
diagnose-system | 带报警扫描的全面健康检查 |
solar-performance | 光伏产量分析、跟踪器比较、阴影检测 |
troubleshoot | 通过错误代码查找进行引导调试 |
tank-monitor | 燃料、水、废物水平(船用/RV/离网) |
generator-management | 自动启动条件、运行时间、安静时间 |
设备发现
| 提示 | 它做什么 |
|---|---|
setup-guide | 首次安装向导 |
find-devices | 扫描网络,发现所有GX设备及其连接的设备 |
identify-device | “什么是单元ID 247?”--识别任何设备 |
system-topology | 绘制交流/直流母线、连接、能量流动路径图 |
device-inventory | 用于文档或支持的完整设备表 |
register-explorer | 浏览寄存器,解释类型和比例因子 |
firmware-check | 所有设备的固件版本 |
对于安装人员
| 提示 | 它做什么 |
|---|---|
commissioning | 新系统检查表——库存、接线、配置、通过/失败 |
site-audit | 通信、报警、测量、性能审计 |
集成
| 提示 | 它做什么 |
|---|---|
nodered-check | Venus OS上的Node-RED——MQTT主题,流程调试 |
mqtt-debug | 代理连接、主题跟踪、保活调试 |
______________________________________________________________________
工具参考
Core Monitoring (9 tools)
| 工具 | 说明 |
|---|---|
victron_system_overview | 电池SOC、光伏功率、电网功率、交流消耗、ESS状态 |
victron_battery_status | SOC、电压、电流、功率、温度、电池数据、剩余时间 |
victron_solar_status | 光伏发电量、今天/昨天/总产量、充电器状态、跟踪器数据 |
victron_grid_status | 每相电网功率(L1/L2/L3)、电压、电流、频率 |
victron_vebus_status | Multi/Quattro:交流输入/输出、电流限制、模式、状态、报警 |
victron_tank_levels | 油箱液位、容量、剩余量、流体类型 |
victron_temperature | 温度、传感器类型、湿度、压力 |
victron_inverter_status | 独立逆变器:交流输出、状态、报警 |
victron_evcs_status | 电动汽车充电站:功率、状态、会话能量 |
Extended Devices (14 tools)
| 工具 | 说明 |
|---|---|
victron_multi_status | 多RS逆变器/充电器 |
victron_pvinverter_status | 交流耦合光伏逆变器(Fronius、SolarEdge、ABB) |
victron_genset_status | 交流发电机组控制器 |
victron_dcgenset_status | 直流发电机 |
victron_alternator_status | NMEA 2000交流发电机 |
victron_charger_status | 交流充电器(Skylla、Blue Smart) |
victron_dcdc_status | Orion XS DC-DC转换器 |
victron_acload_status | 交流负载/电流传感器 |
victron_dcenergy_status | 直流电能表(直流电表模式下的SmartShunts) |
victron_gx_info | GX设备标识、继电器状态 |
victron_digital_inputs | 数字输入状态和类型 |
victron_gps_status | GPS位置、高度、速度 |
victron_meteo_status | 太阳辐照度、风速、温度 |
victron_generator_status | 发电机自动启动/停止、运行时间、报警 |
Discovery & Setup (4 tools)
| 工具 | 说明 |
|---|---|
victron_network_scan | 扫描本地网络以查找GX设备 |
victron_setup | 完整设置:测试传输、发现设备、生成配置 |
victron_mqtt_discover | 自动发现MQTT门户ID、服务、设备实例 |
victron_discover | 扫描Modbus单元ID以查找连接的设备 |
Utility & Documentation (5 tools)
| 工具 | 说明 |
|---|---|
victron_read_category | 读取任何设备类别的所有寄存器 |
victron_read_register | 按地址读取原始寄存器(仅Modbus) |
victron_list_registers | 列出设备类别的可用寄存器 |
victron_search_docs | 搜索脱机文档(寄存器+VRM API) |
victron_check_online | 获取最新Victron文档的URL |
资源
| URI | 内容 |
|---|---|
victron://register-list | CCGX Modbus TCP寄存器列表(版本3.71)——943个寄存器 |
victron://unit-id-mapping | 设备类型到单元ID的映射 |
______________________________________________________________________
配置
环境变量
全部可选。设置它们以避免在每次工具调用时重复参数。
| 变量 | 默认值 | 描述 |
|---|---|---|
VICTRON_HOST | _(无)_ | GX设备IP或主机名 |
VICTRON_TRANSPORT | modbus | modbus 或 mqtt |
VICTRON_PORTAL_ID | _(自动)_ | MQTT的门户ID |
VICTRON_MODBUS_PORT | 502 | Modbus TCP端口 |
VICTRON_MQTT_PORT | 1883 | MQTT代理端口 |
VICTRON_UNIT_ID | 100 | 默认Modbus单元ID |
远程使用(MCP连接器API)
如果您真的需要连接器API *这* 包(例如,远程使用原始寄存器读取),您可以将其放在自己的HTTPS网关后面,该网关向上游传输可流HTTP并生成 victron-tcp 下游——不建议用于典型用途。
______________________________________________________________________
调试
这 MCP检查员 是交互式戳服务器的最快方法。
# Inspect a locally-built server
npm run inspect
# Inspect the published npm package as users would run it
npm run inspect:npm两者都打开了一个基于浏览器的UI,您可以在其中调用工具、查看结构化内容和观看通知流。日志转到 标准错误 (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、支持的设备 |
| 示例 | 现实世界中的提示与逐步的人工智能行为 |
| 故障排除 | 常见错误和修复 |
| 常见问题解答 | 常见问题解答 |
| 建筑 | 代码结构、注册映射、工作原理 |
| 安全 | 安全模型、数据敏感性、网络暴露 |
______________________________________________________________________
路线图
- \[ \] 撰写支持 --ESS模式控制、电网设定点、充电电流限制、继电器控制(通过MQTT
W/主题) - \[x\] MCP资源-寄存器列表+单元ID映射(VRM API规范移动到
victron-vrm-mcp) - \[x\] MCP提示——23个指导性工作流程
- \[x\] NPM包(
npx victron-tcp) - \[x\] VRM云访问的兄弟包--
victron-vrm-mcp
参考文献
许可证
麻省理工学院

