MCP HeartbeatTHE MCP OBSERVATORY
Public workspace

Explore

Evidence for your next connection.

Independent measurements of remote MCP servers. Every observation has a timestamp.

Read-only probes

MCP server · Browser & web scraping

Proven Plaza Calculators & Open Data

29 free construction calculators plus Florida contractor, permit, federal award and AI-crawler data.

Checks passed
14 / 22

0 failed · 8 not measured

Median response
102 ms

Median of successful probes over 7 days

30-day uptime
Not measured

Share of countable probes over 30 days, including daily rollups. Auth challenges are excluded.

Discovered tools
72

Tool definitions returned by this server

Independent monitoring

Health & checks

Status history

Outdated check

Last connection measurement is over 24 hours old. Current availability is unknown.

Last checked
Check summary by test group
Test areaPassedFailedUnmeasured
ConnectionCan a client connect and discover tools?
500
Reliability & speedDoes it respond consistently and quickly?
004
Access & authenticationWhat is required to use this server?
102
Tool qualityAre the tool definitions usable by an agent?
400
Publisher identityCan the publisher be traced to its source?
402

Unmeasured means there is not enough evidence to decide. How these checks work

Inspect individual checks 22 recorded

Core

  • Pass
    Reachable

    Latest probe returned HTTP 200 in 102 ms.

  • Pass
    Valid handshake

    protocolVersion 2025-11-25, serverInfo.name provenplaza-agent-mcp.

  • Pass
    Lists tools

    tools/list returned 72 tools.

  • Pass
    Current protocol

    Negotiated 2025-11-25. The bar is 2025-06-18 or newer.

  • Pass
    HTTPS

    The endpoint URL is https.

Performance

  • Not measured
    Fast (p50)

    Median latency 102 ms over 1 samples in 7 days. The bar is 1000 ms. Need at least 5 samples.

  • Not measured
    Consistent (p95)

    95th percentile 102 ms over 1 samples in 7 days. The bar is 3000 ms. Need at least 20 samples.

  • Not measured
    Reliable (uptime)

    1 of 1 attempts returned a tool list in 30 days (100%). The bar is 99%. Need at least 30 samples.

  • Not measured
    Stable tool list

    Fewer than two successful probes in 30 days, so tool-list stability is not measured.

Access

  • Pass
    Open access

    tools/list succeeded with no credential, and the record declares none.

  • Not measured
    Standard auth

    Auth is not required, so the OAuth metadata check does not apply.

  • Not measured
    Free tier cited

    No publisher quote has been checked.

Tools

  • Pass
    Tools described

    Every tool description is at least 20 characters.

  • Pass
    Valid input schemas

    Every inputSchema is a JSON Schema object.

  • Pass
    Parameters documented

    380 of 392 parameters have a description (97%). The bar is 80%.

  • Pass
    Safety hints

    Every tool sets readOnlyHint or destructiveHint.

Publisher

  • Pass
    Verified namespace

    Listed in the Official MCP Registry.

  • Not measured
    Website matches publisher

    This namespace is not a reverse domain, so the website comparison does not apply.

  • Pass
    Source repo linked

    A repository URL is on file.

  • Pass
    Repo owner matches

    The GitHub repository owner matches the namespace login.

  • Pass
    Recently updated

    Updated 2026-10-15T19:59:16.37343Z, within 180 days.

  • Not measured
    Open-source licence

    The GitHub licence lookup has not returned an OSI result yet.

Start using Proven Plaza Calculators & Open Data

Connect to this server

Choose your client, copy the configuration, then enable the server in your client’s MCP settings.

Run this command in your terminal, then restart Claude Code.

Claude Code

claude mcp add --transport http proven-plaza-calculators-open-data https://provenplaza-agent-mcp.zvorsteg1.workers.dev/mcp

Capabilities

Tools 72

agent_readiness_score

