Skip to main content
Glama

The Cable Code

Find the cable drum a length needs

drum_fit
Read-onlyIdempotent

Which cable drum (reel) a length of cable needs, or how much one drum takes: whole layers and whole turns wound nested (each turn in the groove of the layer below, layers rising 0.866 dc) on a wound diameter of 1.05 x OD with a freeboard under the flange rim; cable makers' own capacity tables count aligned layers and print about 11 to 18 % less, and a drum wound loosely may hold less. Drums are KTG, Nordic K, older DIN, Spanish, NEMA, Turkish, Brazilian and Chinese series and makers' own sizes (plastic and plywood reels among them) as their makers print them, and the IS 10418:2024 sizes (India) as the standard's own Table 1 with no tare or load rating, each with its source and seen level; the barrel check uses the KTG minimum barrel table, and the cable's datasheet wins; a load rating is the maker's own, and a drum without one is not load checked (no load_ok). With reeling (and layers for a cylindrical drum), the NFPA 79 (2024) Table 12.7.3 derating of a motor-driven reeling drum. Free, deterministic, no LLM.

Input Schema

NameRequiredDescriptionDefault
DNoA drum by its dimensions: flange diameter, mm.
WNoWinding width between the flanges, mm.
dNoBarrel diameter, mm, less than D.
kgNoCable mass, kg/km: gives cable and gross (cable + tare) kg per drum and the maker's load check.
odYesCable outer diameter, mm (a flat cable: its larger side).
maxNoMost drums of one size the length may be split over. Default 1.
kindNoCable kind for the smallest barrel (KTG table, x OD): flexible 12, lv-multi 15, lv-single 20, mv-multi 20, mv-single 25, hv 25, telecom 20, paper-lead 30. Default lv-multi.
langNoThe handling block's words: any of the site's 15 languages.
poolNoWith length: 1 answers with pooled drum sizes (pools[], one row per nominal size and material, its makers' drums inside, each with its own numbers) instead of one row per maker's drum (fits[]). Default 0: the answer is unchanged.
layersNoWith reeling: the layers wound, 1 to 5 (a cylindrical drum's factor depends on them, a radial drum's does not; NFPA 79 gives factors for 1 to 4, DIN VDE 0298-4 Table 27 for 1 to 5). Default 1.
lengthNoCable length to wind, m.
systemNoDrum system: KTG (the KTG rental pool, Europe), nordic-k (Nordic K series), din (older DIN 46391 series as Eland and Romagna Cavi print it), spanish (Spanish makers), EU (every European drum), NEMA (WC 26 classes), NA (every North American drum), TR (Turkish makers), IS (IS 10418:2024, India: the standard's own sizes, no tare or load), reels (plastic, plywood and cardboard reels), maker (one maker's own sizes), other (Brazil NBR 11137, Chinese steel drums) or all. Default all.
laggingNoAdds handling: the drum page's handling and storage block (lagging and its estimated mass, the rules for lifting, transport, storage and payout, HD 620 for MV kinds, return terms, ISPM 15) for the first drum of the answer, every line with its sources; each fit (or pool row) also carries its own handling: lagging, gross mass, bolt torque, rules, HD 620 barrel and return terms.
reelingNoA motor-driven reeling drum (crane, mining machine, festoon reel) for a flexible cable: cylindrical (ventilated, wide flanges), radial-vent or radial-closed (spiral). Adds reeling: the NFPA 79 (2024) Table 12.7.3 factor on the cable's current rating and the drum rules of 13.4.3.2.
handlingNo1: the handling block with lagging none.
materialNoWith D, d and W: the drum's material for the handling block (default wood).
allowanceNoWound diameter over OD. Default 1.05.
freeboardNoFreeboard to the flange rim, mm. Default max(50 mm, one wound diameter).
free_heightNoWith D, d and W: a part-used drum, the height measured from the flange rim down to the top of the cable, mm. Gives the length left on it as a range (the top layer may be part wound).

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / properties / layers / description
      Previous value: -"With reeling: the layers wound, 1 to 4 (a cylindrical drum's factor depends on them, a radial drum's does not). Default 1."New value: +"With reeling: the layers wound, 1 to 5 (a cylindrical drum's factor depends on them, a radial drum's does not; NFPA 79 gives factors for 1 to 4, DIN VDE 0298-4 Table 27 for 1 to 5). Default 1."
  2. Changed1 schema field changed
    • changedInput schema / properties / lagging / description
      Previous value: -"Adds handling: the drum page's handling and storage block (lagging and its estimated mass, the rules for lifting, transport, storage and payout, HD 620 for MV kinds, return terms, ISPM 15) for the first drum of the answer, every line with its sources."New value: +"Adds handling: the drum page's handling and storage block (lagging and its estimated mass, the rules for lifting, transport, storage and payout, HD 620 for MV kinds, return terms, ISPM 15) for the first drum of the answer, every line with its sources; each fit (or pool row) also carries its own handling: lagging, gross mass, bolt torque, rules, HD 620 barrel and return terms."
  3. Changed4 schema fields changed
    • addedInput schema / properties / handling
      Added value: +{
      +  "anyOf": [
      +    {
      +      "const": 0,
      +      "type": "number"
      +    },
      +    {
      +      "const": 1,
      +      "type": "number"
      +    },
      +    {
      +      "type": "boolean"
      +    }
      +  ],
      +  "description": "1: the handling block with lagging none."
      +}
    • addedInput schema / properties / lagging
      Added value: +{
      +  "description": "Adds handling: the drum page's handling and storage block (lagging and its estimated mass, the rules for lifting, transport, storage and payout, HD 620 for MV kinds, return terms, ISPM 15) for the first drum of the answer, every line with its sources.",
      +  "enum": [
      +    "none",
      +    "full",
      +    "export",
      +    "spaced",
      +    "cat",
      +    "wrap",
      +    "steel"
      +  ],
      +  "type": "string"
      +}
    • addedInput schema / properties / lang
      Added value: +{
      +  "description": "The handling block's words: any of the site's 15 languages.",
      +  "enum": [
      +    "en",
      +    "tr",
      +    "de",
      +    "nl",
      +    "sv",
      +    "fr",
      +    "es",
      +    "da",
      +    "no",
      +    "fi",
      +    "it",
      +    "ro",
      +    "pl",
      +    "cs",
      +    "ru"
      +  ],
      +  "type": "string"
      +}
    • addedInput schema / properties / material
      Added value: +{
      +  "description": "With D, d and W: the drum's material for the handling block (default wood).",
      +  "enum": [
      +    "wood",
      +    "plywood",
      +    "steel",
      +    "plastic",
      +    "cardboard"
      +  ],
      +  "type": "string"
      +}
  4. Changed2 schema fields changed
    • addedInput schema / properties / layers
      Added value: +{
      +  "description": "With reeling: the layers wound, 1 to 4 (a cylindrical drum's factor depends on them, a radial drum's does not). Default 1.",
      +  "maximum": 9007199254740991,
      +  "minimum": -9007199254740991,
      +  "type": "integer"
      +}
    • addedInput schema / properties / reeling
      Added value: +{
      +  "description": "A motor-driven reeling drum (crane, mining machine, festoon reel) for a flexible cable: cylindrical (ventilated, wide flanges), radial-vent or radial-closed (spiral). Adds reeling: the NFPA 79 (2024) Table 12.7.3 factor on the cable's current rating and the drum rules of 13.4.3.2.",
      +  "enum": [
      +    "cylindrical",
      +    "radial-vent",
      +    "radial-closed"
      +  ],
      +  "type": "string"
      +}
  5. Changed2 schema fields changed
    • changedInput schema / properties / system / description
      Previous value: -"Drum system: KTG (the KTG rental pool, Europe), nordic-k (Nordic K series), din (older DIN 46391 series as Eland and Romagna Cavi print it), spanish (Spanish makers), EU (every European drum), NEMA (WC 26 classes), NA (every North American drum), TR (Turkish makers), reels (plastic, plywood and cardboard reels), maker (one maker's own sizes), other (Brazil NBR 11137, Chinese steel drums) or all. Default all."New value: +"Drum system: KTG (the KTG rental pool, Europe), nordic-k (Nordic K series), din (older DIN 46391 series as Eland and Romagna Cavi print it), spanish (Spanish makers), EU (every European drum), NEMA (WC 26 classes), NA (every North American drum), TR (Turkish makers), IS (IS 10418:2024, India: the standard's own sizes, no tare or load), reels (plastic, plywood and cardboard reels), maker (one maker's own sizes), other (Brazil NBR 11137, Chinese steel drums) or all. Default all."
    • changedInput schema / properties / system / enum
      Previous value: -[
      -  "KTG",
      -  "nordic-k",
      -  "din",
      -  "spanish",
      -  "EU",
      -  "NEMA",
      -  "NA",
      -  "TR",
      -  "reels",
      -  "maker",
      -  "other",
      -  "all"
      -]New value: +[
      +  "KTG",
      +  "nordic-k",
      +  "din",
      +  "spanish",
      +  "EU",
      +  "NEMA",
      +  "NA",
      +  "TR",
      +  "IS",
      +  "reels",
      +  "maker",
      +  "other",
      +  "all"
      +]
  6. Changed1 schema field changed
    • addedInput schema / properties / free_height
      Added value: +{
      +  "description": "With D, d and W: a part-used drum, the height measured from the flange rim down to the top of the cable, mm. Gives the length left on it as a range (the top layer may be part wound).",
      +  "type": "number"
      +}
  7. Changed3 schema fields changed
    • addedInput schema / properties / pool
      Added value: +{
      +  "anyOf": [
      +    {
      +      "const": 0,
      +      "type": "number"
      +    },
      +    {
      +      "const": 1,
      +      "type": "number"
      +    },
      +    {
      +      "type": "boolean"
      +    }
      +  ],
      +  "description": "With length: 1 answers with pooled drum sizes (pools[], one row per nominal size and material, its makers' drums inside, each with its own numbers) instead of one row per maker's drum (fits[]). Default 0: the answer is unchanged."
      +}
    • changedInput schema / properties / system / description
      Previous value: -"Drum family: KTG (Europe), NEMA (North America), TR (Turkish makers), maker (one maker's own sizes) or all. Default all."New value: +"Drum system: KTG (the KTG rental pool, Europe), nordic-k (Nordic K series), din (older DIN 46391 series as Eland and Romagna Cavi print it), spanish (Spanish makers), EU (every European drum), NEMA (WC 26 classes), NA (every North American drum), TR (Turkish makers), reels (plastic, plywood and cardboard reels), maker (one maker's own sizes), other (Brazil NBR 11137, Chinese steel drums) or all. Default all."
    • changedInput schema / properties / system / enum
      Previous value: -[
      -  "KTG",
      -  "NEMA",
      -  "TR",
      -  "maker",
      -  "all"
      -]New value: +[
      +  "KTG",
      +  "nordic-k",
      +  "din",
      +  "spanish",
      +  "EU",
      +  "NEMA",
      +  "NA",
      +  "TR",
      +  "reels",
      +  "maker",
      +  "other",
      +  "all"
      +]
  8. Added

TDQS

A4.1/5.0
Behavior5/5

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

Beyond the read-only and idempotent annotations, it discloses the nested-winding geometry, capacity differences from manufacturers' tables and loose winding, source and seen-level reporting, datasheet precedence, and when load checking is omitted. The reeling-standard scope and deterministic, no-LLM operation add further useful reliability context.

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 purpose is front-loaded and nearly every clause contains relevant technical information. However, the single long, semicolon-heavy paragraph packs calculation rules, catalog coverage, standards, caveats, and optional modes together, making it unnecessarily difficult to scan.

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?

For a complex 19-parameter calculator, the description and fully documented schema cover the principal modes, assumptions, data coverage, and important limitations. With no output schema, it could better summarize the main result forms and more explicitly organize the input combinations for catalog selection versus a dimensioned drum.

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

Parameters4/5

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

Although schema description coverage is 100%, the description adds substantive physical meaning to the length/capacity calculation, allowance and freeboard behavior, and the interaction between reeling and layers. It also clarifies consequential behavior such as omitting load_ok when no maker load rating exists.

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 opening clause clearly states two distinct jobs: selecting a cable drum for a required cable length and calculating how much cable one drum holds. It does not explicitly differentiate the tool from the sibling drum_loading, so that selection boundary requires inference.

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

Usage Guidelines4/5

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

It gives clear usage contexts for length-based drum selection, capacity calculation, and optional motor-driven reeling derating with layer-dependent behavior. There is no explicit when-not guidance or named alternative, but the main invocation scenarios are understandable.

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