MCP App Store
by KeenEthics
Productivity
uniwire icon

uniwire

by uniwire

Overview

uniwire turns a plain description of an electrical installation into a single-line or multi-line diagram that has been checked against electrical rules. Describe a home, a shop, an office or a workshop (supply, main breaker, residual-current devices, circuits, loads) and Claude builds the uniwire document, validates it and checks it against the rule profiles of NF C 15-100 (France) and IEC 60364: protection ratings against cable cross-sections, 30 mA protection, circuits per RCD, dedicated circuits, selectivity, EV charging. The results come with two links: one opens the drawing in the uniwire web editor, the other is the PDF drawn by uniwire. Claude can also edit an existing diagram (add a circuit, change a rating), list wires and wire markers, and produce a bill of materials. 52 example installations (dwellings, shops, PV, EV charging, UPS, MV/LV substations, PLCs) are available as starting points. For electricians, electrical design offices, students and anyone preparing a panel layout. No account and no setup. Limitations: the checks are automatic checks of the data in the document, not a conformity certificate; a qualified electrician must verify any installation before it is built. Documents are kept 30 days on the server so that the links work; do not include personal data. uniwire is an open standard and open-source software (Apache-2.0): https://github.com/uniwire-dev/uniwire

Tools

apply_patch

Claude
Edit an electrical diagram by node id (change a rating, add a circuit, move a load...) and return the new document. ops (applied in order): {"op":"set","id":ID,"path":"in_A","value":20} (null value removes; no id = document root, e.g. path "installation.earthing"); {"op":"add","parent":ID,"node":{...},"index":0} (or "at":"sources"); {"op":"remove","id":ID}; {"op":"move","id":ID,"parent":ID,"index":0}; {"op":"rename","id":ID,"new_id":NEW}; {"op":"link","link":{"kind":"control","from":ID,"to":ID}}; {"op":"unlink","id":LINK_ID} or {"op":"unlink","from":ID,"to":ID,"kind":K}. On failure returns ok=false and errors naming the failing op index (null = validation of the result).

bom

Claude
Bill of materials of an electrical installation (nomenclature), grouped by manufacturer / part number (nodes with a product reference).

check

Claude
Check an electrical installation (single-line diagram, panel, schéma unifilaire, tableau électrique): validates the document, then applies the rule profiles (NF C 15-100 'nfc15100', IEC 60364 'iec60364', PLC; default: the document's 'profiles'; 'core' always applies): breaker ratings against cable sections, RCDs, circuits per protection, selectivity... Returns findings (level error/warning/info, rule, node id, message, source), a summary, viewer_url (opens the document in the uniwire web editor: drawing, findings, downloads) and pdf_url (the PDF drawn by uniwire). Give both to the user as clickable links. 'scope' says what the checks cover: tell the user once that they are not a conformity certificate.

describe

Claude
Text outline of an electrical diagram: installation, full tree of the panel with stable ids, ratings and cables, links, interlocks, boards and findings summary. Use it to review a document or find the ids for apply_patch.

get_example

Claude
Return an example installation document by name (or number prefix, e.g. '02'), to adapt to the user's project.

get_reference_card

Claude
Reference card of the uniwire format for electrical diagrams: document skeleton, node types (breakers, RCDs, cables, loads, transformers, PV...) and fields, enums, links, pitfalls, examples. Read it before writing a document. level: 'compact' (~3k tokens) or 'full'; lang: 'en' or 'fr'.

list_examples

Claude
List the 52 example installations (dwellings, shops, offices, workshops, PV, EV charging, UPS, MV/LV substations, PLCs): name, title, language, profiles, earthing, system. Good starting points.

list_types

Claude
List node types (type, category, label), optionally for one category: source, measure, protection, switching, control, converter, conductor, container, connector, load.

normalize

Claude
Resolved document: templates applied, every id assigned, canonical numbers.

render

Claude
Draw the electrical diagram (schéma unifilaire / multifilaire). kind: 'single-line' or 'multi-line'; view: a view id of the document (e.g. a wire-marking view). format 'svg' returns the SVG text of every sheet (or of 'sheet', numbered from 1); 'pdf' writes to 'path' if given, else returns base64 (requires the uniwire[pdf] extra); on the hosted server it returns pdf_url instead. To give the user the PDF, give them pdf_url as a clickable link. color: 'none' | 'conductors' | 'phase' | 'source' | 'status' | 'voltage' (adds a legend); conductor_colors: 'iec' (IEC 60445) | 'us'.

type_info

Claude
All fields of a node type with descriptions and allowed values (enums).

validate

Claude
Validate a uniwire document (electrical diagram as JSON: object, JSON text or file path) against the format. Returns valid + issues, each naming the node id and field when possible, plus viewer_url and pdf_url (links for the user). check does the same and also applies the electrical rules.

wiring

Claude
Wiring exports of an installation as rows with stable column names (repérage des fils, carnet de câbles): what='markers' (one row per wire end, for label printers), 'wires' (wire list) or 'cables' (cable schedule). Marks follow the wire_marking rules of the view (id), by default the first view that declares them.

App Stats

14

Tools

Claude

Platforms

Works with

Claude

Data refreshed daily