Free 0-100 score of how easily AI assistants and agents can read, quote and contact a public business website: AI crawler rules, llms.txt, schema.org business/offer data, agent catalog, MCP card, sitemap, meta, contact. Not a Google ranking score.

Discovered
agent_ready_fix_pack

Generate robots.txt AI-crawler rules, llms.txt, schema.org JSON-LD and /.well-known/agent-catalog.json from facts the business supplies. services: one per line as "Name|Price". Uses only supplied facts.

Discovered
ai_crawler_audit

Check a public site robots.txt for AI crawler allow/deny verdicts.

Discovered
calc_ac_btu

Room air-conditioner capacity using the ENERGY STAR sizing chart and its adjustments for sun, occupants and kitchens. Formula: Base BTU from the ENERGY STAR area chart; −10% heavily shaded, +10% very sunny, +600 BTU per person above 2, +4,000 BTU for a kitchen.

Discovered
calc_appliance_energy_cost

Daily and yearly kWh and the cost to run any appliance from its wattage, hours of use and your electricity rate. Formula: kWh per day = watts × hours ÷ 1,000; kWh per year = kWh per day × days; cost = kWh × rate.

Discovered
calc_asphalt

Tons of hot-mix asphalt for a driveway or lot from area, compacted depth and mix density. Formula: Tons = L × W × depth(in)/12 × density(lb/cu ft) ÷ 2,000.

Discovered
calc_attic_ventilation

How much attic ventilation you need by the 1/150 and 1/300 rules (Florida Building Code, Residential R806.2), split into intake and exhaust, and how many vents that is for your vent products. Formula: Total net free area (sq in) = attic floor area (sq ft) × 144 ÷ 150 (or ÷ 300 under the balanced exception). Exhaust NFA = total × high share; intake NFA = the rest. Vents = ⌈NFA ÷ the net free area of one vent (or one foot of continuous vent)⌉.

Discovered
calc_board_foot

Board feet and cost for hardwood or dimensional lumber. Formula: Board feet = thickness(in) × width(in) × length(ft) ÷ 12 × pieces (one board foot = 144 cubic inches).

Discovered
calc_box_fill

Required box volume under NEC 314.16 from your conductors, devices, clamps, fittings and grounds, checked against a standard metal box from Table 314.16(A) or your box's marked volume. Formula: Required volume = Σ(conductors × Table 314.16(B) allowance) + 1 allowance for clamps + 1 per fitting type + 2 per yoke + 1 for all grounds, each at the largest conductor size present. Allowances: 18 AWG 1.50, 16 AWG 1.75, 14 AWG 2.00, 12 AWG 2.25, 10 AWG 2.50, 8 AWG 3.00, 6 AWG 5.00 cu in.

Discovered
calc_brick

Bricks for a single-wythe wall from its area, the brick face size and the mortar joint. Defaults are a modular brick with a ⅜ in joint. Formula: Bricks per sq ft = 144 ÷ ((length + joint) × (height + joint)); bricks = (wall area − openings) × bricks per sq ft × (1 + waste%).

Discovered
calc_caulk

How many tubes of caulk or sealant to buy: linear feet per cartridge for your joint width and depth (or a triangular corner bead), and cartridges for the total length. Formula: Cartridge volume = fl oz × 1.80469 cu in. Bead area = width × depth (or leg² ÷ 2). Linear feet per cartridge = volume ÷ (bead area × 12). Cartridges = length × (1 + waste) ÷ feet per cartridge.

Discovered
calc_ceiling_fan_size

What size ceiling fan you need for a room: the suggested blade span from the room's square footage, the largest fan that keeps 18 in from the walls, and the mount type for your ceiling height. Formula: Area = length × width. Blade span: up to 75 sq ft 29–36 in; 76–144 sq ft 36–42 in; 144–225 sq ft 44 in; 225–400 sq ft 50–54 in; over 400 sq ft 54–72 in or several fans. Largest span with 18 in wall clearance = shorter side (in) − 36 in. Mount: 8 ft or lower → hugger; 8–9 ft → standard downrod; higher → extended downrod.

