Skip to main content
Glama

The Cable Code

Design and size a power cable

design_cable
Read-onlyIdempotent

Design and size a cable (power, control, LAN, coaxial, fibre) from a sentence (any site language, e.g. "3-core collective screen 12/20 kV 3x95/25 Al, longitudinally watertight") or a spec: every layer's thickness with its source (IEC 60502, HD 603 / 620, BS, EN 50525, NEC / UL and more; IEC 60228), the overall diameter, the designation and the decoder's reading of it, and the estimated weight, bending radius, pulling force, IEC 60757 colours and MV field stress with their sources; current, voltage drop and short-circuit ratings; a bare designation works as the sentence; optional XML, DXF, SVG, CSV, GLB, STEP (3D CAD) and a PDF datasheet. Deterministic, no LLM; a nominal calculation, not a datasheet.

Input Schema

NameRequiredDescriptionDefault
cpcNoFor cpc: {kind armour | core | separate | conduit (a steel conduit or trunking) | bare (a bare conductor) (default the armour where the design has one), basis iec | bs, column tp70 | tp90 | ts90, section_mm2 (required for conduit and bare), metal Cu | Al (separate) or Cu | Al | steel (bare), condition visible | normal | fire (bare: Table 54.6 / A.54.6), system TN | TT | IT (IT: a second fault, 411.6.4), circuit final | distribution, current ac | dc (Table 41.1's d.c. columns), u0_v (line to earth, default 230), ia_a (the current that operates the device in time), or device (a BS 7671 fuse bs88-2 | bs88-3 | bs3036 | bs1362, or a circuit-breaker type B | C | D) with device_a (its rating: the Tables 41.2 to 41.4 Zs at U0 230 V), length_m (the route length: the cable's own R1 + R2 at its operating temperature against the largest Zs)}.
necNoNorth American wires: {ocpd_a (the overcurrent device; default from the ampacity), phase_min (250.122(B): the size before upsizing), install raceway | air, ambient_c, carrying, termination_c 60 | 75 | 90}: nec.ampacity (NEC 310.16) and nec.egc (Table 250.122).
langNoAny of the site's 15 languages for the answer's words (the sentence itself is read in any of them).
loadNoFor voltage_drop and sizing: {length_m (required), amps or kw (default the design's own rating), phases 1 | 3, volts, pf (0.85), temp_c (the insulation's normal temperature), hz, limit_pct (a Table G.52.1 row 3, 5, 6, 8 raised beyond 100 m, or an own limit; default 5), conduit pvc | al | steel (NEC wires, Chapter 9 Table 9), formation touching | flat | spaced (single-core cables)}. IEC 60364-5-52 Annex G with the IEC 60287-1-1 a.c. resistance, BS 7671 Tables 4E4B, 4D4B, 4E3B, 4D3B or NEC Chapter 9 Table 9, and the smallest size by current, by drop and by both.
specNoInstead of a sentence: {voltage: "12/20", cores: 3, section: 95, metal, screen, screenType, screenSection, screenLay (helical | interstices), insulation, sheath, watertight, armour}; add standard (an id from design_presets: HD620-10C, BS6724, UL-NMB, EN50525-2-21 ...) for that family's own build at the nearest voltage, size and count it lists; with an HD 620 section that lays three single cores up (HD620-10E1, -10E2, -10I1, -10I2, -10I3 ...), bundle none | messenger | earth and cores 3 builds the bundle; with IS9968-1, is9968 {kind, grade} picks the table and grade; with GOST1508, gostMark the mark.
faultNoFor cpc: {ka (the fault current), seconds (default fault_s)}: the adiabatic check of the armour or protective conductor (IEC 60364-5-54:2011 Annex A, BS 7671 Tables 54.2 to 54.6) up to 1 kV.
designNoInstead of a sentence: the design field of an earlier answer, changed.
fault_sNoFault duration for ratings.short_circuit, s (default 1).
formatsNoFiles to include: xml, dxf, svg, csv, glb (base64), step (STEP AP214 text), pdf (datasheet, base64).
sentenceNoThe cable in words, any of the 15 site languages: voltage, cores, section, conductor metal, screen, sheath, watertightness, armour. What is not said takes a default, and the answer lists which.
installationNoFor ratings.current: how the cable is installed; the designer's defaults for what is not given (buried 0.8 m, 20 °C ground, 1.5 K·m/W, trefoil, alone). At 0.6/1 kV group, arrangement, clearance, trays and h3_pct give the IEC 60364-5-52 B.52.17 to B.52.21 (BS 7671 4C1 to 4C5) grouping and the E.52.1 harmonic factors; reel_drum puts a flexible cable on a reeling drum (NFPA 79 Table 12.7.3); restrained (buried or clamped) is read by ratings.short_circuit. The answer lists the defaults used and the fields the cable's table does not read.
test_variantNoFor after_installation: a national variant of the tests after installation (HD620-10A, HD620-10C, HD620-10J, HD620-10M, HD620-10R, BS6622, IS1255, BS7846, BS5467, HD603-3F, HD603-G); default the one the design's standard implies.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changed
    • addedInput schema / properties / installation / properties / is_circuit
      Added value: +{
      +  "description": "rating_basis is3961, IS 1554-1 and IS 7098-1 (IS 3961 Parts 2 and 6), as the rating panel: three (a.c. three-phase, three single-core cables; default), single (a.c. single-phase: a single-core cable as one of two, a two-core cable itself) or dc (two single-core cables or one two-core cable; Part 2 Tables 9 to 12, Part 6 Tables 5 and 6). A single-core cable takes all three, a two-core cable single (its default) or dc, three to five cores three only; a circuit the cable does not take falls back to its first.",
      +  "enum": [
      +    "three",
      +    "single",
      +    "dc"
      +  ],
      +  "type": "string"
      +}
    • addedInput schema / properties / installation / properties / is_pvc
      Added value: +{
      +  "description": "rating_basis is3961, IS 1554-1 only: the PVC of cl. 4.1, A (general purpose, 70 °C, default) or C (heat resisting, 85 °C: IS 3961 Part 2 cl. 2 a, the 85 °C tables).",
      +  "enum": [
      +    "A",
      +    "C"
      +  ],
      +  "type": "string"
      +}
    • changedInput schema / properties / spec / description
      Previous value: -"Instead of a sentence: {voltage: \"12/20\", cores: 3, section: 95, metal, screen, screenType, screenSection, screenLay (helical | interstices), insulation, sheath, watertight, armour}; add standard (an id from design_presets: HD620-10C, BS6724, UL-NMB, EN50525-2-21 ...) for that family's own build at the nearest voltage, size and count it lists; with an HD 620 section that lays three single cores up (HD620-10E1, -10E2, -10I1, -10I2, -10I3 ...), bundle none | messenger | earth and cores 3 builds the bundle."New value: +"Instead of a sentence: {voltage: \"12/20\", cores: 3, section: 95, metal, screen, screenType, screenSection, screenLay (helical | interstices), insulation, sheath, watertight, armour}; add standard (an id from design_presets: HD620-10C, BS6724, UL-NMB, EN50525-2-21 ...) for that family's own build at the nearest voltage, size and count it lists; with an HD 620 section that lays three single cores up (HD620-10E1, -10E2, -10I1, -10I2, -10I3 ...), bundle none | messenger | earth and cores 3 builds the bundle; with IS9968-1, is9968 {kind, grade} picks the table and grade; with GOST1508, gostMark the mark."
  2. Changed2 schema fields changed
    • changedInput schema / properties / lang / description
      Previous value: -"Any of the site's 15 languages for the answer's words (the sentence itself is read in English or Turkish)."New value: +"Any of the site's 15 languages for the answer's words (the sentence itself is read in any of them)."
    • changedInput schema / properties / sentence / description
      Previous value: -"The cable in words, Turkish or English: voltage, cores, section, conductor metal, screen, sheath, watertightness, armour. What is not said takes a default, and the answer lists which."New value: +"The cable in words, any of the 15 site languages: voltage, cores, section, conductor metal, screen, sheath, watertightness, armour. What is not said takes a default, and the answer lists which."
  3. Changed16 schema fields changed
    • changedInput schema / properties / cpc / description
      Previous value: -"For cpc: {kind armour | core | separate (default the armour where the design has one), basis iec | bs, column tp70 | tp90 | ts90, section_mm2, metal Cu | Al (a separate conductor), system TN | TT, circuit final | distribution, u0_v (line to earth, default 230), ia_a (the current that operates the device in time)}."New value: +"For cpc: {kind armour | core | separate | conduit (a steel conduit or trunking) | bare (a bare conductor) (default the armour where the design has one), basis iec | bs, column tp70 | tp90 | ts90, section_mm2 (required for conduit and bare), metal Cu | Al (separate) or Cu | Al | steel (bare), condition visible | normal | fire (bare: Table 54.6 / A.54.6), system TN | TT | IT (IT: a second fault, 411.6.4), circuit final | distribution, current ac | dc (Table 41.1's d.c. columns), u0_v (line to earth, default 230), ia_a (the current that operates the device in time), or device (a BS 7671 fuse bs88-2 | bs88-3 | bs3036 | bs1362, or a circuit-breaker type B | C | D) with device_a (its rating: the Tables 41.2 to 41.4 Zs at U0 230 V), length_m (the route length: the cable's own R1 + R2 at its operating temperature against the largest Zs)}."
    • changedInput schema / properties / fault / description
      Previous value: -"For cpc: {ka (the fault current), seconds (default fault_s)}: the adiabatic check of the armour or protective conductor (IEC 60364-5-54:2011 Annex A, BS 7671 Tables 54.2 to 54.4) up to 1 kV."New value: +"For cpc: {ka (the fault current), seconds (default fault_s)}: the adiabatic check of the armour or protective conductor (IEC 60364-5-54:2011 Annex A, BS 7671 Tables 54.2 to 54.6) up to 1 kV."
    • changedInput schema / properties / installation / description
      Previous value: -"For ratings.current: how the cable is installed; the designer's defaults for what is not given (buried 0.8 m, 20 °C ground, 1.5 K·m/W, trefoil, alone). At 0.6/1 kV group, arrangement, clearance, trays and h3_pct give the IEC 60364-5-52 B.52.17 to B.52.21 (BS 7671 4C1 to 4C3) grouping and the E.52.1 harmonic factors. The answer lists the defaults used and the fields the cable's table does not read."New value: +"For ratings.current: how the cable is installed; the designer's defaults for what is not given (buried 0.8 m, 20 °C ground, 1.5 K·m/W, trefoil, alone). At 0.6/1 kV group, arrangement, clearance, trays and h3_pct give the IEC 60364-5-52 B.52.17 to B.52.21 (BS 7671 4C1 to 4C5) grouping and the E.52.1 harmonic factors; reel_drum puts a flexible cable on a reeling drum (NFPA 79 Table 12.7.3); restrained (buried or clamped) is read by ratings.short_circuit. The answer lists the defaults used and the fields the cable's table does not read."
    • addedInput schema / properties / installation / properties / air_formation
      Added value: +{
      +  "description": "0.6/1 kV single-core cables in free air: method F with 3 loaded, trefoil (default) or flat (touching); method G, horizontal (default) or vertical.",
      +  "enum": [
      +    "trefoil",
      +    "flat",
      +    "horizontal",
      +    "vertical"
      +  ],
      +  "type": "string"
      +}
    • addedInput schema / properties / installation / properties / au_method
      Added value: +{
      +  "description": "rating_basis au (AS/NZS 3008.1.1:2025 Tables 3.5 to 3.8): air (default), spaced, trefoil, conduit, buried or duct, the ones the design's cores take; buried and duct read ground_c (default 25), depth_m (default 0.5) and soil_k_m_per_w (default 1.2), the others air_c (default 40).",
      +  "enum": [
      +    "air",
      +    "spaced",
      +    "trefoil",
      +    "conduit",
      +    "buried",
      +    "duct"
      +  ],
      +  "type": "string"
      +}
    • addedInput schema / properties / installation / properties / circuit_use
      Added value: +{
      +  "description": "0.6/1 kV, IEC 60364-5-52 Table 52.2: power (default), signal or electronic, which sets the smallest conductor (minimum in the answer when the design is below it).",
      +  "enum": [
      +    "power",
      +    "signal",
      +    "electronic"
      +  ],
      +  "type": "string"
      +}
    • changedInput schema / properties / installation / properties / iec_method / description
      Previous value: -"IEC 60364-5-52 reference method, 0.6/1 kV IEC basis (Table B.52.1): A1 / B1 single-core in conduit, A2 / B2 multicore in conduit, C on a wall, D1 in ducts, D2 direct in the ground, E / F in free air."New value: +"IEC 60364-5-52 reference method, 0.6/1 kV IEC basis (Table B.52.1): A1 / B1 single-core in conduit, A2 / B2 multicore in conduit, C on a wall, D1 in ducts, D2 direct in the ground, E / F in free air, G single-core spaced one diameter in free air."
    • changedInput schema / properties / installation / properties / iec_method / enum
      Previous value: -[
      -  "A1",
      -  "A2",
      -  "B1",
      -  "B2",
      -  "C",
      -  "D1",
      -  "D2",
      -  "E",
      -  "F"
      -]New value: +[
      +  "A1",
      +  "A2",
      +  "B1",
      +  "B2",
      +  "C",
      +  "D1",
      +  "D2",
      +  "E",
      +  "F",
      +  "G"
      +]
    • addedInput schema / properties / installation / properties / loaded
      Added value: +{
      +  "anyOf": [
      +    {
      +      "const": 2,
      +      "type": "number"
      +    },
      +    {
      +      "const": 3,
      +      "type": "number"
      +    }
      +  ],
      +  "description": "0.6/1 kV single-core cables (not method G): a single-phase circuit, 2 loaded conductors, or three-phase, 3 (default); a two-core cable is always 2."
      +}
    • addedInput schema / properties / installation / properties / loaded_cores
      Added value: +{
      +  "description": "An HD 603 cable of more than four cores: the loaded cores (DIN VDE 0276-1000 Table 13); default 3.",
      +  "maximum": 9007199254740991,
      +  "minimum": -9007199254740991,
      +  "type": "integer"
      +}
    • changedInput schema / properties / installation / properties / rating_basis / description
      Previous value: -"An Indian design (IS 1554-1, IS 7098-1, IS 7098-2, IS 694): iec (default, the IEC tables as for any design) or is3961. IS 1554-1 / IS 7098: the IS 3961 Part 2, 6 or 7 tables with their ambient, depth and soil factors (laying, formation, air_c default 40, ground_c default 30, depth_m default the depth of the part, soil_k_m_per_w default 1.5) and their group tables (group: circuits or multicore cables, one alone by default; in the ground or a duct spacing_mm, the clear distance between them, 0 touching, and tiers for multicore cables laid direct, Part 2 / 6 only; in air support tray (perforated), vertical or ladder, trays, and clearance oneDiameter for spaced multicore cables, else touching). IS 694: IS 3961 (Part 5) with is_method, phase (single-core), protection, air_c (default 40) and group (the circuits, cl. 4.2); flexible cables and cords take Table 5 with air_c and group only."New value: +"A 0.6/1 kV IEC design (not HD 603): iec (default, IEC 60364-5-52:2009), de (DIN VDE 0298-4:2013-06, the German tables of the same methods, its one differing cell named in override; no D2) or au (AS/NZS 3008.1.1:2025 with au_method; PVC not rated). An HD 620 S3:2023 Section 10-C design: iec (default, IEC 60502-2 Annex B with its factors) or hd620, the section's own Tables 7 to 10 (laying buried or air, formation for single cores: trefoil, or flat for flatTouching and flatSpaced) at the conditions of its clause 5 only (0.7 m, ground 20 °C, soil 1.0 / 2.5 K·m/W, load factor 0.7 in the earth; air 30 °C, load factor 1.0), since the section gives no conversion factors; no table for ducts. An Indian design (IS 1554-1, IS 7098-1, IS 7098-2, IS 694): iec (default, the IEC tables as for any design) or is3961. IS 1554-1 / IS 7098: the IS 3961 Part 2, 6 or 7 tables with their ambient, depth and soil factors (laying, formation, air_c default 40, ground_c default 30, depth_m default the depth of the part, soil_k_m_per_w default 1.5) and their group tables (group: circuits or multicore cables, one alone by default; in the ground or a duct spacing_mm, the clear distance between them, 0 touching, and tiers for multicore cables laid direct, Part 2 / 6 only; in air support tray (perforated), vertical or ladder, trays, and clearance oneDiameter for spaced multicore cables, else touching). IS 694: IS 3961 (Part 5) with is_method, phase (single-core), protection, air_c (default 40) and group (the circuits, cl. 4.2); flexible cables and cords take Table 5 with air_c and group only."
    • changedInput schema / properties / installation / properties / rating_basis / enum
      Previous value: -[
      -  "iec",
      -  "is3961"
      -]New value: +[
      +  "iec",
      +  "is3961",
      +  "hd620",
      +  "de",
      +  "au"
      +]
    • addedInput schema / properties / installation / properties / reel_drum
      Added value: +{
      +  "description": "A flexible cable (class 5 or 6, or a cord) on a motor-driven reeling drum, as the rating panel: cylindrical (ventilated, wide flanges), radial-vent or radial-closed (spiral). amps becomes the rating on the drum, times the NFPA 79 (2024) Table 12.7.3 factor, whole amperes down; reel gives the factor, the DIN VDE 0298-4:2013-06 Table 27 factor beside it and the drum rules of 13.4.3.2.",
      +  "enum": [
      +    "cylindrical",
      +    "radial-vent",
      +    "radial-closed"
      +  ],
      +  "type": "string"
      +}
    • addedInput schema / properties / installation / properties / reel_layers
      Added value: +{
      +  "description": "With reel_drum cylindrical: the layers wound, 1 to 5 (Table 12.7.3 gives factors for 1 to 4; DIN VDE 0298-4 Table 27 for 1 to 5). Default 1.",
      +  "maximum": 9007199254740991,
      +  "minimum": -9007199254740991,
      +  "type": "integer"
      +}
    • addedInput schema / properties / installation / properties / restrained
      Added value: +{
      +  "description": "ratings.short_circuit: yes when the cable is buried directly, clamped or bent tighter than specified (IEC 60986 3.2.2, IS 16269 3.2.2): a thermoplastic insulation's (PVC, PE) short-circuit limits are taken 10 °C lower. Default no.",
      +  "enum": [
      +    "yes",
      +    "no"
      +  ],
      +  "type": "string"
      +}
    • changedInput schema / properties / spec / description
      Previous value: -"Instead of a sentence: {voltage: \"12/20\", cores: 3, section: 95, metal, screen, screenType, screenSection, screenLay (helical | interstices), insulation, sheath, watertight, armour}; add standard (an id from design_presets: HD620-10C, BS6724, UL-NMB, EN50525-2-21 ...) for that family's own build at the nearest voltage, size and count it lists."New value: +"Instead of a sentence: {voltage: \"12/20\", cores: 3, section: 95, metal, screen, screenType, screenSection, screenLay (helical | interstices), insulation, sheath, watertight, armour}; add standard (an id from design_presets: HD620-10C, BS6724, UL-NMB, EN50525-2-21 ...) for that family's own build at the nearest voltage, size and count it lists; with an HD 620 section that lays three single cores up (HD620-10E1, -10E2, -10I1, -10I2, -10I3 ...), bundle none | messenger | earth and cores 3 builds the bundle."
  4. Changed5 schema fields changed
    • addedInput schema / properties / installation / properties / is_method
      Added value: +{
      +  "description": "IS 694 on IS 3961 (Part 5): clipped (default), enclosed (in conduit or trunking), defined (the defined conditions) or trefoil (single-core, three-phase only).",
      +  "enum": [
      +    "clipped",
      +    "enclosed",
      +    "defined",
      +    "trefoil"
      +  ],
      +  "type": "string"
      +}
    • addedInput schema / properties / installation / properties / phase
      Added value: +{
      +  "description": "IS 694 single-core on IS 3961 (Part 5): a single-phase (2 cables) or three-phase (3 or 4 cables, default) circuit.",
      +  "enum": [
      +    "single",
      +    "three"
      +  ],
      +  "type": "string"
      +}
    • addedInput schema / properties / installation / properties / protection
      Added value: +{
      +  "description": "IS 694 on IS 3961 (Part 5): close (default) or coarse excess current protection, which picks the Table 8 ambient row.",
      +  "enum": [
      +    "close",
      +    "coarse"
      +  ],
      +  "type": "string"
      +}
    • changedInput schema / properties / installation / properties / rating_basis / description
      Previous value: -"An Indian design (IS 1554-1, IS 7098-1, IS 7098-2): iec (default, the IEC tables as for any design) or is3961, the IS 3961 Part 2, 6 or 7 tables with their ambient, depth and soil factors (laying, formation, air_c default 40, ground_c default 30, depth_m default the depth of the part, soil_k_m_per_w default 1.5)."New value: +"An Indian design (IS 1554-1, IS 7098-1, IS 7098-2, IS 694): iec (default, the IEC tables as for any design) or is3961. IS 1554-1 / IS 7098: the IS 3961 Part 2, 6 or 7 tables with their ambient, depth and soil factors (laying, formation, air_c default 40, ground_c default 30, depth_m default the depth of the part, soil_k_m_per_w default 1.5) and their group tables (group: circuits or multicore cables, one alone by default; in the ground or a duct spacing_mm, the clear distance between them, 0 touching, and tiers for multicore cables laid direct, Part 2 / 6 only; in air support tray (perforated), vertical or ladder, trays, and clearance oneDiameter for spaced multicore cables, else touching). IS 694: IS 3961 (Part 5) with is_method, phase (single-core), protection, air_c (default 40) and group (the circuits, cl. 4.2); flexible cables and cords take Table 5 with air_c and group only."
    • addedInput schema / properties / installation / properties / tiers
      Added value: +{
      +  "description": "IS 3961 (Part 2 / 6) Table 27 / 21: multicore cables laid direct in the ground in tiers (rating_basis is3961, group above 1).",
      +  "enum": [
      +    "yes",
      +    "no"
      +  ],
      +  "type": "string"
      +}
  5. Changed5 schema fields changed
    • addedInput schema / properties / installation / properties / cord_carrying
      Added value: +{
      +  "anyOf": [
      +    {
      +      "const": 2,
      +      "type": "number"
      +    },
      +    {
      +      "const": 3,
      +      "type": "number"
      +    }
      +  ],
      +  "description": "A North American flexible cord (NFPA 79 2024 Table 12.8.2 at 30 °C): 3 current-carrying conductors (column A, default) or 2 (column B); a cord of two conductors is always column B."
      +}
    • addedInput schema / properties / installation / properties / mv_install
      Added value: +{
      +  "description": "Type MV and URD (NFPA 70 2026, 315.60 Tables (C)(1) to (C)(20)): airIsolated, airTriplexed, conduitAir, duct (default), buried or buriedTriplexed; the tables the construction has. group picks the circuits of the table (duct 1, 3 or 6; buried 1 or 2); air_c (default 40) or ground_c (default 20) the ambient.",
      +  "enum": [
      +    "airIsolated",
      +    "airTriplexed",
      +    "conduitAir",
      +    "duct",
      +    "buried",
      +    "buriedTriplexed"
      +  ],
      +  "type": "string"
      +}
    • addedInput schema / properties / installation / properties / mv_temp_c
      Added value: +{
      +  "anyOf": [
      +    {
      +      "const": 90,
      +      "type": "number"
      +    },
      +    {
      +      "const": 105,
      +      "type": "number"
      +    }
      +  ],
      +  "description": "Type MV and URD: the 90 °C (MV-90) or 105 °C (MV-105) column; default 90 for URD, 105 for MV-105."
      +}
    • addedInput schema / properties / installation / properties / rating_basis
      Added value: +{
      +  "description": "An Indian design (IS 1554-1, IS 7098-1, IS 7098-2): iec (default, the IEC tables as for any design) or is3961, the IS 3961 Part 2, 6 or 7 tables with their ambient, depth and soil factors (laying, formation, air_c default 40, ground_c default 30, depth_m default the depth of the part, soil_k_m_per_w default 1.5).",
      +  "enum": [
      +    "iec",
      +    "is3961"
      +  ],
      +  "type": "string"
      +}
    • changedInput schema / properties / spec / description
      Previous value: -"Instead of a sentence: {voltage: \"12/20\", cores: 3, section: 95, metal, screen, screenType, screenSection, insulation, sheath, watertight, armour}; add standard (an id from design_presets: HD620-10C, BS6724, UL-NMB, EN50525-2-21 ...) for that family's own build at the nearest voltage, size and count it lists."New value: +"Instead of a sentence: {voltage: \"12/20\", cores: 3, section: 95, metal, screen, screenType, screenSection, screenLay (helical | interstices), insulation, sheath, watertight, armour}; add standard (an id from design_presets: HD620-10C, BS6724, UL-NMB, EN50525-2-21 ...) for that family's own build at the nearest voltage, size and count it lists."
  6. Changed2 schema fields changed
    • changedInput schema / properties / load / description
      Previous value: -"For voltage_drop and sizing: {length_m (required), amps or kw (default the design's own rating), phases 1 | 3, volts, pf (0.85), temp_c (the insulation's normal temperature), hz, limit_pct (a Table G.52.1 row 3, 5, 6, 8 raised beyond 100 m, or an own limit; default 5), conduit pvc | al | steel (NEC wires, Chapter 9 Table 9)}. IEC 60364-5-52 Annex G, BS 7671 Table 4E4B or NEC Chapter 9 Table 9, and the smallest size by current, by drop and by both."New value: +"For voltage_drop and sizing: {length_m (required), amps or kw (default the design's own rating), phases 1 | 3, volts, pf (0.85), temp_c (the insulation's normal temperature), hz, limit_pct (a Table G.52.1 row 3, 5, 6, 8 raised beyond 100 m, or an own limit; default 5), conduit pvc | al | steel (NEC wires, Chapter 9 Table 9), formation touching | flat | spaced (single-core cables)}. IEC 60364-5-52 Annex G with the IEC 60287-1-1 a.c. resistance, BS 7671 Tables 4E4B, 4D4B, 4E3B, 4D3B or NEC Chapter 9 Table 9, and the smallest size by current, by drop and by both."
    • changedInput schema / properties / test_variant / description
      Previous value: -"For after_installation: a national variant of the tests after installation (HD620-10A, HD620-10C, HD620-10J, HD620-10M, HD620-10R, BS6622, BS7846, BS5467, HD603-3F, HD603-G); default the one the design's standard implies."New value: +"For after_installation: a national variant of the tests after installation (HD620-10A, HD620-10C, HD620-10J, HD620-10M, HD620-10R, BS6622, IS1255, BS7846, BS5467, HD603-3F, HD603-G); default the one the design's standard implies."
  7. Changed1 schema field changed
    • addedInput schema / properties / installation / properties / iec_method
      Added value: +{
      +  "description": "IEC 60364-5-52 reference method, 0.6/1 kV IEC basis (Table B.52.1): A1 / B1 single-core in conduit, A2 / B2 multicore in conduit, C on a wall, D1 in ducts, D2 direct in the ground, E / F in free air.",
      +  "enum": [
      +    "A1",
      +    "A2",
      +    "B1",
      +    "B2",
      +    "C",
      +    "D1",
      +    "D2",
      +    "E",
      +    "F"
      +  ],
      +  "type": "string"
      +}
  8. Changed1 schema field changed
    • changedInput schema / properties / cpc / description
      Previous value: -"For cpc: {kind armour | core | separate (default the armour where the design has one), basis iec | bs, column tp70 | tp90 | ts90, section_mm2, metal Cu | Al (a separate conductor)}."New value: +"For cpc: {kind armour | core | separate (default the armour where the design has one), basis iec | bs, column tp70 | tp90 | ts90, section_mm2, metal Cu | Al (a separate conductor), system TN | TT, circuit final | distribution, u0_v (line to earth, default 230), ia_a (the current that operates the device in time)}."
  9. Changed11 schema fields changed
    • addedInput schema / properties / cpc
      Added value: +{
      +  "additionalProperties": {},
      +  "description": "For cpc: {kind armour | core | separate (default the armour where the design has one), basis iec | bs, column tp70 | tp90 | ts90, section_mm2, metal Cu | Al (a separate conductor)}.",
      +  "propertyNames": {
      +    "type": "string"
      +  },
      +  "type": "object"
      +}
    • addedInput schema / properties / fault
      Added value: +{
      +  "additionalProperties": {},
      +  "description": "For cpc: {ka (the fault current), seconds (default fault_s)}: the adiabatic check of the armour or protective conductor (IEC 60364-5-54:2011 Annex A, BS 7671 Tables 54.2 to 54.4) up to 1 kV.",
      +  "propertyNames": {
      +    "type": "string"
      +  },
      +  "type": "object"
      +}
    • changedInput schema / properties / installation / description
      Previous value: -"For ratings.current: how the cable is installed; the designer's defaults for what is not given (buried 0.8 m, 20 °C ground, 1.5 K·m/W, trefoil, alone). The answer lists the defaults used and the fields the cable's table does not read."New value: +"For ratings.current: how the cable is installed; the designer's defaults for what is not given (buried 0.8 m, 20 °C ground, 1.5 K·m/W, trefoil, alone). At 0.6/1 kV group, arrangement, clearance, trays and h3_pct give the IEC 60364-5-52 B.52.17 to B.52.21 (BS 7671 4C1 to 4C3) grouping and the E.52.1 harmonic factors. The answer lists the defaults used and the fields the cable's table does not read."
    • addedInput schema / properties / installation / properties / arrangement
      Added value: +{
      +  "description": "0.6/1 kV in air: how the group lies (bunched, on a wall or ceiling, on perforated, vertical or unperforated trays, on ladders, spaced); default bunched.",
      +  "enum": [
      +    "bunched",
      +    "wall",
      +    "ceiling",
      +    "perforated",
      +    "vertical",
      +    "unperforated",
      +    "ladder",
      +    "spaced"
      +  ],
      +  "type": "string"
      +}
    • addedInput schema / properties / installation / properties / clearance
      Added value: +{
      +  "description": "0.6/1 kV: touching (default), oneDiameter (multicore cables on an IEC tray), or the clearance in the ground between cables or ducts, m (0.125 to 1.0).",
      +  "enum": [
      +    "touching",
      +    "oneDiameter",
      +    "0.125",
      +    "0.25",
      +    "0.5",
      +    "1.0"
      +  ],
      +  "type": "string"
      +}
    • addedInput schema / properties / installation / properties / h3_pct
      Added value: +{
      +  "description": "0.6/1 kV 4- and 5-core cables: the third-harmonic share of the phase current, % (IEC 60364-5-52 Table E.52.1).",
      +  "type": "number"
      +}
    • addedInput schema / properties / lang / description
      Added value: +"Any of the site's 15 languages for the answer's words (the sentence itself is read in English or Turkish)."
    • changedInput schema / properties / lang / enum
      Previous value: -[
      -  "en",
      -  "tr"
      -]New value: +[
      +  "en",
      +  "tr",
      +  "de",
      +  "nl",
      +  "sv",
      +  "fr",
      +  "es",
      +  "da",
      +  "no",
      +  "fi",
      +  "it",
      +  "ro",
      +  "pl",
      +  "cs",
      +  "ru"
      +]
    • addedInput schema / properties / load
      Added value: +{
      +  "additionalProperties": {},
      +  "description": "For voltage_drop and sizing: {length_m (required), amps or kw (default the design's own rating), phases 1 | 3, volts, pf (0.85), temp_c (the insulation's normal temperature), hz, limit_pct (a Table G.52.1 row 3, 5, 6, 8 raised beyond 100 m, or an own limit; default 5), conduit pvc | al | steel (NEC wires, Chapter 9 Table 9)}. IEC 60364-5-52 Annex G, BS 7671 Table 4E4B or NEC Chapter 9 Table 9, and the smallest size by current, by drop and by both.",
      +  "propertyNames": {
      +    "type": "string"
      +  },
      +  "type": "object"
      +}
    • addedInput schema / properties / nec
      Added value: +{
      +  "additionalProperties": {},
      +  "description": "North American wires: {ocpd_a (the overcurrent device; default from the ampacity), phase_min (250.122(B): the size before upsizing), install raceway | air, ambient_c, carrying, termination_c 60 | 75 | 90}: nec.ampacity (NEC 310.16) and nec.egc (Table 250.122).",
      +  "propertyNames": {
      +    "type": "string"
      +  },
      +  "type": "object"
      +}
    • addedInput schema / properties / test_variant
      Added value: +{
      +  "description": "For after_installation: a national variant of the tests after installation (HD620-10A, HD620-10C, HD620-10J, HD620-10M, HD620-10R, BS6622, BS7846, BS5467, HD603-3F, HD603-G); default the one the design's standard implies.",
      +  "type": "string"
      +}
  10. Changed3 schema fields changed
    • addedInput schema / properties / fault_s
      Added value: +{
      +  "description": "Fault duration for ratings.short_circuit, s (default 1).",
      +  "maximum": 5,
      +  "minimum": 0.1,
      +  "type": "number"
      +}
    • addedInput schema / properties / installation
      Added value: +{
      +  "description": "For ratings.current: how the cable is installed; the designer's defaults for what is not given (buried 0.8 m, 20 °C ground, 1.5 K·m/W, trefoil, alone). The answer lists the defaults used and the fields the cable's table does not read.",
      +  "properties": {
      +    "air_c": {
      +      "type": "number"
      +    },
      +    "depth_m": {
      +      "type": "number"
      +    },
      +    "formation": {
      +      "description": "Single-core circuits.",
      +      "enum": [
      +        "trefoil",
      +        "flatTouching",
      +        "flatSpaced"
      +      ],
      +      "type": "string"
      +    },
      +    "ground_c": {
      +      "type": "number"
      +    },
      +    "group": {
      +      "maximum": 9007199254740991,
      +      "minimum": -9007199254740991,
      +      "type": "integer"
      +    },
      +    "laying": {
      +      "enum": [
      +        "buried",
      +        "duct",
      +        "air"
      +      ],
      +      "type": "string"
      +    },
      +    "method": {
      +      "description": "BS 7671 reference method (British LV cables).",
      +      "enum": [
      +        "C",
      +        "E",
      +        "D_direct",
      +        "D_duct"
      +      ],
      +      "type": "string"
      +    },
      +    "soil_k_m_per_w": {
      +      "type": "number"
      +    },
      +    "spacing_mm": {
      +      "type": "number"
      +    },
      +    "support": {
      +      "enum": [
      +        "tray",
      +        "ladder",
      +        "vertical"
      +      ],
      +      "type": "string"
      +    },
      +    "trays": {
      +      "maximum": 9007199254740991,
      +      "minimum": -9007199254740991,
      +      "type": "integer"
      +    }
      +  },
      +  "type": "object"
      +}
    • changedInput schema / properties / spec / description
      Previous value: -"Instead of a sentence: {voltage: \"12/20\", cores: 3, section: 95, metal, screen, screenType, screenSection, insulation, sheath, watertight, armour}."New value: +"Instead of a sentence: {voltage: \"12/20\", cores: 3, section: 95, metal, screen, screenType, screenSection, insulation, sheath, watertight, armour}; add standard (an id from design_presets: HD620-10C, BS6724, UL-NMB, EN50525-2-21 ...) for that family's own build at the nearest voltage, size and count it lists."
  11. Changed2 schema fields changed
    • changedInput schema / properties / formats / description
      Previous value: -"Files to include: xml, dxf, svg, csv, glb (base64)."New value: +"Files to include: xml, dxf, svg, csv, glb (base64), step (STEP AP214 text), pdf (datasheet, base64)."
    • changedInput schema / properties / formats / items / enum
      Previous value: -[
      -  "xml",
      -  "dxf",
      -  "svg",
      -  "csv",
      -  "glb"
      -]New value: +[
      +  "xml",
      +  "dxf",
      +  "svg",
      +  "csv",
      +  "glb",
      +  "step",
      +  "pdf"
      +]
  12. Added

