← Back to search

victron-tcp

lubosstrejcek Scanned 25d ago

MCP server for Victron Energy GX devices via Modbus TCP or MQTT

B
84 / 100

Versions

1.4.0latest
Jun 17, 2026
1.3.1
Apr 18, 2026
1.3.0
Apr 18, 2026
1.2.0
Apr 17, 2026
1.1.1
Feb 7, 2026
+ show 2 moreshow less
1.1.0
Feb 7, 2026
1.0.0
Feb 7, 2026
PermissionsTool SafetyAuthAnnotationsCode QualityStabilitySpecVuln HistoryAuthorTransparencyCommunity

Tools 32

victron_dcdc_status
annotations: none low

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.

victron_tank_levels
annotations: none low

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).

victron_gps_status
annotations: none low

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.

victron_dcgenset_status
annotations: none low

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.

victron_alternator_status
annotations: none low

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.

victron_meteo_status
annotations: none low

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.

victron_discover
annotations: none low

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.

victron_dcenergy_status
annotations: none low

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.

type enum
victron_battery_status
annotations: none low

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).

victron_system_overview
annotations: none low

Get system overview: battery SOC/voltage/current/power, PV power, grid power, AC consumption, inverter state, and Dynamic ESS status. Unit ID is always 100.

victron_temperature
annotations: none low

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).

victron_network_scan
annotations: none low

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.

subnet string timeout number
victron_read_register
annotations: none low

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.

dataType enum scaleFactor number
victron_list_registers
annotations: verified low

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.

category string
readOnlyHint true openWorldHint false idempotentHint true destructiveHint false
victron_pvinverter_status
annotations: none low

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.

victron_acload_status
annotations: none low

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.

victron_gx_info
annotations: none low

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.

victron_solar_status
annotations: none low

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).

victron_digital_inputs
annotations: none low

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.

victron_read_category
annotations: none low

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.

category string
victron_setup
annotations: none low

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.

host string mqttPort number modbusPort number
victron_inverter_status
annotations: none low

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.

victron_mqtt_discover
annotations: none low

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.

mqttHost string mqttPort number
victron_evcs_status
annotations: none low

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.

host string port number
victron_genset_status
annotations: none low

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.

victron_charger_status
annotations: none low

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.

victron_generator_status
annotations: none low

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.

victron_vebus_status
annotations: none low

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).

victron_multi_status
annotations: none low

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.

victron_grid_status
annotations: none low

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).

victron_search_docs
annotations: none low

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.

query string source enum maxResults number
victron_check_online
annotations: none low

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.

source enum

Permissions 1

env_vars low
Server uses env_vars capabilities via: process.env

Scan Findings 74