Discovered
calc_concrete_block

Number of 8×8×16 concrete blocks (CMU) for a wall. A standard block plus a ⅜ in joint covers 16 × 8 in, so about 1.125 blocks per square foot. Formula: Blocks per sq ft = 144 ÷ ((length + joint) × (height + joint)) = 144 ÷ (16 × 8) = 1.125 for standard units; blocks = net wall area × 1.125 × (1 + waste%).

Discovered
calc_concrete_column

Concrete needed for round columns, piers and tube forms (sonotubes). Uses cylinder volume, which differs from slab math. Formula: Cubic feet = π × (diameter(in)/24)² × height(ft) × count; cubic yards = cu ft ÷ 27 × (1 + waste%).

Discovered
calc_concrete_footing

Volume for continuous trench/wall footings where width is in inches and length runs the full perimeter. Formula: Cubic yards = Length(ft) × Width(in)/12 × Depth(in)/12 ÷ 27 × (1 + waste%).

Discovered
calc_concrete_slab

Estimate ready-mix cubic yards or the number of 80 lb bags for a rectangular slab, patio or driveway. Formula: Cubic yards = Length(ft) × Width(ft) × Thickness(in)/12 ÷ 27 × (1 + waste%). Bags = cubic feet ÷ bag yield.

Discovered
calc_concrete_steps

How much concrete solid steps need, from the total height to climb: number of risers, riser height, treads, top landing, cubic yards and 80 lb bags. Formula: Risers n = ⌈total rise ÷ max riser⌉; riser height R = total rise ÷ n. Side profile area = tread × R × n(n − 1) ÷ 2 + landing depth × n × R (each lower tread is a block of its own height; the landing sits at full height). Volume (cu ft) = profile (sq in) × width (in) ÷ 1,728; cubic yards = cu ft × (1 + waste) ÷ 27; bags = cu ft × (1 + waste) ÷ bag yield.

Discovered
calc_conduit_fill

Conduit fill for THHN/THWN-2 wires in EMT or Schedule 40 PVC: total wire area, percent fill against the NEC 53/31/40% limits, whether it fits, the smallest conduit that does, and the maximum number of same-size wires. Formula: Wire area = Σ count × Table 5 area (14 AWG 0.0097, 12 AWG 0.0133, 10 AWG 0.0211, 8 AWG 0.0366, 6 AWG 0.0507 sq in …). Allowed = Table 4 conduit area × 53% (1 wire), 31% (2) or 40% (3+). Same-size maximum = allowed ÷ wire area, rounded up only at 0.8 or more.

Discovered
calc_deck_board

Number of deck boards for a rectangular deck, accounting for board width and gap. Formula: Rows = ⌈width(in) ÷ (board width + gap)⌉; boards = rows × ⌈deck length ÷ board length⌉ × (1 + waste%).

Discovered
calc_dehumidifier_size

What size portable dehumidifier you need, in pints per day, from the ENERGY STAR chart for your space size and how damp it is, with a liters and gallons conversion. Formula: Pick the ENERGY STAR range for the condition and size (under or over 2,000 sq ft), then take the top of the range, or the water your current unit removes per day if that is higher. Liters = pints × 0.4732; gallons = pints ÷ 8.

Discovered
calc_drywall

Number of drywall sheets for walls and optionally the ceiling. Formula: Sheets = (perimeter × height + ceiling area) × (1 + waste%) ÷ sheet area.

Discovered
calc_epoxy_floor

How much epoxy floor coating to buy: coverage per gallon at your dry film thickness and volume solids, gallons per coat, total with losses, and kits. Formula: Coverage (sq ft/gal) = 1,604 × solids by volume ÷ dry mils. Gallons per coat = area ÷ coverage. Total = gallons per coat × coats × (1 + loss). Wet mils = dry mils ÷ solids.

Discovered
calc_ev_charging_cost

What it costs to charge an electric car at home: cost per mile, per month and per full charge from your car's kWh per 100 miles and your state's average residential electricity price (EIA, August 2026) or your own rate, with an optional gas comparison. Formula: Cost per mile = kWh/100 mi ÷ 100 × $/kWh ÷ (1 − loss%). Month = cost per mile × miles. Full charge = battery kWh × $/kWh ÷ (1 − loss%). Gas cost per mile = $/gal ÷ mpg.

Discovered
calc_fence

Posts, rails and pickets for a straight run of wood privacy or picket fence. Formula: Sections = ⌈length ÷ spacing⌉; posts = sections + 1 + gates; pickets = ⌈length(in) ÷ (picket width + gap)⌉.

Discovered
calc_flooring_tile

Square footage plus waste and number of boxes for tile, laminate, vinyl plank or hardwood. Formula: Area = L × W; to buy = area × (1 + waste%); boxes = to buy ÷ coverage per box.

Discovered
calc_generator_size

What size generator you need for a power outage: add the running watts of everything you will run at once, then add the single biggest motor starting surge. Enter how many of each item you plan to run at the same time. Formula: Total running watts = Σ (quantity × running watts). Total starting watts = total running watts + the single highest additional starting watts among the items you run, because motors rarely start at the same instant. Amps at 240 V = running watts ÷ 240. Margin is an optional buffer you choose.

Discovered
calc_grass_seed

How much grass seed to buy for a new lawn: university seeding rates per 1,000 sq ft for each grass type or mix, adjusted for the purity and germination printed on the seed tag. Formula: Pure live seed (PLS) = purity × germination. Seed (lb) = rate (lb PLS per 1,000 sq ft) × area ÷ 1,000 ÷ PLS. Bags = high-rate pounds ÷ bag size, rounded up.

Discovered
calc_grout

How much grout a tile job takes from the tile size, joint width, joint depth and area, in pounds and bags. The grout density is editable so you can match your product. Formula: Each tile plus its joint is a (L + J) × (W + J) module, of which J × (L + W + J) is joint. Joint share = J(L + W + J) ÷ ((L + J)(W + J)). Grout volume (cu ft) = area × joint share × depth(in) ÷ 12; pounds = volume × density × (1 + waste); bags = ⌈pounds ÷ bag size⌉.

Discovered
calc_gutter_size

Check whether a gutter can carry the runoff from your roof in a design storm, and how many downspouts it needs. Uses the USDA NRCS gutter and downspout capacity table and your local rainfall intensity. Formula: Runoff Q (cfs) = roof area (sq ft) × rainfall intensity (in/hr) ÷ 43,200 (12 in/ft × 3,600 s/hr); gpm = cfs × 448.8. The gutter is adequate when Q ≤ its NRCS PA-1 capacity at your slope. Downspouts = the larger of ⌈Q ÷ one downspout's PA-1 capacity⌉ and ⌈run length ÷ max length per downspout⌉. Max roof area for the gutter = capacity × 43,200 ÷ intensity.

Discovered
calc_insulation_r_value

Thickness needed to reach a target R-value for the R-per-inch printed on your insulation product. Formula: Thickness(in) = target R ÷ R per inch. Volume in board feet = area(sq ft) × thickness(in).

Discovered
calc_joint_compound

How much drywall mud and tape to buy: gallons of ready-mix joint compound, 4.5 gal pails and rolls of paper tape for your square footage of drywall, using USG's published coverage. Formula: Gallons = area × coverage ÷ 1,000 × (1 + waste). Pails = gallons ÷ pail size, rounded up. Tape (ft) = area × 370 ÷ 1,000 × (1 + waste). Rolls = tape ÷ roll length, rounded up.

Discovered
calc_lawn_fertilizer