TDQS

A3.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the readOnly/idempotent/closed-world annotations, it discloses that the engine is deterministic with no LLM, that results are a nominal calculation rather than a datasheet, and that unspecified inputs fall back to defaults which are listed in the answer. That is exactly the kind of trust-calibration context annotations cannot express; only runtime cost or output size handling is left unaddressed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The verb-and-resource lead is front-loaded, but the whole body is one sprawling semicolon-chained sentence with deeply nested clauses ('with an HD 620 section that lays three single cores up...'). It is dense with real content rather than filler, yet the structure makes it hard to scan, and several standard references duplicate what the schema already documents in far more detail.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description carries the return-value burden and does so well: it lists what comes back (per-layer thickness with cited standards, diameter, designation decode, weight, bend radius, pulling force, colours, field stress, current/voltage-drop/short-circuit ratings) plus the selectable file formats. What it omits is that at least one of sentence/spec/design must be supplied, since the schema marks nothing required.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3 and the schema already explains every parameter, including the large nested installation and load objects. The description adds a little framing — that 'sentence' and 'spec' are alternatives and that a bare designation parses as a sentence — but no parameter-level detail beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb and resource ('Design and size a cable') and enumerates the cable families (power, control, LAN, coaxial, fibre) plus the concrete outputs (layer thicknesses, diameter, designation, weight, ratings, export formats). It is clearly distinguishable in substance, but it never names or contrasts any sibling such as check_cable, decode_cable_code or iec60287_rating, so the boundary is inferred rather than stated.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It tells the agent the two entry modes — a free-text sentence in any of 15 languages, or a structured spec — and notes 'a bare designation works as the sentence'. That is usable input guidance, but there is no explicit when-to-use-this-instead-of-X guidance against the many sibling tools, nor any stated prerequisites or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources