Mcp Server For Victron Energy Gx Devices
@lubosstrejcek
About Mcp Server For Victron Energy Gx Devices
No overview available yet
Config
Add this server to your MCP-compatible client using the configuration below.
{
"mcpServers": {
"victron-tcp": {
"command": "npx",
"args": [
"victron-tcp"
]
}
}
}Tools
32Get system overview: battery SOC/voltage/current/power, PV power, grid power, AC consumption, inverter state, and Dynamic ESS status. Unit ID is always 100.
Get detailed battery monitor data: SOC, voltage, current, power, temperature, cell voltages, time-to-go, history, and alarms. Specify unitId for the battery monitor (check victron_discover to find it).
Get solar charger data: PV voltage, current, power, yield today/yesterday/total, charger state, error code, and tracker data. Specify unitId for the solar charger (check victron_discover to find it).
Get grid meter data: power per phase (L1/L2/L3), voltage, current, frequency, and energy counters (forward/reverse). Specify unitId for the grid meter (check victron_discover to find it).
Get VE.Bus inverter/charger (Multi/Quattro) data: AC input/output voltage, current, power per phase, DC voltage, input current limit, mode, state, alarms, and ESS settings. Specify unitId for the VE.Bus device (check victron_discover to find it).
Get tank sensor data: level, capacity, remaining, and fluid type (fuel, fresh water, waste water, live well, oil, black water, gasoline). Specify unitId for the tank sensor (check victron_discover to find it).
Get temperature sensor data from com.victronenergy.temperature: temperature, type (battery, fridge, generic), humidity, pressure, and status. Note: Battery temperatures measured by inverters/chargers or solar chargers are reported in their own device registers (use victron_vebus_status or victron_solar_status), not here. This tool reads dedicated temperature sensor inputs only. Specify unitId for the temperature sensor (check victron_discover to find it).
Get standalone inverter data (Phoenix, Inverter RS, VE.Direct inverters): AC output voltage, current, power, frequency, state, and alarms. This is for standalone inverters — for Multi/Quattro, use victron_vebus_status instead.
Get EV Charging Station status by connecting directly to the EVCS device (not through the GX). Reads charger status, power per phase, charging current, session energy, mode, phase configuration, temperatures, and errors. The host parameter should be the EVCS IP address (not the GX). For EV charger data proxied through the GX device, use victron_read_category with category "evcharger" instead.
Discover connected Victron devices via Modbus TCP by probing unit IDs. Scans a range of unit IDs to find active devices and identify their service type. Modbus only — for MQTT discovery use victron_mqtt_discover instead. This is the first tool you should use with Modbus transport to find what devices are available and their unit IDs.
Read raw Modbus register(s). Modbus TCP only — not available via MQTT. Advanced tool for reading specific register addresses with explicit data type and scale factor. Use victron_search_docs or victron_list_registers first to find the correct address, data type, and scale factor for the register you want to read.
List available Modbus registers for a given device category. Shows register addresses, names, data types, and units. For free-text search across all docs use victron_search_docs instead.
Read all registers for any Victron device category by service name. Covers all 33 categories including digital inputs, genset, PV inverter, settings, GPS, meteo, and more. Use victron_discover to find connected devices and their unit IDs first.
Get GX device identity and connection info: serial number, relay states, system time, and connection details. MAC address and hostname are NOT available via Modbus TCP. Unit ID is always 100.
Read digital input data from the GX device. On Cerbo GX, this reads the primary digital input. Includes state (open/closed/running/stopped), input type (door, bilge, alarm, generator), alarm status, and pulse count. Unit ID is always 100.
Get AC-coupled PV inverter data (SolarEdge, Fronius, ABB, etc.): power per phase, voltage, current, energy totals, frequency, position, serial, and power limit. Use victron_discover to find the PV inverter unit ID.
Get AC load and current sensor data: per-phase power, voltage, current, energy totals, frequency, and power factor. Used for AC current sensors measuring PV inverter output or other AC loads. Use victron_discover to find the unit ID.
Get GPS position data: latitude, longitude, altitude, course, speed, fix status, and number of satellites. Works with USB GPS (NMEA 0183) and NMEA 2000 GPS devices connected to the GX. Unit ID is always 100.
Get meteorological sensor data from IMT Solar irradiance sensors: solar irradiance (W/m²), wind speed, cell temperature, and external temperatures. Connected via RS485/USB. Unit ID is always 100.
Get alternator data from Wakespeed WS500, Arco Zeus, Revatek Altion, or other NMEA 2000 DC alternator regulators: battery voltage/current, auxiliary voltage, temperature, energy produced, engine/alternator RPM, field drive %, alarms, and state. Use victron_discover to find the unit ID.
Get AC charger data (Skylla-i, Skylla-IP44, Smart IP43, Blue Smart IP22): output voltage/current/temperature for up to 3 outputs, AC current/power, charge state, error code, current limit, and alarms. Use victron_discover to find the unit ID.
Get Orion XS DC-DC converter data: battery voltage/current/temperature, input voltage/power, charge state, error code, switch position, and accumulated Ah. Use victron_discover to find the unit ID.
Get AC generator/genset controller data (Fischer Panda, ComAp, DSE, CRE, DEIF): 3-phase AC voltage/current/power/frequency, engine temperature/load/speed/RPM, oil pressure, coolant temperature, exhaust temperature, starter voltage, model name, and error codes. Use victron_discover to find the unit ID.
Get GX generator auto start/stop status and control: manual start/stop command, start condition (SOC/load/voltage/manual), runtime, quiet hours, start/stop state, auto start enabled, service countdown, and alarms. This controls the GX relay-based generator start/stop logic. Unit ID is always 100.
Get Multi RS inverter/charger data: AC input/output voltage/current/power per phase, input frequency, AC source type, current limits, battery voltage/current/power/SOC/temperature, charger/inverter state, and alarms. Use victron_discover to find the unit ID.
Get DC energy meter data from SmartShunts configured in DC meter mode: voltage, current, auxiliary voltage, temperature, energy produced/consumed, and alarms. Specify type: "source" (alternator, solar, wind), "load" (fridge, pump, generic DC load), or "system" (aggregate DC system). Unit ID is always 100.
Get DC generator data (Fischer Panda, Hatz fiPMG): DC voltage/current, engine load/speed/RPM, coolant/winding/exhaust temperature, oil pressure, starter battery voltage, status, error codes, and start command. Use victron_discover to find the unit ID.
Discover Venus OS devices via MQTT. Auto-discovers the portalId, lists all available services, maps them to tools, and outputs a ready-to-use MCP server config. Run this first when setting up MQTT transport.
Scan the local network to find Victron GX devices. Probes for Modbus TCP (port 502) and MQTT (port 1883) services, then verifies Victron devices via Modbus. Use this when you don't know the IP address of the GX device. Specify a subnet or let it auto-detect from local network interfaces.
Complete system setup and discovery for a Victron GX device. Tests both Modbus TCP and MQTT connectivity, discovers all connected devices and services, recommends the best transport, and generates ready-to-use MCP server configuration. Use this as the first step after finding a device with victron_network_scan, or directly if you already know the host IP.
Search the local offline Victron register list (900+ registers with addresses, types, scale factors). Use this BEFORE making online requests — the local docs cover most questions about registers, unit IDs, data types, and device categories. For VRM cloud API search, use the victron-vrm-mcp sibling package.
Get URLs for the latest Victron local-access documentation sources. Use this only when victron_search_docs does not have the answer — for example, when checking for newer register list revisions or firmware changes. For VRM cloud API docs, use the victron-vrm-mcp sibling package.
Overview
What is Mcp Server For Victron Energy Gx Devices?
An MCP server that connects to Victron Energy GX devices on a local network via MQTT or Modbus TCP, providing direct, low-latency access to real-time solar, battery, grid, and inverter data — no cloud required. It covers 900+ registers across 33 device categories, built from the official CCGX Modbus TCP register list (Rev 50).
How to use Mcp Server For Victron Energy Gx Devices?
Install with npx victron-tcp and configure via environment variables VICTRON_HOST, VICTRON_TRANSPORT, and VICTRON_PORTAL_ID. Use with Claude Code (claude mcp add --transport stdio victron-tcp -- npx victron-tcp) or add to Claude Desktop / Cursor / Windsurf MCP config. The AI can also run victron_network_scan and victron_setup to auto-discover devices.
Key features of Mcp Server For Victron Energy Gx Devices
- 30 specialized tools for reading Victron device data
- Dual transport — MQTT (zero-config) or Modbus TCP
- Network discovery to find GX devices without an IP
- One-shot setup probing both transports and generating config
- Read-only and safe with
readOnlyHint: true
Use cases of Mcp Server For Victron Energy Gx Devices
- Monitor solar PV power, yield, and charger state
- Check battery SOC, voltage, current, temperature, and time-to-go
- View grid power per phase and inverter/charger status
- Read tank levels, temperature sensors, and EV charging station data
- Discover and configure Victron devices on the local network
FAQ from Mcp Server For Victron Energy Gx Devices
Does this server require a cloud connection?
No, it connects directly to Victron GX devices on the local network via MQTT or Modbus TCP.
What are the prerequisites?
A Victron GX device (Ekrano, Cerbo, Venus GX, etc.) on the local network, MQTT or Modbus TCP enabled in device settings, and Node.js 18+.
Which transports are supported and how do they differ?
MQTT (port 1883, zero-config with Venus OS built-in broker) and Modbus TCP (port 502, raw register access). MQTT is recommended.
Is the server read-only?
Yes, all tools are annotated with readOnlyHint: true. Write support (ESS mode control, grid setpoint) is planned for Phase 2.
How do I find my GX device IP if I don't know it?
Use the victron_network_scan tool to scan the local network by probing Modbus TCP and MQTT ports, then victron_setup to configure everything.
Frequently asked questions
Does this server require a cloud connection?
No, it connects directly to Victron GX devices on the local network via MQTT or Modbus TCP.
What are the prerequisites?
A Victron GX device (Ekrano, Cerbo, Venus GX, etc.) on the local network, MQTT or Modbus TCP enabled in device settings, and Node.js 18+.
Which transports are supported and how do they differ?
MQTT (port 1883, zero-config with Venus OS built-in broker) and Modbus TCP (port 502, raw register access). MQTT is recommended.
Is the server read-only?
Yes, all tools are annotated with `readOnlyHint: true`. Write support (ESS mode control, grid setpoint) is planned for Phase 2.
How do I find my GX device IP if I don't know it?
Use the `victron_network_scan` tool to scan the local network by probing Modbus TCP and MQTT ports, then `victron_setup` to configure everything.
Basic information
More Other MCP servers
IDA Pro MCP
mrexodiaAI-powered reverse engineering assistant that bridges IDA Pro with language models through MCP.

Glasswarp
GlasswarpSee and control a real Windows PC you own — from any MCP client, locally or remotely. Observe (UIA + screenshots), click/type/drag/scroll, launch apps, owner Live View. BYOH: your machine, your key.

EverArt
modelcontextprotocolModel Context Protocol Servers

Lemon.io
lemon-ioRequest dedicated senior developers to work on your project, write job descriptions, and prep technical interviews — all without leaving your Claude chat. Just describe what you need, and Lemon.io MCP does the rest. 1–3

Sequential Thinking
modelcontextprotocolModel Context Protocol Servers
Comments