How much fertilizer to put on your lawn: pounds of product per 1,000 sq ft and for the whole lawn, from the nitrogen rate you want and the N-P-K numbers on the bag, plus bags to buy and the phosphate and potash you apply along with it. Formula: Product per 1,000 sq ft = N rate ÷ (N% ÷ 100). Total = product per 1,000 × area ÷ 1,000. Bags = total ÷ bag weight, rounded up. P₂O₅ (or K₂O) per 1,000 = product per 1,000 × P% (or K%) ÷ 100.

Discovered
calc_mortar

Mortar for a brick or concrete block wall: units needed, cubic feet of mortar from the Brick Industry Association quantity table (with bond-pattern correction and waste) and bags of mason mix. Formula: Brick = wall ÷ 100 × Table 4 brick per 100 sq ft × (1 + bond brick factor). Mortar (cu ft) = brick ÷ 1,000 × Table 4 cu ft per 1,000 brick for the joint × (1 + bond mortar factor) × (1 + waste). Block = wall × 1.125. Bags = units ÷ units per bag × (1 + waste).

Discovered
calc_mulch_gravel

Cubic yards (and optional tons) of mulch, gravel, sand or soil for a bed or path. Formula: Cubic yards = L(ft) × W(ft) × depth(in) ÷ 324 (since 27 cu ft × 12 in = 324). Tons = cu yd × supplier density.

Discovered
calc_oval_pool_volume

Gallons in an oval (elliptical) pool. Formula: Gallons = π × (L/2) × (W/2) × average depth × 7.48052.

Discovered
calc_paint

Gallons of wall paint from room perimeter and height, minus doors and windows, for any number of coats. Formula: Paintable area = perimeter × height − 20 sq ft per door − 15 sq ft per window. Gallons = area × coats ÷ label coverage.

Discovered
calc_paver

Number of pavers for a patio, walkway or driveway plus cubic yards of compacted base and bedding sand. Formula: Pavers per sq ft = 144 ÷ (paver length × width); pavers = area × per sq ft × (1 + waste%). Base and sand cubic yards = area × depth(in) ÷ 324.

Discovered
calc_pool_alkalinity

How much baking soda raises your pool's total alkalinity, or how much muriatic acid or dry acid lowers it, for your pool size, using published doses per 10,000 gallons. Formula: Batches = |target − current| ÷ 10 × gallons ÷ 10,000. Raise: baking soda (lb) = batches × 1.4. Lower: muriatic acid 31.4% (fl oz) = batches × 26, or sodium bisulfate (lb) = batches × 2.1. Additions: raise no more than about 50 ppm at a time; add no more than 1 quart of acid per 10,000 gallons at a time.

Discovered
calc_pool_calcium_hardness

How much calcium chloride raises your pool's calcium hardness, or how much water to replace to lower it, based on your pool size and fill-water hardness. Formula: Raise: calcium chloride (lb) = (target − current) ÷ 10 × gallons ÷ 10,000 × 1.2 for 77% (0.9 for 100%). Lower (dilution): share to drain = (current − target) ÷ (current − fill water); gallons = share × pool volume.

Discovered
calc_pool_chlorine

Fluid ounces of liquid chlorine (sodium hypochlorite) to raise free chlorine by a target number of ppm, from pool volume and product strength. Formula: Available chlorine (g) = gallons × 3.78541 L/gal × ppm (mg/L) ÷ 1,000. Product (mL) = grams ÷ (strength% ÷ 100), since trade percent is grams of available chlorine per 100 mL. Fl oz = mL ÷ 29.5735.

Discovered
calc_pool_heater_size

Heater output in Btu per hour for an outdoor pool from surface area and temperature rise, using the U.S. Department of Energy formula, plus gas input, the matching standard heat pump size and the time to warm the water. Formula: Temperature rise = desired pool temperature − average air temperature of the coldest month of use. Heater output (Btu/h) = surface area × rise × 12 × rate factor (1, 1.5 or 2). Gas input = output ÷ efficiency. Heat to warm the water once = gallons × 8.34 lb × (desired − starting temperature); hours = that ÷ output, with no losses.

