accueil / serveurs / Dev & Code / io.github.uniwire-dev/uniwire
io.github.uniwire-dev/uniwire
serveur MCP (Model Context Protocol) · uniwire 0.1.1
Référencé dans l'annuaire. Seul le pentest comportemental fait foi, et il n'a pas encore été exécuté sur ce serveur.
Est-ce que io.github.uniwire-dev/uniwire est sûr ?
Au dernier audit MCP Hub, le serveur MCP « io.github.uniwire-dev/uniwire » est classé « Non encore testé ». Référencé dans l'annuaire. Seul le pentest comportemental fait foi, et il n'a pas encore été exécuté sur ce serveur. Le verdict est réévalué en continu ; consultez la fiche pour l'état à jour.
Méthode : MCP Hub analyse la description de chaque outil (couche 1) et, pour le verdict fort, exécute le serveur dans une micro-VM isolée avec leurres et réseau bloqué (couche 2). On publie des noms et des compteurs, jamais le contenu brut renvoyé par un outil.
Les 14 outils
- apply_patch≈ 399 tokens
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).
Paramètres, retour & exemple (3)
Paramètresops· ? · requisdocument· ? · requisvalidate· boolean · optionnel
Exemple d'appel{"name": "apply_patch", "arguments": {"ops": "texte", "document": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - bom≈ 194 tokens
Bill of materials of an electrical installation (nomenclature), grouped by manufacturer / part number (nodes with a product reference).
Paramètres, retour & exemple (1)
Paramètresdocument· ? · requis
Exemple d'appel{"name": "bom", "arguments": {"document": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"result": []}} - check≈ 376 tokens
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.
Paramètres, retour & exemple (2)
Paramètresdocument· ? · requisprofiles· ? · optionnel
Exemple d'appel{"name": "check", "arguments": {"document": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - describe≈ 230 tokens
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.
Paramètres, retour & exemple (2)
Paramètreslang· string · optionneldocument· ? · requis
Exemple d'appel{"name": "describe", "arguments": {"document": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"result": "texte"}} - get_example≈ 151 tokens
Return an example installation document by name (or number prefix, e.g. '02'), to adapt to the user's project.
Paramètres, retour & exemple (1)
Paramètresname· string · requis
Exemple d'appel{"name": "get_example", "arguments": {"name": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - get_reference_card≈ 237 tokens
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'.
Paramètres, retour & exemple (2)
Paramètreslang· string · optionnellevel· string · optionnel
Exemple d'appel{"name": "get_reference_card", "arguments": {"lang": "texte", "level": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"result": "texte"}} - list_examples≈ 187 tokens
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.
Paramètres, retour & exemple (0)
Exemple d'appel{"name": "list_examples", "arguments": {}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"result": []}} - list_types≈ 217 tokens
List node types (type, category, label), optionally for one category: source, measure, protection, switching, control, converter, conductor, container, connector, load.
Paramètres, retour & exemple (2)
Paramètreslang· string · optionnelcategory· ? · optionnel
Exemple d'appel{"name": "list_types", "arguments": {"lang": "texte", "category": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"result": []}} - normalize≈ 154 tokens
Resolved document: templates applied, every id assigned, canonical numbers.
Paramètres, retour & exemple (1)
Paramètresdocument· ? · requis
Exemple d'appel{"name": "normalize", "arguments": {"document": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - render≈ 460 tokens
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'.
Paramètres, retour & exemple (8)
Paramètreskind· string · optionnelpath· ? · optionnelview· ? · optionnelcolor· ? · optionnelsheet· ? · optionnelformat· string · optionneldocument· ? · requisconductor_colors· ? · optionnel
Exemple d'appel{"name": "render", "arguments": {"document": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - type_info≈ 150 tokens
All fields of a node type with descriptions and allowed values (enums).
Paramètres, retour & exemple (2)
Paramètreslang· string · optionneltype· string · requis
Exemple d'appel{"name": "type_info", "arguments": {"type": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - validate≈ 216 tokens
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.
Paramètres, retour & exemple (1)
Paramètresdocument· ? · requis
Exemple d'appel{"name": "validate", "arguments": {"document": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - viewer_link≈ 266 tokens
Links for the user: viewer_url opens the document in the uniwire web editor (drawing, single-line and multi-line, rule findings, PDF and SVG downloads, nothing to install); pdf_url gives the PDF drawn by uniwire. On the hosted server the document is kept 30 days so that the short links open it (anyone with a link can open it); elsewhere it travels in the link (after '#') and is stored nowhere. Give them to the user as clickable Markdown links.
Paramètres, retour & exemple (1)
Paramètresdocument· ? · requis
Exemple d'appel{"name": "viewer_link", "arguments": {"document": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - wiring≈ 269 tokens
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.
Paramètres, retour & exemple (3)
Paramètresview· ? · optionnelwhat· string · optionneldocument· ? · requis
Exemple d'appel{"name": "wiring", "arguments": {"document": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]}
C'est votre serveur ?
Revendiquez-le sur l'espace créateur (preuve GitHub, domaine ou npm) pour afficher le badge « propriétaire vérifié » et lancer un pentest comportemental à la demande afin d'obtenir le badge « Vérifié ».