{
  "openapi": "3.1.0",
  "info": {
    "title": "ToolHub Labs Engineering Calculation API",
    "description": "Deterministic computational engine for licensed trade contractors and PC hardware architects. Fully verified against NFPA 70 (NEC 2026), ACCA Manual J/D, ACI 318, IPC, UPC, ASTM C840, and Intel ATX 3.0 / PCIe 5.0 standards.",
    "version": "2.0.0"
  },
  "servers": [
    {
      "url": "https://toolhublabs.com"
    }
  ],
  "paths": {
    "/trade/tools/electrical-wire-size-calculator": {
      "get": {
        "summary": "Electrical Wire Size & Voltage Drop Calculator",
        "description": "Calculates minimum copper or aluminum conductor AWG gauge, continuous load derating (125%), and one-way voltage drop percentage per NEC Table 310.16.",
        "operationId": "calculateWireSize",
        "parameters": [
          { "name": "amperage", "in": "query", "required": true, "description": "Circuit load current in Amperes (A)", "schema": { "type": "number", "minimum": 1, "maximum": 1200 } },
          { "name": "distance", "in": "query", "required": true, "description": "One-way circuit length in feet (ft)", "schema": { "type": "number", "minimum": 1, "maximum": 2000 } },
          { "name": "voltage", "in": "query", "required": false, "description": "Nominal circuit voltage (120, 208, 240, 277, 480)", "schema": { "type": "integer", "default": 120 } },
          { "name": "conductor", "in": "query", "required": false, "description": "Conductor material (copper or aluminum)", "schema": { "type": "string", "enum": ["copper", "aluminum"], "default": "copper" } },
          { "name": "phase", "in": "query", "required": false, "description": "Single-phase (1) or Three-phase (3)", "schema": { "type": "integer", "enum": [1, 3], "default": 1 } }
        ],
        "responses": {
          "200": { "description": "Recommended wire gauge AWG, percentage voltage drop, and minimum conduit trade size" }
        }
      }
    },
    "/trade/tools/electrical-load-calculator": {
      "get": {
        "summary": "Residential Electrical Service Load Calculator",
        "description": "Computes residential service entrance demand load and recommended main breaker rating (100A-400A) under the NEC Article 220.82 Optional Calculation Method.",
        "operationId": "calculateResidentialServiceLoad",
        "parameters": [
          { "name": "sqft", "in": "query", "required": true, "description": "Total conditioned square footage of dwelling unit", "schema": { "type": "number", "minimum": 300, "maximum": 20000 } },
          { "name": "smallApplianceCircuits", "in": "query", "required": false, "description": "Number of 20A small appliance branch circuits (default 2)", "schema": { "type": "integer", "default": 2 } },
          { "name": "hasElectricRange", "in": "query", "required": false, "description": "Whether an electric range or cooktop is installed", "schema": { "type": "boolean", "default": true } },
          { "name": "rangeWatts", "in": "query", "required": false, "description": "Electric range rating in Watts (default 12000)", "schema": { "type": "number", "default": 12000 } },
          { "name": "hasElectricDryer", "in": "query", "required": false, "description": "Whether an electric clothes dryer is installed", "schema": { "type": "boolean", "default": true } },
          { "name": "waterHeaterWatts", "in": "query", "required": false, "description": "Electric water heater wattage (0 for gas, 4500 for electric tank, 24000 for tankless)", "schema": { "type": "number", "default": 4500 } },
          { "name": "acTons", "in": "query", "required": false, "description": "Central air conditioning capacity in tons", "schema": { "type": "number", "default": 3.0 } },
          { "name": "heatingType", "in": "query", "required": false, "description": "Heating fuel type (gas_furnace, heat_pump, electric_furnace)", "schema": { "type": "string", "enum": ["gas_furnace", "heat_pump", "electric_furnace"], "default": "gas_furnace" } },
          { "name": "evAmps", "in": "query", "required": false, "description": "Dedicated Level 2 EVSE charger circuit rating in Amps (0, 32, 40, 48)", "schema": { "type": "number", "default": 0 } }
        ],
        "responses": {
          "200": { "description": "Calculated demand load in VA and Amps, recommended panel size, and service entrance conductors" }
        }
      }
    },
    "/trade/tools/conduit-fill-calculator": {
      "get": {
        "summary": "Conduit Fill & Maximum Wire Capacity Calculator",
        "description": "Calculates conduit cross-sectional area fill percentage and maximum THHN/XHHW conductor capacity per NEC Chapter 9 Tables 1, 4, and 5 under the 40% fill rule.",
        "operationId": "calculateConduitFill",
        "parameters": [
          { "name": "conduitType", "in": "query", "required": true, "description": "Raceway type (emt, pvc_sch40, pvc_sch80, rmc, fmc)", "schema": { "type": "string", "enum": ["emt", "pvc_sch40", "pvc_sch80", "rmc", "fmc"] } },
          { "name": "tradeSize", "in": "query", "required": true, "description": "Trade size fraction or inch (1/2, 3/4, 1, 1-1/4, 1-1/2, 2, 2-1/2, 3, 4)", "schema": { "type": "string" } },
          { "name": "wireGauge", "in": "query", "required": true, "description": "Conductor gauge (14, 12, 10, 8, 6, 4, 3, 2, 1, 1/0, 2/0, 3/0, 4/0)", "schema": { "type": "string" } },
          { "name": "wireInsulation", "in": "query", "required": false, "description": "Insulation type (thhn, xhhw)", "schema": { "type": "string", "default": "thhn" } }
        ],
        "responses": {
          "200": { "description": "Maximum allowable wires under 40% fill, actual percentage, and derating adjustment factors" }
        }
      }
    },
    "/trade/tools/hvac-btu-load-calculator": {
      "get": {
        "summary": "HVAC BTU Load & AC Tonnage Calculator",
        "description": "Calculates residential heat gain, sensible heat loss, cooling tonnage, and heating BTU delivery based on ACCA Manual J simplified standards.",
        "operationId": "calculateHvacBtu",
        "parameters": [
          { "name": "sqft", "in": "query", "required": true, "description": "Conditioned floor area in square feet", "schema": { "type": "number", "minimum": 100 } },
          { "name": "climateZone", "in": "query", "required": true, "description": "US DOE Climate Zone (1 through 7)", "schema": { "type": "integer", "minimum": 1, "maximum": 7 } },
          { "name": "ceilingHeight", "in": "query", "required": false, "description": "Average ceiling height in feet (default 8)", "schema": { "type": "number", "default": 8 } },
          { "name": "insulationQuality", "in": "query", "required": false, "description": "Building thermal envelope (poor, average, excellent)", "schema": { "type": "string", "enum": ["poor", "average", "excellent"], "default": "average" } }
        ],
        "responses": {
          "200": { "description": "Required cooling tonnage, cooling BTU/h, heating BTU/h, and CFM airflow delivery" }
        }
      }
    },
    "/trade/tools/duct-size-calculator": {
      "get": {
        "summary": "HVAC Duct Sizing & Airflow CFM Calculator",
        "description": "Sizes circular and equivalent rectangular sheet metal / flexible ducting based on ACCA Manual D and Equal Friction Method.",
        "operationId": "calculateDuctSize",
        "parameters": [
          { "name": "cfm", "in": "query", "required": true, "description": "Volumetric airflow delivery in cubic feet per minute (CFM)", "schema": { "type": "number", "minimum": 10 } },
          { "name": "frictionRate", "in": "query", "required": false, "description": "Design friction loss rate in inches water column per 100 equivalent feet (default 0.10)", "schema": { "type": "number", "default": 0.10 } },
          { "name": "material", "in": "query", "required": false, "description": "Duct material (metal, flex, ductboard)", "schema": { "type": "string", "enum": ["metal", "flex", "ductboard"], "default": "metal" } },
          { "name": "fixedSide", "in": "query", "required": false, "description": "Dimension constraint for rectangular duct (height or width)", "schema": { "type": "string", "enum": ["height", "width"], "default": "height" } },
          { "name": "fixedDimensionInches", "in": "query", "required": false, "description": "Fixed dimension in inches (e.g. 8, 10, 12)", "schema": { "type": "number", "default": 10 } }
        ],
        "responses": {
          "200": { "description": "Recommended round duct diameter, rectangular dimensions, and air velocity in FPM" }
        }
      }
    },
    "/trade/tools/refrigerant-charge-calculator": {
      "get": {
        "summary": "HVAC Refrigerant Charge, Subcooling & Superheat Diagnostic Engine",
        "description": "Calculates target subcooling (TXV systems) and target superheat (fixed orifice pistons) for R-410A, R-32, and R-454B systems.",
        "operationId": "calculateRefrigerantDiagnostics",
        "parameters": [
          { "name": "refrigerant", "in": "query", "required": true, "description": "Refrigerant type (R410A, R32, R454B)", "schema": { "type": "string", "enum": ["R410A", "R32", "R454B"] } },
          { "name": "meteringDevice", "in": "query", "required": true, "description": "Expansion device (txv or fixed_orifice)", "schema": { "type": "string", "enum": ["txv", "fixed_orifice"] } },
          { "name": "liquidPressurePsi", "in": "query", "required": true, "description": "High-side liquid line gauge pressure in PSIG", "schema": { "type": "number" } },
          { "name": "liquidTempF", "in": "query", "required": true, "description": "Liquid line pipe temperature in °F", "schema": { "type": "number" } },
          { "name": "suctionPressurePsi", "in": "query", "required": true, "description": "Low-side vapor suction gauge pressure in PSIG", "schema": { "type": "number" } },
          { "name": "suctionTempF", "in": "query", "required": true, "description": "Suction line pipe temperature in °F", "schema": { "type": "number" } }
        ],
        "responses": {
          "200": { "description": "Actual subcooling, actual superheat, and diagnostic charge recommendation" }
        }
      }
    },
    "/trade/tools/concrete-volume-calculator": {
      "get": {
        "summary": "Concrete Slab & Footing Volume Calculator",
        "description": "Calculates cubic yards, cubic meters, and 80lb/60lb pre-mix bags with a 10% safety overage buffer per ACI 318 standards.",
        "operationId": "calculateConcreteVolume",
        "parameters": [
          { "name": "shape", "in": "query", "required": false, "description": "Pour structure (slab, footing, column)", "schema": { "type": "string", "enum": ["slab", "footing", "column"], "default": "slab" } },
          { "name": "lengthFt", "in": "query", "required": true, "description": "Length of slab or footing in feet", "schema": { "type": "number" } },
          { "name": "widthFt", "in": "query", "required": true, "description": "Width of slab or footing in feet", "schema": { "type": "number" } },
          { "name": "thicknessInches", "in": "query", "required": true, "description": "Slab thickness in inches", "schema": { "type": "number", "default": 4 } },
          { "name": "wastePercent", "in": "query", "required": false, "description": "Safety buffer percentage (default 10%)", "schema": { "type": "number", "default": 10 } }
        ],
        "responses": {
          "200": { "description": "Cubic yards, cubic meters, and pre-mix bag counts" }
        }
      }
    },
    "/trade/tools/roofing-shingle-calculator": {
      "get": {
        "summary": "Roofing Shingle & Material Takeoff Calculator",
        "description": "Calculates actual sloped roof area, roofing squares, shingle bundles, underlayment rolls, and ridge caps per NRCA standards.",
        "operationId": "calculateRoofingTakeoff",
        "parameters": [
          { "name": "footprintSqFt", "in": "query", "required": true, "description": "Building ground footprint in square feet", "schema": { "type": "number" } },
          { "name": "pitch", "in": "query", "required": true, "description": "Roof slope rise in inches per 12 inch run (e.g. 4 for 4:12, 6 for 6:12)", "schema": { "type": "number" } },
          { "name": "roofComplexity", "in": "query", "required": false, "description": "Gable (simple 10% waste) or Hip/Valley (complex 15% waste)", "schema": { "type": "string", "enum": ["simple", "complex"], "default": "simple" } }
        ],
        "responses": {
          "200": { "description": "True rafter surface area, roofing squares, bundles of shingles, and underlayment rolls" }
        }
      }
    },
    "/trade/tools/stair-calculator": {
      "get": {
        "summary": "Stair Design & Stringer Calculator",
        "description": "Calculates total rise, run, riser count, tread depth, stringer cut lists, and incline angles per IRC Section R311.7.",
        "operationId": "calculateStairStringers",
        "parameters": [
          { "name": "totalRiseInches", "in": "query", "required": true, "description": "Finished floor-to-floor total vertical rise in inches", "schema": { "type": "number" } },
          { "name": "targetTreadInches", "in": "query", "required": false, "description": "Target tread run depth in inches (minimum 10 inches per IRC)", "schema": { "type": "number", "default": 10 } }
        ],
        "responses": {
          "200": { "description": "Number of risers, individual riser height, tread count, total stringer run, and lumber cut dimensions" }
        }
      }
    },
    "/trade/tools/tile-grout-calculator": {
      "get": {
        "summary": "Tile & Grout Material Takeoff Calculator",
        "description": "Calculates floor and wall tile box counts, cut waste percentage, thinset mortar bags, and grout weight per TCNA specifications.",
        "operationId": "calculateTileGrout",
        "parameters": [
          { "name": "roomAreaSqFt", "in": "query", "required": true, "description": "Installation surface area in square feet", "schema": { "type": "number" } },
          { "name": "tileWidthInches", "in": "query", "required": true, "description": "Tile width in inches (e.g. 12)", "schema": { "type": "number" } },
          { "name": "tileLengthInches", "in": "query", "required": true, "description": "Tile length in inches (e.g. 24)", "schema": { "type": "number" } },
          { "name": "groutJointInches", "in": "query", "required": false, "description": "Grout spacer joint width in inches (default 0.125 for 1/8\")", "schema": { "type": "number", "default": 0.125 } },
          { "name": "patternWastePercent", "in": "query", "required": false, "description": "Pattern cut waste (straight 10%, diagonal/herringbone 15%)", "schema": { "type": "number", "default": 10 } }
        ],
        "responses": {
          "200": { "description": "Tile piece count, carton boxes needed, thinset bags, and pounds of grout" }
        }
      }
    },
    "/trade/tools/paint-coverage-calculator": {
      "get": {
        "summary": "Paint Coverage & Gallons Calculator",
        "description": "Calculates net paintable square footage (subtracting windows and doors), coat multipliers, and container optimization per MPI standards.",
        "operationId": "calculatePaintCoverage",
        "parameters": [
          { "name": "lengthFt", "in": "query", "required": true, "description": "Room length in feet", "schema": { "type": "number" } },
          { "name": "widthFt", "in": "query", "required": true, "description": "Room width in feet", "schema": { "type": "number" } },
          { "name": "heightFt", "in": "query", "required": false, "description": "Ceiling height in feet (default 8)", "schema": { "type": "number", "default": 8 } },
          { "name": "doors", "in": "query", "required": false, "description": "Number of standard doors to subtract (default 1)", "schema": { "type": "integer", "default": 1 } },
          { "name": "windows", "in": "query", "required": false, "description": "Number of standard windows to subtract (default 2)", "schema": { "type": "integer", "default": 2 } },
          { "name": "coats", "in": "query", "required": false, "description": "Number of paint coats (default 2)", "schema": { "type": "integer", "default": 2 } }
        ],
        "responses": {
          "200": { "description": "Net wall square feet, total paint gallons, and 1-gal vs 5-gal bucket counts" }
        }
      }
    },
    "/trade/tools/flooring-material-calculator": {
      "get": {
        "summary": "Flooring Material & Boxes Calculator",
        "description": "Computes square footage, pattern waste factors (straight vs herringbone), carton box orders, and underlayment rolls for LVP, hardwood, and laminate.",
        "operationId": "calculateFlooringTakeoff",
        "parameters": [
          { "name": "areaSqFt", "in": "query", "required": true, "description": "Total room square footage", "schema": { "type": "number" } },
          { "name": "pattern", "in": "query", "required": false, "description": "Installation pattern (straight 10% waste, diagonal 15%, herringbone 20%)", "schema": { "type": "string", "enum": ["straight", "diagonal", "herringbone"], "default": "straight" } },
          { "name": "sqFtPerBox", "in": "query", "required": false, "description": "Carton coverage in square feet (default 20 sq ft/box)", "schema": { "type": "number", "default": 20 } }
        ],
        "responses": {
          "200": { "description": "Total order square footage, carton box counts, and underlayment rolls" }
        }
      }
    },
    "/plumbing/tools/pipe-sizing-water-calculator": {
      "get": {
        "summary": "Water Supply Pipe Sizing Calculator (WSFU)",
        "description": "Sizes main water service entrance lines and branch distribution piping based on Water Supply Fixture Units per IPC Chapter 6 and UPC Appendix A.",
        "operationId": "calculateWaterSupplyPipe",
        "parameters": [
          { "name": "bathrooms", "in": "query", "required": true, "description": "Number of full bathrooms in dwelling", "schema": { "type": "number" } },
          { "name": "setbackFt", "in": "query", "required": true, "description": "Distance from water meter or well pump to structure in feet", "schema": { "type": "number" } },
          { "name": "staticPressurePsi", "in": "query", "required": false, "description": "Static supply pressure at meter in PSI (default 55)", "schema": { "type": "number", "default": 55 } },
          { "name": "pipeMaterial", "in": "query", "required": false, "description": "Piping material (pex, copper, cpvc)", "schema": { "type": "string", "enum": ["pex", "copper", "cpvc"], "default": "pex" } }
        ],
        "responses": {
          "200": { "description": "Total WSFU, peak GPM demand via Hunter's Curve, recommended pipe diameter, and velocity check" }
        }
      }
    },
    "/plumbing/tools/water-heater-sizing-calculator": {
      "get": {
        "summary": "Water Heater Sizing Calculator (Tank & Tankless)",
        "description": "Calculates DOE First Hour Rating (FHR) for storage water heaters and peak simultaneous GPM flow with temperature rise for tankless units.",
        "operationId": "calculateWaterHeater",
        "parameters": [
          { "name": "occupants", "in": "query", "required": true, "description": "Number of regular occupants in household", "schema": { "type": "integer", "minimum": 1 } },
          { "name": "bathrooms", "in": "query", "required": true, "description": "Number of bathrooms in home", "schema": { "type": "number" } },
          { "name": "heaterType", "in": "query", "required": false, "description": "Heater configuration (tank or tankless)", "schema": { "type": "string", "enum": ["tank", "tankless"], "default": "tank" } }
        ],
        "responses": {
          "200": { "description": "Target First Hour Rating (FHR) in gallons or peak flow rate in GPM and required BTU/kW" }
        }
      }
    },
    "/drywall/tools/drywall-framing-calculator": {
      "get": {
        "summary": "Drywall & Stud Framing Calculator",
        "description": "Calculates 4x8 and 4x12 drywall sheets, 16\" and 24\" on-center wall studs, fasteners, joint compound buckets, and paper tape rolls per ASTM C840.",
        "operationId": "calculateDrywallFraming",
        "parameters": [
          { "name": "roomLengthFt", "in": "query", "required": true, "description": "Room length in feet", "schema": { "type": "number" } },
          { "name": "roomWidthFt", "in": "query", "required": true, "description": "Room width in feet", "schema": { "type": "number" } },
          { "name": "ceilingHeightFt", "in": "query", "required": false, "description": "Wall ceiling height (8, 9, 10 ft)", "schema": { "type": "number", "default": 8 } },
          { "name": "sheetSize", "in": "query", "required": false, "description": "Drywall sheet dimension (4x8 or 4x12)", "schema": { "type": "string", "enum": ["4x8", "4x12"], "default": "4x8" } },
          { "name": "studSpacing", "in": "query", "required": false, "description": "Stud spacing in inches (16 or 24 OC)", "schema": { "type": "integer", "enum": [16, 24], "default": 16 } }
        ],
        "responses": {
          "200": { "description": "Sheet takeoff count, wall framing studs, top/bottom plates, screws, and mud buckets" }
        }
      }
    },
    "/pc/tools/psu-calculator": {
      "get": {
        "summary": "PC Power Supply (PSU) Calculator",
        "description": "Calculates total system wattage, ATX 3.0 / PCIe 5.0 12V-2x6 transient power spike headroom (up to 200%), and 80 Plus efficiency tier.",
        "operationId": "calculatePsuWattage",
        "parameters": [
          { "name": "cpu", "in": "query", "required": true, "description": "Processor model identifier (e.g. i9-14900K, Ryzen 7 7800X3D)", "schema": { "type": "string" } },
          { "name": "gpu", "in": "query", "required": true, "description": "Graphics card model identifier (e.g. RTX 4090, RX 7900 XTX)", "schema": { "type": "string" } },
          { "name": "overclocked", "in": "query", "required": false, "description": "Whether CPU or GPU will be overclocked", "schema": { "type": "boolean", "default": false } }
        ],
        "responses": {
          "200": { "description": "Sustained peak wattage, transient spike headroom, and recommended PSU wattage" }
        }
      }
    },
    "/pc/tools/gpu-bottleneck-calculator": {
      "get": {
        "summary": "CPU & GPU Bottleneck Calculator",
        "description": "Calculates computational throughput balance and throughput bottleneck percentages across 1080p, 1440p, and 4K resolutions.",
        "operationId": "calculateGpuBottleneck",
        "parameters": [
          { "name": "cpu", "in": "query", "required": true, "description": "Processor model name", "schema": { "type": "string" } },
          { "name": "gpu", "in": "query", "required": true, "description": "Graphics card model name", "schema": { "type": "string" } },
          { "name": "resolution", "in": "query", "required": false, "description": "Screen resolution (1080p, 1440p, 4k)", "schema": { "type": "string", "enum": ["1080p", "1440p", "4k"], "default": "1440p" } }
        ],
        "responses": {
          "200": { "description": "Bottleneck percentage, limiting component (CPU or GPU bound), and upgrade advice" }
        }
      }
    },
    "/pc/tools/ssd-compatibility-checker": {
      "get": {
        "summary": "Laptop SSD Compatibility & Upgrade Checker",
        "description": "Verifies M.2 NVMe form factors (2230, 2242, 2280), keying, PCIe generation, and single vs double-sided clearance across laptop chassis.",
        "operationId": "checkSsdCompatibility",
        "parameters": [
          { "name": "laptopModel", "in": "query", "required": true, "description": "Laptop model name or chassis identifier", "schema": { "type": "string" } },
          { "name": "ssdModel", "in": "query", "required": true, "description": "M.2 SSD model name or drive capacity", "schema": { "type": "string" } }
        ],
        "responses": {
          "200": { "description": "Compatibility verdict (supported/unsupported), M.2 slot count, and PCIe link speed" }
        }
      }
    },
    "/pc/tools/laptop-ram-compatibility-checker": {
      "get": {
        "summary": "Laptop RAM Compatibility & Upgrade Intelligence",
        "description": "Analyzes SO-DIMM DDR4/DDR5 capacity limits, soldered memory configurations, and dual-channel channel performance.",
        "operationId": "checkLaptopRamCompatibility",
        "parameters": [
          { "name": "laptopModel", "in": "query", "required": true, "description": "Laptop model identifier", "schema": { "type": "string" } },
          { "name": "targetRamGb", "in": "query", "required": false, "description": "Target total RAM in gigabytes (e.g. 32, 64)", "schema": { "type": "integer" } }
        ],
        "responses": {
          "200": { "description": "Maximum RAM limit, slot count, soldered status, and JEDEC speed recommendation" }
        }
      }
    },
    "/pc/tools/cpu-motherboard-compatibility-checker": {
      "get": {
        "summary": "CPU & Motherboard Compatibility Engine",
        "description": "Cross-references processor socket, chipset, VRM thermal power delivery capability, and required BIOS version.",
        "operationId": "checkCpuMoboCompatibility",
        "parameters": [
          { "name": "cpu", "in": "query", "required": true, "description": "Processor model identifier", "schema": { "type": "string" } },
          { "name": "motherboard", "in": "query", "required": true, "description": "Motherboard model identifier", "schema": { "type": "string" } }
        ],
        "responses": {
          "200": { "description": "Socket match verdict, minimum BIOS version, and VRM throttling risk rating" }
        }
      }
    },
    "/pc/tools/desktop-ram-motherboard-compatibility-checker": {
      "get": {
        "summary": "Desktop RAM & Motherboard Compatibility Checker",
        "description": "Validates DDR4/DDR5 memory speed support, QVL profiles, XMP/EXPO stability, and physical clearance beneath large CPU tower coolers.",
        "operationId": "checkDesktopRamCompatibility",
        "parameters": [
          { "name": "motherboard", "in": "query", "required": true, "description": "Motherboard model", "schema": { "type": "string" } },
          { "name": "ramKit", "in": "query", "required": true, "description": "Memory kit speed, timing, and module count", "schema": { "type": "string" } }
        ],
        "responses": {
          "200": { "description": "Memory QVL status, optimal gear/command rate, and cooler clearance clearance" }
        }
      }
    },
    "/pc/tools/gpu-case-clearance-checker": {
      "get": {
        "summary": "GPU Dimensions & Case Clearance Checker",
        "description": "Checks graphics card physical length, slot thickness, and 12V-2x6 power cable bend clearance against PC chassis interiors.",
        "operationId": "checkGpuCaseClearance",
        "parameters": [
          { "name": "gpuModel", "in": "query", "required": true, "description": "Specific graphics card model", "schema": { "type": "string" } },
          { "name": "caseModel", "in": "query", "required": true, "description": "PC computer chassis model", "schema": { "type": "string" } }
        ],
        "responses": {
          "200": { "description": "Clearance verdict, remaining millimeter margin, and front radiator interference alert" }
        }
      }
    },
    "/pc/tools/cpu-cooler-compatibility-checker": {
      "get": {
        "summary": "CPU Cooler & Height Clearance Validator",
        "description": "Validates air cooler height against chassis side panel width, and AIO liquid radiator mounting locations (top vs front).",
        "operationId": "checkCpuCoolerClearance",
        "parameters": [
          { "name": "coolerModel", "in": "query", "required": true, "description": "Air cooler or AIO liquid cooler model", "schema": { "type": "string" } },
          { "name": "caseModel", "in": "query", "required": true, "description": "PC computer case model", "schema": { "type": "string" } }
        ],
        "responses": {
          "200": { "description": "Clearance clearance in millimeters and radiator compatibility verdict" }
        }
      }
    },
    "/pc/tools/pc-part-compatibility-checker": {
      "get": {
        "summary": "PC Part Compatibility Checker & Rig Validator",
        "description": "Validates an entire system build for power envelope, physical clearances, socket matching, and interface lane sharing.",
        "operationId": "checkPcRigCompatibility",
        "parameters": [
          { "name": "cpu", "in": "query", "required": true, "description": "Processor model", "schema": { "type": "string" } },
          { "name": "gpu", "in": "query", "required": true, "description": "Graphics card model", "schema": { "type": "string" } },
          { "name": "motherboard", "in": "query", "required": true, "description": "Motherboard model", "schema": { "type": "string" } },
          { "name": "psuWattage", "in": "query", "required": false, "description": "Power supply wattage", "schema": { "type": "integer" } }
        ],
        "responses": {
          "200": { "description": "System compatibility report, power headroom assessment, and conflict warnings" }
        }
      }
    },
    "/pc/tools/ram-mixing-checker": {
      "get": {
        "summary": "RAM Mixing Compatibility & Channel Checker",
        "description": "Diagnoses JEDEC vs XMP/EXPO timing mismatches, voltage conflicts, and dual-channel degradation when mixing different memory kits.",
        "operationId": "checkRamMixingCompatibility",
        "parameters": [
          { "name": "kit1Speed", "in": "query", "required": true, "description": "First RAM kit speed in MT/s (e.g. 6000)", "schema": { "type": "integer" } },
          { "name": "kit1Cas", "in": "query", "required": true, "description": "First RAM kit CAS latency (e.g. 30)", "schema": { "type": "integer" } },
          { "name": "kit2Speed", "in": "query", "required": true, "description": "Second RAM kit speed in MT/s (e.g. 5600)", "schema": { "type": "integer" } },
          { "name": "kit2Cas", "in": "query", "required": true, "description": "Second RAM kit CAS latency (e.g. 36)", "schema": { "type": "integer" } }
        ],
        "responses": {
          "200": { "description": "Stability risk score, lowest common denominator JEDEC speed fallback, and dual-channel status" }
        }
      }
    },
    "/pc/tools/pcie-compatibility-checker": {
      "get": {
        "summary": "PCIe Generation & Slot Bandwidth Compatibility Checker",
        "description": "Analyzes PCIe 3.0, 4.0, and 5.0 throughput, slot bifurcation, and lane sharing conflicts with M.2 NVMe slots.",
        "operationId": "checkPcieBandwidthCompatibility",
        "parameters": [
          { "name": "slotGen", "in": "query", "required": true, "description": "Motherboard slot generation (PCIe 3.0, 4.0, 5.0)", "schema": { "type": "string" } },
          { "name": "slotLanes", "in": "query", "required": true, "description": "Slot electrical lanes (x16, x8, x4, x1)", "schema": { "type": "string" } },
          { "name": "cardGen", "in": "query", "required": true, "description": "Expansion card generation", "schema": { "type": "string" } }
        ],
        "responses": {
          "200": { "description": "Effective bandwidth in GB/s and potential percentage throughput bottleneck" }
        }
      }
    },
    "/pc/tools/ppi-screen-calculator": {
      "get": {
        "summary": "Monitor PPI & Pixel Density Calculator",
        "description": "Computes pixels per inch (PPI), aspect ratios, and optimal visual acuity viewing distances for computer monitors.",
        "operationId": "calculateMonitorPpi",
        "parameters": [
          { "name": "horizontalPixels", "in": "query", "required": true, "description": "Screen horizontal resolution (e.g. 2560)", "schema": { "type": "integer" } },
          { "name": "verticalPixels", "in": "query", "required": true, "description": "Screen vertical resolution (e.g. 1440)", "schema": { "type": "integer" } },
          { "name": "diagonalInches", "in": "query", "required": true, "description": "Screen diagonal size in inches (e.g. 27)", "schema": { "type": "number" } }
        ],
        "responses": {
          "200": { "description": "Calculated PPI, total megapixels, aspect ratio, and optimal viewing distance" }
        }
      }
    },
    "/pc/tools/motherboard-post-code-debugger": {
      "get": {
        "summary": "Motherboard POST & Diagnostic LED Debugger",
        "description": "Interactive two-digit hexadecimal POST code lookup and 4-LED diagnostic guide for ASUS, MSI, Gigabyte, and ASRock motherboards.",
        "operationId": "lookupMotherboardPostCode",
        "parameters": [
          { "name": "code", "in": "query", "required": true, "description": "Two-digit hexadecimal POST code (e.g. 00, 55, A2, dE)", "schema": { "type": "string" } },
          { "name": "brand", "in": "query", "required": false, "description": "Motherboard manufacturer (asus, msi, gigabyte, asrock)", "schema": { "type": "string" } }
        ],
        "responses": {
          "200": { "description": "POST code definition, failed hardware subsystem, and step-by-step troubleshooting instructions" }
        }
      }
    },
    "/pc/tools/pc-benchmark-fps-simulator": {
      "get": {
        "summary": "PC Benchmark & Game FPS Simulator",
        "description": "Simulates expected frame rates across competitive esports and AAA gaming titles based on CPU and GPU configurations.",
        "operationId": "simulateGameFps",
        "parameters": [
          { "name": "cpu", "in": "query", "required": true, "description": "Processor model", "schema": { "type": "string" } },
          { "name": "gpu", "in": "query", "required": true, "description": "Graphics card model", "schema": { "type": "string" } },
          { "name": "game", "in": "query", "required": true, "description": "Game title identifier (cyberpunk, cs2, warzone, fortnite)", "schema": { "type": "string" } },
          { "name": "resolution", "in": "query", "required": false, "description": "Resolution (1080p, 1440p, 4k)", "schema": { "type": "string", "default": "1440p" } }
        ],
        "responses": {
          "200": { "description": "Estimated average FPS and 1% low frame rates" }
        }
      }
    },
    "/pc/tools/laptop-upgrade-finder": {
      "get": {
        "summary": "Laptop Upgrade Finder & Spec Intelligence",
        "description": "Retrieves comprehensive upgrade blueprints for specific laptop models including storage, RAM, Wi-Fi card, and battery.",
        "operationId": "findLaptopUpgradeSpec",
        "parameters": [
          { "name": "modelQuery", "in": "query", "required": true, "description": "Laptop model name or serial prefix (e.g. Legion Pro 5, Dell XPS 15)", "schema": { "type": "string" } }
        ],
        "responses": {
          "200": { "description": "Complete upgrade specification, slot layout, max capacities, and teardown difficulty" }
        }
      }
    }
  }
}