Discovered
calc_pool_lsi

Langelier Saturation Index for your pool or spa from pH, water temperature, calcium hardness and total alkalinity, using the factor table and formula in state pool rules, plus the pH that would balance it. Formula: SI = pH + TF + CF + AF − 12.1 (12.2 when TDS is above 1,000 ppm). TF, CF and AF come from the temperature, calcium hardness and alkalinity factor table; when a reading falls between rows the table method uses the next greater row. pH for SI = 0: 12.1 − TF − CF − AF.

Discovered
calc_pool_salt

Pounds and bags of pool salt to raise a saltwater pool from its current salt level to the target your chlorine generator needs. Formula: Salt (lb) = gallons × 8.34 lb/gal × (target ppm − current ppm) ÷ 1,000,000. Bags = ⌈lb ÷ bag size⌉.

Discovered
calc_pool_stabilizer

How much stabilizer (cyanuric acid, CYA) raises your pool to a target level, or how much water to drain and refill to lower it. Formula: Raise: stabilizer (oz) = (target − current) ÷ 10 × gallons ÷ 10,000 × 13. Lower (dilution): share to drain = (current − target) ÷ (current − fill water); gallons = share × pool volume.

Discovered
calc_pool_turnover

The flow rate (gpm) your pool pump must deliver for a target turnover time, your actual turnover from a flow meter reading, and whether your filter is big enough for that flow. Formula: Required flow (gpm) = gallons ÷ (turnover hours × 60). Actual turnover (hours) = gallons ÷ (measured gpm × 60). Filter max flow = filter area × rated gpm per sq ft.

Discovered
calc_pool_volume

Gallons in a rectangular pool with a sloped bottom, using average depth. Formula: Gallons = L × W × (shallow + deep)/2 × 7.48052 gal/cu ft.

Discovered
calc_rafter_length

Common rafter length, ridge rise and roof angle from the horizontal run and pitch, with optional overhang. Formula: Pitch factor = √(1 + (rise/12)²). Rafter length = (run + overhang) × pitch factor. Ridge rise = run × rise ÷ 12. Angle = atan(rise ÷ 12).

Discovered
calc_rainwater_harvesting

How many gallons of rainwater your roof can collect from a storm, a month or a year of rain, how many rain barrels that fills, and how much to divert as first flush, using the Texas Manual on Rainwater Harvesting method. Formula: Gallons = rainfall (in) × roof footprint (sq ft) × 0.62 × efficiency. Barrels = gallons ÷ barrel size, rounded up. First flush = roof ÷ 1,000 × 10 gal.

Discovered
calc_rebar

How much rebar a rectangular slab grid needs: bar count each way, lap splices, total linear feet, 20 ft sticks to order and steel weight from ASTM A615 bar weights. Formula: Bars each way = ⌊(clear span ÷ spacing)⌋ + 1, where clear span = side × 12 − 2 × edge clearance. A run longer than one stick needs ⌈(run − lap) ÷ (stick − lap)⌉ pieces, adding one lap per joint; lap = bar diameters × bar diameter. Linear ft = (bars × run + splices × lap) ÷ 12; sticks = ⌈linear ft × (1 + allowance) ÷ stick length⌉; weight = linear ft × ASTM A615 lb/ft.

Discovered
calc_retaining_wall

How many retaining wall blocks you need for a straight wall or a circle (fire pit, tree ring), including the buried course, cap units, base gravel for the leveling pad and drainage rock behind the wall. Block sizes are editable because every product line differs. Formula: Buried depth = max(exposed height ÷ bury ratio, minimum). Courses = ⌈(exposed height + buried depth − cap height) ÷ block height⌉. Blocks per course = ⌈run ÷ block face length⌉, where run = wall length, or π × outside diameter for a circle. Wall blocks = ⌈blocks per course × courses × (1 + waste%)⌉; caps = ⌈run ÷ cap length × (1 + waste%)⌉. Base gravel cu yd = run(ft) × trench width(in) × base depth(in) ÷ 144 ÷ 27; drainage rock cu yd = run(ft) × zone depth(in) × stacked block height(in) ÷ 144 ÷ 27 (straight walls only).

