Gives Claude the math and tooling to size 12V/24V/48V electrical systems for boats, vans, and off-grid builds. Nine tools cover power budgets, battery bank sizing, wire gauge selection with voltage drop calculations, solar panel sizing, inverter specs, and full wiring diagram generation as SVG or PNG. The calculations run locally in the MCP server while diagrams render through the VoltPlan API. You'd reach for this when refitting a boat or converting a van and you're tired of redoing wire gauge math every time a load changes. Hosted at mcp.voltplan.app/mcp or run locally via npx. Built by the author while rewiring a 30-foot boat in the Netherlands.
claude mcp add --transport http wiring-diagram-mcp https://mcp.voltplan.app/mcpRun in your terminal. Add --scope user to make it available in every project.
Review the command, arguments, and environment values before installing — MCP servers run with your local permissions.
Verified live against the running server on Jun 10, 2026.
generate_wiring_diagramGenerate an electrical wiring diagram for campers, boats, or off-grid setups. Returns a complete schematic with batteries, chargers, protection components, and loads. Protection components (shunt, main switch, low-voltage cutoff) are auto-generated when both batteries and load...5 paramsGenerate an electrical wiring diagram for campers, boats, or off-grid setups. Returns a complete schematic with batteries, chargers, protection components, and loads. Protection components (shunt, main switch, low-voltage cutoff) are auto-generated when both batteries and load...
loadsarrayformatstringsvg · pngdefault: svgchargersarraybatteriesarraysystemName*stringlist_component_typesList all available component types and example configurations for building wiring diagrams. Use this to understand what parameters are needed before calling generate_wiring_diagram.List all available component types and example configurations for building wiring diagrams. Use this to understand what parameters are needed before calling generate_wiring_diagram.
No parameters — call it with no arguments.
calculate_wire_gaugeCalculate the recommended wire gauge / cable cross-section for a DC circuit. Considers both ampacity (current carrying capacity) and voltage drop to recommend the optimal cable size. Also returns total resistance, power loss, and a fuse recommendation. Supports copper conducto...7 paramsCalculate the recommended wire gauge / cable cross-section for a DC circuit. Considers both ampacity (current carrying capacity) and voltage drop to recommend the optimal cable size. Also returns total resistance, power loss, and a fuse recommendation. Supports copper conducto...
powernumbercurrentnumbervoltage*numberisRoundTripbooleancableLengthM*numbertemperatureCelsiusnumbermaxVoltageDropPercentnumbercalculate_power_budgetCalculate total daily energy consumption from a list of electrical loads. Each load specifies its power draw, how many hours per day it runs, and quantity. Returns total daily energy (Wh and Ah), peak power draw, and average power. This is typically the first step in sizing a...2 paramsCalculate total daily energy consumption from a list of electrical loads. Each load specifies its power draw, how many hours per day it runs, and quantity. Returns total daily energy (Wh and Ah), peak power draw, and average power. This is typically the first step in sizing a...
loads*arraysystemVoltage*numbercalculate_battery_bankCalculate the recommended battery bank size based on daily energy consumption. Accounts for days of autonomy (how many days without charging) and depth of discharge. Returns required capacity, number of batteries, and wiring configuration.6 paramsCalculate the recommended battery bank size based on daily energy consumption. Accounts for days of autonomy (how many days without charging) and depth of discharge. Returns required capacity, number of batteries, and wiring configuration.
systemVoltage*numberdaysOfAutonomynumbersingleBatteryAh*numberdailyConsumptionWh*numbersingleBatteryVoltage*numberdepthOfDischargePercentnumbercalculate_solar_sizeCalculate the required solar panel wattage to cover daily energy consumption. Accounts for peak sun hours at the location and system efficiency losses (MPPT conversion, wiring, temperature derating). Returns required wattage and common panel configurations.3 paramsCalculate the required solar panel wattage to cover daily energy consumption. Accounts for peak sun hours at the location and system efficiency losses (MPPT conversion, wiring, temperature derating). Returns required wattage and common panel configurations.
peakSunHours*numbersystemEfficiencynumberdailyConsumptionWh*numbercalculate_charging_timeEstimate how long it takes to charge a battery bank from a given state of charge to a target level. Accounts for the bulk charging phase (constant current, up to ~80% SoC) and the slower absorption phase (tapering current, 80-100% SoC). Works for any charging source: solar, sh...6 paramsEstimate how long it takes to charge a battery bank from a given state of charge to a target level. Accounts for the bulk charging phase (constant current, up to ~80% SoC) and the slower absorption phase (tapering current, 80-100% SoC). Works for any charging source: solar, sh...
batteryVoltage*numberchargePowerWatts*numberbatteryCapacityAh*numberchargeCurrentAmpsnumbertargetStateOfChargePercentnumbercurrentStateOfChargePercent*numbercalculate_inverter_sizeCalculate the recommended inverter size for running AC loads from a DC battery system. Accounts for continuous power, startup surge power (motors typically surge 2-3x), and includes a 25% headroom for the continuous rating. Returns the recommended inverter wattage and the DC c...2 paramsCalculate the recommended inverter size for running AC loads from a DC battery system. Accounts for continuous power, startup surge power (motors typically surge 2-3x), and includes a 25% headroom for the continuous rating. Returns the recommended inverter wattage and the DC c...
loads*arraysystemVoltage*numbercalculate_battery_configDetermine how to arrange batteries in series and/or parallel to achieve a target voltage and capacity. Returns the number of batteries needed, the wiring configuration (e.g. 2S3P), and step-by-step wiring instructions.4 paramsDetermine how to arrange batteries in series and/or parallel to achieve a target voltage and capacity. Returns the number of batteries needed, the wiring configuration (e.g. 2S3P), and step-by-step wiring instructions.
targetVoltage*numbersingleBatteryAh*numbertargetCapacityAh*numbersingleBatteryVoltage*numberI refit my boat with Claude as the electrician. Here's the MCP that made it possible.
An MCP server that gives Claude (or any MCP-compatible AI) domain expertise in 12V / 24V / 48V electrical systems — sizing the bank, picking the wire gauge, recommending the fuse, and generating a complete wiring diagram. For boats, campers, vans, and off-grid builds.
{ "mcpServers": { "wiring-diagram": { "url": "https://mcp.voltplan.app/mcp" } } }
Drop that into your claude_desktop_config.json, restart Claude, ask: "Plan a 400 Ah lithium house bank for a 30 ft sailboat with 2 days of autonomy." Done.
Built while refitting Largo, a 1996 Maxum, in Roermond. The math kept getting in the way of the work — sizing the bank, then the gauge, then the fuse, then redoing all of it after one load changed. So I gave Claude the math. Now it sizes the bank, picks the gauge, and generates the diagram. I'd rather just do the cabling.
The calculations are the same ones any cruiser or vanlifer ends up doing on graph paper at 11pm. This server makes them a one-sentence prompt.
Nine tools, all callable by name from any MCP client:
| Tool | What it does |
|---|---|
calculate_power_budget | Daily energy draw from a list of loads (Wh, Ah, peak power) |
calculate_battery_bank | Bank size for given consumption + autonomy + DoD |
calculate_battery_config | Series/parallel arrangement to hit a target voltage and capacity |
calculate_solar_size | Panel wattage to recharge daily, accounting for sun hours and losses |
calculate_wire_gauge | AWG / mm² for current and run length, with fuse recommendation |
calculate_inverter_size | Inverter wattage for AC loads, with surge headroom and DC current draw |
calculate_charging_time | Time from X% to Y% SoC, with bulk and absorption phases |
generate_wiring_diagram | Complete schematic as SVG or PNG, auto-fused and protected |
list_component_types | Component reference and example configs for diagram building |
Three real prompts, three real outputs.
"Plan a 400 Ah lithium house bank for a 30 ft sailboat. Loads: 12V fridge 24/7 (60W), LED nav and cabin lights (25W, 4h/day), USB chargers (30W, 2h/day), occasional inverter for a laptop (90W, 3h/day). 2 days of autonomy without solar, LiFePO4 with 80% DoD."
Claude calls calculate_power_budget then calculate_battery_bank:
Total daily energy: 1,870 Wh/day (155.8 Ah/day at 12V)
Peak load: 205 W (17.1 A)
Required capacity (2 days × 80% DoD): 4,675 Wh / 389.6 Ah
Recommended bank: 4 × 100 Ah / 12.8 V LiFePO4 in parallel (4P)
Total / usable: 400 Ah / 5,120 Wh → 4,096 Wh usable
≈ 2.2 days of autonomy
"What gauge wire for a 50A inverter run, 3 meters one-way, 12V, marine environment, max 3% drop?"
Claude calls calculate_wire_gauge:
Recommended cable: 16 mm² (6 AWG) — rated 65 A
Voltage drop: 0.34 V (2.80%) ✓ within target
Total resistance: 6.7 mΩ
Power lost as heat: 16.8 W
Fuse: 70 A ANL bolt-down, within 18 cm of battery+
Status: OK — wire size meets all requirements.
(Ampacity alone would allow 10 mm² / 8 AWG, but voltage drop drives the choice up at this length.)
"Generate a wiring diagram for: 2 × 100W solar → MPPT → 200 Ah LiFePO4 → BMV-712 monitor → main 12V bus → fridge, lights, USB."
Claude calls generate_wiring_diagram and returns an SVG: batteries with terminals, MPPT charger, auto-generated shunt, main switch, low-voltage cutoff, and fused load lines in red/black with computed gauges.
See examples/ for five fully-worked scenarios — sailboat refit, Sprinter van, off-grid cabin, day sailer, live-aboard — each with the prompt, the expected tool calls, and the resulting numbers.
Edit claude_desktop_config.json (Settings → Developer → Edit Config):
{
"mcpServers": {
"wiring-diagram": {
"url": "https://mcp.voltplan.app/mcp"
}
}
}
Restart Claude. The hammer icon in the chat input means tools are active.
{
"mcpServers": {
"wiring-diagram": {
"command": "npx",
"args": ["wiring-diagram-mcp"]
}
}
}
# hosted
claude mcp add wiring-diagram --transport http https://mcp.voltplan.app/mcp
# local
claude mcp add wiring-diagram -- npx wiring-diagram-mcp
Edit ~/.cursor/mcp.json (or .cursor/mcp.json per-project):
{
"mcpServers": {
"wiring-diagram": {
"url": "https://mcp.voltplan.app/mcp"
}
}
}
Open the Cline panel → MCP Servers → Edit MCP Settings, then:
{
"mcpServers": {
"wiring-diagram": {
"url": "https://mcp.voltplan.app/mcp"
}
}
}
npm install
npm run build
npm run start:http # listens on http://localhost:3001/mcp
| Env var | Default | Purpose |
|---|---|---|
VOLTPLAN_API_URL | https://voltplan.app | VoltPlan instance for diagram rendering |
PORT | 3001 | HTTP server port |
docker build -t wiring-diagram-mcp .
docker run -p 3001:3001 wiring-diagram-mcp
Calculations run locally inside the MCP server (deterministic, no network). Diagram rendering hits the VoltPlan API and returns an SVG or PNG that the AI client embeds in the chat.
Worked scenarios in examples/:
Built by Stefan Lange-Hegermann (yuzuhub.com). Powered by VoltPlan.
Issues, ideas, and pull requests welcome on GitHub.
MIT — see LICENSE.
VOLTPLAN_API_URLURL of the VoltPlan API instance
miapre/html-to-figma-design-system
ie3jp/illustrator-mcp-server
coding-solo/godot-mcp
ivanmurzak/unity-mcp
yctimlin/mcp_excalidraw
figma/mcp-server-guide