low
Tool 'victron_dcdc_status' has no annotations annotation_checker · 100%
low
Tool 'victron_tank_levels' has no annotations annotation_checker · 100%
low
Tool 'victron_gps_status' has no annotations annotation_checker · 100%
low
Tool 'victron_dcgenset_status' has no annotations annotation_checker · 100%
low
Tool 'victron_alternator_status' has no annotations annotation_checker · 100%
low
Tool 'victron_meteo_status' has no annotations annotation_checker · 100%
low
Tool 'victron_discover' has no annotations annotation_checker · 100%
low
Tool 'victron_dcenergy_status' has no annotations annotation_checker · 100%
low
Tool 'victron_battery_status' has no annotations annotation_checker · 100%
low
Tool 'victron_system_overview' has no annotations annotation_checker · 100%
low
Tool 'victron_temperature' has no annotations annotation_checker · 100%
low
Tool 'victron_network_scan' has no annotations annotation_checker · 100%
low
Tool 'victron_read_register' has no annotations annotation_checker · 100%
info
Tool 'victron_list_registers' annotations are consistent annotation_checker · 80%
low
Tool 'victron_pvinverter_status' has no annotations annotation_checker · 100%
low
Tool 'victron_acload_status' has no annotations annotation_checker · 100%
low
Tool 'victron_gx_info' has no annotations annotation_checker · 100%
low
Tool 'victron_solar_status' has no annotations annotation_checker · 100%
low
Tool 'victron_digital_inputs' has no annotations annotation_checker · 100%
low
Tool 'victron_read_category' has no annotations annotation_checker · 100%
low
Tool 'victron_setup' has no annotations annotation_checker · 100%
low
Tool 'victron_inverter_status' has no annotations annotation_checker · 100%
low
Tool 'victron_mqtt_discover' has no annotations annotation_checker · 100%
low
Tool 'victron_evcs_status' has no annotations annotation_checker · 100%
low
Tool 'victron_genset_status' has no annotations annotation_checker · 100%
low
Tool 'victron_charger_status' has no annotations annotation_checker · 100%
low
Tool 'victron_generator_status' has no annotations annotation_checker · 100%
low
Tool 'victron_vebus_status' has no annotations annotation_checker · 100%
low
Tool 'victron_multi_status' has no annotations annotation_checker · 100%
low
Tool 'victron_grid_status' has no annotations annotation_checker · 100%
low
Tool 'victron_search_docs' has no annotations annotation_checker · 100%
low
Tool 'victron_check_online' has no annotations annotation_checker · 100%
info
Sandbox failed to start for behavioral verification behavioral_verifier · 100%
low
Cross-tool reference in 'victron_gps_status': Integration: 'works with USB' cross_tool_detector · 30%
medium
Vulnerable dependency: vitest@4.0.18 (GHSA-5xrq-8626-4rwp) dependency_analyzer · 95%
info
package.json metadata manifest_parser · 100%
info
Tool: victron_dcdc_status manifest_parser · 85%
info
Tool: victron_tank_levels manifest_parser · 85%
info
Tool: victron_gps_status manifest_parser · 85%
info
Tool: victron_dcgenset_status manifest_parser · 85%
info
Tool: victron_alternator_status manifest_parser · 85%
info
Tool: victron_meteo_status manifest_parser · 85%
info
Tool: victron_discover manifest_parser · 85%
info
Tool: victron_dcenergy_status manifest_parser · 85%
info
Tool: victron_battery_status manifest_parser · 85%
info
Tool: victron_system_overview manifest_parser · 85%
info
Tool: victron_temperature manifest_parser · 85%
info
Tool: victron_network_scan manifest_parser · 85%
info
Tool: victron_read_register manifest_parser · 85%
info
Tool: victron_list_registers manifest_parser · 85%
info
Tool: victron_pvinverter_status manifest_parser · 85%
info
Tool: victron_acload_status manifest_parser · 85%
info
Tool: victron_gx_info manifest_parser · 85%
info
Tool: victron_solar_status manifest_parser · 85%
info
Tool: victron_digital_inputs manifest_parser · 85%
info
Tool: victron_read_category manifest_parser · 85%
info
Tool: victron_setup manifest_parser · 85%
info
Tool: victron_inverter_status manifest_parser · 85%
info
Tool: victron_mqtt_discover manifest_parser · 85%
info
Tool: victron_evcs_status manifest_parser · 85%
info
Tool: victron_genset_status manifest_parser · 85%
info
Tool: victron_charger_status manifest_parser · 85%
info
Tool: victron_generator_status manifest_parser · 85%
info
Tool: victron_vebus_status manifest_parser · 85%
info
Tool: victron_multi_status manifest_parser · 85%
info
Tool: victron_grid_status manifest_parser · 85%
info
Tool: victron_search_docs manifest_parser · 85%
info
Tool: victron_check_online manifest_parser · 85%
info
Transport: stdio manifest_parser · 90%
info
Required env vars (7) manifest_parser · 80%
info
Sandbox failed to start for output poisoning scan output_poisoning · 100%
low
Permission: env_vars access detected permission_analyzer · 90%
info
SBOM generated: 258 components sbom_generator · 100%
medium
No build provenance detected (SLSA L0) slsa_assessor · 90%