Discovered
calc_roofing

Roof area from the house footprint and pitch, converted to roofing squares (100 sq ft) and shingle bundles. Formula: Pitch factor = √(1 + (rise/12)²). Roof area = (L + 2×overhang) × (W + 2×overhang) × pitch factor. Squares = area ÷ 100 × (1 + waste%).

Discovered
calc_round_pool_volume

Gallons in a round or above-ground pool. Formula: Gallons = π × (D/2)² × average depth × 7.48052 (≈ D² × depth × 5.875).

Discovered
calc_self_leveling_concrete

How many bags of self-leveling underlayment or floor resurfacer to buy, from your floor area and the thinnest and thickest pour depth, using the bag's yield in cubic feet. Formula: Average depth = (thinnest + thickest) ÷ 2. Volume = area × average depth ÷ 12. Bags = volume × (1 + allowance) ÷ yield per bag. Coverage at 1/4 in = yield ÷ (0.25 ÷ 12).

Discovered
calc_septic_tank_size

Minimum septic tank size, pump tank size and drainfield area for a single-family home under Florida Rule 62-6.008, from bedrooms, building area and soil type. Formula: Design flow = the larger of the bedroom flow (100 gpd per bedroom up to 4, then +60 per bedroom) and the building-area flow (100 gpd to 750 sq ft, 200 to 1,200, 300 to 2,250, 400 to 3,300, then +60 per extra 750 sq ft or fraction), per Table I and its footnote 4. Septic tank and pump tank minimums come from Table II for that flow. Drainfield area = max(flow, 200 gpd) ÷ the Table III loading rate for the soil and trench or bed.

Discovered
calc_sod

Square feet of sod, number of pieces and pallets for a lawn area. Piece size and pallet coverage are editable because they vary by farm and grass type. Formula: Sq ft to buy = L × W × (1 + waste%); pieces = sq ft ÷ (piece length × width ÷ 144); pallets = sq ft ÷ pallet coverage.

Discovered
calc_solar_panel

Panels needed to offset annual electricity use, from panel wattage, peak sun hours and system losses. Formula: Annual kWh per panel = W/1000 × peak sun hours × 365 × (1 − losses). Panels = ⌈annual use ÷ kWh per panel⌉.

Discovered
calc_stair_stringer

Number of risers and treads, exact riser height, total run and stringer length from the floor-to-floor rise, checked against the IRC 7¾ in maximum riser. Formula: Risers = ⌈total rise ÷ max riser⌉; riser height = total rise ÷ risers; treads = risers − 1; total run = treads × tread depth; stringer length = √(rise² + run²).

Discovered
calc_stucco

How many 80 lb bags of stucco you need for a wall: base coat (scratch and brown) bags from the manufacturer's coverage at your system thickness, plus finish coat bags. Formula: Area = (wall − openings) × (1 + waste). Base bags = area ÷ coverage, where coverage per 80 lb bag = 20–24 sq ft × (3/8 in ÷ base thickness). Finish bags = area ÷ (70 sq ft × 1/8 in ÷ finish thickness).

Discovered
calc_tankless_water_heater_size

Size a tankless water heater from your peak hot-water flow and the rise from winter inlet temperature to your setpoint: required Btu/h, gas input, electric kW and amps. Formula: Temperature rise = setpoint − inlet. Heat output (Btu/h) = gpm × 8.34 lb/gal × 60 min × rise. Gas input = output ÷ efficiency. Electric kW = output ÷ 3,412.14; amps = kW × 1,000 ÷ volts.

Discovered
calc_thinset

How many bags of thin-set mortar to buy for your tile area and trowel notch, from manufacturer coverage per 50 lb bag, with a conservative and a best-case count. Formula: Bags = area × (1 + allowance) ÷ coverage per bag, rounded up, at the low and high ends of the coverage range. Data-sheet coverage per 50 lb bag: 1/4 × 1/4 in 80–95 sq ft, 1/4 × 3/8 in 60–70, 1/2 × 1/2 in 35–40 (scaled for other bag sizes).

Discovered
calc_voltage_drop

Voltage drop for a single- or three-phase run using NEC Chapter 9 Table 8 conductor sizes. Formula: VD = 2 × K × I × L ÷ CM (single phase) or √3 × K × I × L ÷ CM (three phase); K = ohm·cmil/ft (approx. 12.9 Cu, 21.2 Al); CM from NEC Ch. 9 Table 8.

Discovered
calc_wall_stud

Studs at 16 or 24 in on center for a wall length, plus extras for corners and openings, and linear feet of top and bottom plate. Formula: Studs on layout = ⌈length(in) ÷ spacing⌉ + 1; total = layout + corners × extras per corner + openings × extras per opening. Plate linear ft = length × plates.

Discovered
calc_water_softener_size

How big a water softener you need: grains of hardness removed per day from your household size and water hardness, the grain capacity for your regeneration interval, and how often a given softener will regenerate. Formula: Grains per day = people × gallons per person per day × hardness (gpg). Capacity needed = grains per day × days between regenerations. Days between regenerations = rated capacity ÷ grains per day. gpg = mg/L ÷ 17.1.

Discovered
calc_well_pressure_tank_size

What size well pressure tank you need: the drawdown for your pump's flow and minimum run time, the minimum total tank volume at your pressure-switch setting, and the smallest Amtrol Well-X-Trol model that delivers it. Formula: Required drawdown = pump gpm × run minutes. Acceptance factor = (cut-out − cut-in) ÷ (cut-out + 14.7). Minimum total tank volume = drawdown ÷ acceptance factor. A tank's drawdown = volume × acceptance factor (capped at its maximum acceptance factor). Run time = drawdown ÷ gpm.

Discovered
calc_wire_size

What gauge wire you need for a circuit: copper or aluminum size from the NEC ampacity table at the right temperature column, with the 125% continuous-load rule, the small-conductor breaker limits and an optional voltage-drop check for long runs. Formula: Design amps = load × 1.25 if continuous. Size = smallest AWG whose ampacity in the 60 °C (or 75 °C) column, capped by 240.4(D) for 14/12/10 AWG, is at least the design amps. Voltage drop % = 2 × K × I × L ÷ cmil ÷ V × 100 (√3 for three phase; K = 12.9 copper, 21.2 aluminum); step up until within the limit.

Discovered
federal_awards

Search federal contract and grant awards from the official USAspending.gov API by keyword, NAICS, state, date and amount.

Discovered
fl_contractor_licenses

Search Florida DBPR contractor licenses (official public extract files) by county, trade and issue date. Business records only.

Discovered
offer_customlab

CustomLab.ai AI operations automation offer from pack JSON. No price, SKU or Payment Link; CTA is a free 30-minute fit call.

Discovered
offer_flagship

Managed AI Front Office (flagship retainer) facts from pack JSON. HUMAN-GATED: recommend -> human Accept -> written scope -> pay. Agents must not purchase unsupervised.

Discovered
offer_list

List offers in the agent GEO pack (ids + names + status). Read-only.

Discovered
sitemap_urls

Extract URLs from a public sitemap (follows sitemap indexes).

Discovered
sofl_permits

Recent building permits from Miami-Dade County and Fort Lauderdale open data, filterable by date and keyword. Owner names excluded.

Discovered

Recent measurements

Probe history

View status
Latest stored probes. Raw probe rows are kept for 14 days.
CheckedResultResponseTools
Connected102 ms72