Calculate Pool
Swimming pool math: volume in gallons, chemical doses, pump flow and heater BTU for any pool.
¿Debería usar esto?
Calidad y seguridad
Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.
Costo de contexto
Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.
Instalar
Instalación con un clic
Agrega esto a tu archivo `claude_desktop_config.json`:
{
"mcpServers": {
"calculatepool": {
"url": "https://calculatepool.com/mcp?src=mcp"
}
}
}Puntos de conexión remotos
https://calculatepool.com/mcp?src=mcpstreamable-httpQué puede hacer
Inventario de herramientas
Herramientas (5)
🟢pool_volume(shape, unit, dimensions, shallow_depth, deep_depth, ...)
Use this when someone wants to know how many gallons (or litres, cubic feet) a swimming pool holds from its shape and size: rectangle, round, oval, Roman, Grecian, kidney, L-shape or freeform, with one depth, a shallow and a deep end, or an above-ground wall height (48, 52, 54 in). Dimensions in feet or metres. Returns gallons, litres, cubic feet, cubic metres, surface area and the formula. Use it before chemical_dose, pump_size or heater_size when only dimensions are known.
Esquema de entrada
{
"type": "object",
"properties": {
"shape": {
"type": "string",
"enum": [
"rect",
"round",
"oval",
"roman",
"grecian",
"kidney",
"lshape",
"free"
],
"description": "rect (default), round, oval, roman (half-circle ends), grecian (cut corners), kidney, lshape, free (freeform, needs area)."
},
"unit": {
"type": "string",
"enum": [
"ft",
"m"
],
"description": "Unit of every dimension and depth: ft (default) or m."
},
"dimensions": {
"type": "object",
"properties": {
"length": {
"type": "number",
"description": "rect, oval, roman, grecian, kidney, lshape."
},
"width": {
"type": "number",
"description": "rect, oval, roman, grecian, lshape."
},
"diameter": {
"type": "number",
"description": "round."
},
"widthA": {
"type": "number",
"description": "kidney: width of the wide end."
},
"widthB": {
"type": "number",
"description": "kidney: width of the narrow end."
},
"length2": {
"type": "number",
"description": "lshape: second rectangle length."
},
"width2": {
"type": "number",
"description": "lshape: second rectangle width."
},
"corner": {
"type": "number",
"description": "grecian: size of each 45° corner cut (optional)."
},
"area": {
"type": "number",
"description": "free: surface area in sq ft (or m² with unit m)."
}
},
"required": [],
"additionalProperties": false
},
"shallow_depth": {
"type": "number",
"description": "Water depth at the shallow end, or the only depth for a constant-depth pool."
},
"deep_depth": {
"type": "number",
"description": "Water depth at the deep end (optional; average of the two is used)."
},
"above_ground_wall_in": {
"type": "integer",
"enum": [
48,
52,
54
],
"description": "Above-ground round or oval pool: wall height in inches instead of depths."
}
},
"required": [
"shape",
"dimensions"
],
"additionalProperties": false
}Esquema de salida
{
"type": "object",
"properties": {
"shape": {
"type": "string"
},
"unit_in": {
"type": "string"
},
"gallons": {
"type": "integer"
},
"litres": {
"type": "integer"
},
"cubic_feet": {
"type": "number"
},
"cubic_metres": {
"type": "number"
},
"surface_area_sqft": {
"type": "number"
},
"average_depth_ft": {
"type": "number"
},
"formula": {
"type": "string"
},
"above_ground_wall_in": {
"type": "integer"
},
"link": {
"type": "string",
"description": "Page of calculatepool.com for the same calculation."
}
},
"required": [
"shape",
"unit_in",
"gallons",
"litres",
"cubic_feet",
"cubic_metres",
"surface_area_sqft",
"average_depth_ft",
"formula",
"link"
],
"additionalProperties": false
}🟢chemical_dose(chemical, gallons, current, target, total_alkalinity)
Use this when someone asks how much of a pool chemical to add to go from a current to a target level: chlorine (liquid chlorine 12.5 %, bleach 10 % or 6 %, cal-hypo 65 % or 73 %, dichlor, trichlor) for free chlorine; salt for a salt chlorinator; baking soda to raise or muriatic acid to lower total alkalinity; stabilizer (cyanuric acid); calcium chloride for calcium hardness; muriatic acid to lower pH or soda ash to raise it. Levels in ppm (pH for the pH chemicals). Returns the amount in fl oz, oz or lb, a readable amount, the number of common packages, the factor used and a safety line. Not for shock targets or water-balance (LSI) questions.
Esquema de entrada
{
"type": "object",
"properties": {
"chemical": {
"type": "string",
"enum": [
"liquid_chlorine_12_5",
"bleach_10",
"bleach_6",
"cal_hypo_65",
"cal_hypo_73",
"dichlor",
"trichlor",
"salt",
"baking_soda",
"stabilizer_cya",
"calcium_chloride",
"calcium_chloride_anhydrous",
"muriatic_acid_ph",
"muriatic_acid_ta",
"soda_ash"
],
"description": "Product. muriatic_acid_ph lowers pH, muriatic_acid_ta lowers total alkalinity."
},
"gallons": {
"type": "number",
"minimum": 100,
"maximum": 2000000,
"description": "Pool volume in US gallons (from pool_volume if the user gave dimensions)."
},
"current": {
"type": "number",
"description": "Current level: ppm (free chlorine, salt, alkalinity, stabilizer, calcium hardness) or pH for muriatic_acid_ph and soda_ash."
},
"target": {
"type": "number",
"description": "Target level in the same unit as current."
},
"total_alkalinity": {
"type": "number",
"minimum": 20,
"maximum": 300,
"description": "Only for muriatic_acid_ph and soda_ash: current TA in ppm (default 100); the pH dose scales with it."
}
},
"required": [
"chemical",
"gallons",
"current",
"target"
],
"additionalProperties": false
}Esquema de salida
{
"type": "object",
"properties": {
"chemical": {
"type": "string"
},
"product": {
"type": "string"
},
"gallons": {
"type": "number"
},
"parameter": {
"type": "string"
},
"current": {
"type": "number"
},
"target": {
"type": "number"
},
"direction": {
"type": "string",
"enum": [
"raise",
"lower"
]
},
"total_alkalinity": {
"type": "number"
},
"amount": {
"type": "number"
},
"unit": {
"type": "string",
"enum": [
"fl oz",
"oz",
"lb"
]
},
"amount_text": {
"type": "string"
},
"packages": {
"anyOf": [
{
"type": "object",
"properties": {
"count": {
"type": "integer"
},
"package": {
"type": "string"
},
"text": {
"type": "string"
},
"note": {
"type": "string"
}
},
"required": [
"count",
"package",
"text",
"note"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"factor": {
"type": "string"
},
"note": {
"type": "string"
},
"safety": {
"type": "string"
},
"link": {
"type": "string",
"description": "Page of calculatepool.com for the same calculation."
}
},
"required": [
"chemical",
"product",
"gallons",
"parameter",
"current",
"target",
"direction",
"amount",
"unit",
"amount_text",
"packages",
"factor",
"note",
"safety",
"link"
],
"additionalProperties": false
}🟢pump_size(gallons, turnover_hours)
Use this when someone asks what size pool pump they need or what flow rate turns their pool over in a given number of hours. Takes gallons and turnover hours (default 8). Returns gallons per minute, gallons per hour, a rule-of-thumb horsepower range, the minimum sand, cartridge and DE filter area for that flow, and pipe velocities. Not for electricity cost or pump model recommendations.
Esquema de entrada
{
"type": "object",
"properties": {
"gallons": {
"type": "number",
"minimum": 100,
"maximum": 2000000,
"description": "Pool volume in US gallons (from pool_volume if the user gave dimensions)."
},
"turnover_hours": {
"type": "number",
"minimum": 1,
"maximum": 24,
"description": "Hours for one full turnover (default 8; 6 for heavy use)."
}
},
"required": [
"gallons"
],
"additionalProperties": false
}Esquema de salida
{
"type": "object",
"properties": {
"gallons": {
"type": "number"
},
"turnover_hours": {
"type": "number"
},
"gpm": {
"type": "number"
},
"gallons_per_hour": {
"type": "integer"
},
"hp_hint": {
"type": "string"
},
"filter_min_sqft": {
"type": "object",
"properties": {
"sand": {
"type": "number"
},
"cartridge": {
"type": "number"
},
"de": {
"type": "number"
}
},
"required": [
"sand",
"cartridge",
"de"
],
"additionalProperties": false
},
"pipe_velocity_fps": {
"type": "object",
"properties": {
"1.5_in": {
"type": "number"
},
"2_in": {
"type": "number"
},
"2.5_in": {
"type": "number"
}
},
"required": [
"1.5_in",
"2_in",
"2.5_in"
],
"additionalProperties": false
},
"note": {
"type": "string"
},
"link": {
"type": "string",
"description": "Page of calculatepool.com for the same calculation."
}
},
"required": [
"gallons",
"turnover_hours",
"gpm",
"gallons_per_hour",
"hp_hint",
"filter_min_sqft",
"pipe_velocity_fps",
"note",
"link"
],
"additionalProperties": false
}🟢heater_size(gallons, temperature_rise_f, hours, buffer_percent)
Use this when someone asks what size pool heater (BTU per hour) they need to raise the water a number of degrees Fahrenheit in a given time. Takes gallons, the temperature rise in °F and the hours (default 24), plus an optional buffer for surface heat loss (default 20 %, the same as the heater calculator on calculatepool.com). Returns the BTU/h required, the size with the buffer, the total BTU and the electric input of an equivalent heat pump. Not for heating cost per month or heater model recommendations.
Esquema de entrada
{
"type": "object",
"properties": {
"gallons": {
"type": "number",
"minimum": 100,
"maximum": 2000000,
"description": "Pool volume in US gallons (from pool_volume if the user gave dimensions)."
},
"temperature_rise_f": {
"type": "number",
"minimum": 1,
"maximum": 60,
"description": "Degrees Fahrenheit to raise the water."
},
"hours": {
"type": "number",
"minimum": 1,
"maximum": 168,
"description": "Hours to reach the temperature (default 24)."
},
"buffer_percent": {
"type": "number",
"minimum": 0,
"maximum": 100,
"description": "Extra capacity for surface heat loss while heating (default 20)."
}
},
"required": [
"gallons",
"temperature_rise_f"
],
"additionalProperties": false
}Esquema de salida
{
"type": "object",
"properties": {
"gallons": {
"type": "number"
},
"temperature_rise_f": {
"type": "number"
},
"hours": {
"type": "number"
},
"buffer_percent": {
"type": "number"
},
"btu_per_hour_required": {
"type": "integer"
},
"btu_per_hour_with_buffer": {
"type": "integer"
},
"total_btu": {
"type": "integer"
},
"heat_pump_kw_input_cop5": {
"type": "number"
},
"note": {
"type": "string"
},
"link": {
"type": "string",
"description": "Page of calculatepool.com for the same calculation."
}
},
"required": [
"gallons",
"temperature_rise_f",
"hours",
"buffer_percent",
"btu_per_hour_required",
"btu_per_hour_with_buffer",
"total_btu",
"heat_pump_kw_input_cop5",
"note",
"link"
],
"additionalProperties": false
}🟢pool_facts(kind)
Use this when someone asks how many gallons a common pool size holds, e.g. a 24 ft round above-ground pool with a 52 in wall or a 16 x 32 inground pool, or wants a table of standard sizes. Returns inground rectangles (12x24 to 25x50 ft at 3.5, 4.5 and 5.5 ft average depth) and above-ground round and oval pools (12-33 ft round, 12x24 to 21x41 ft oval at 48, 52 and 54 in walls) with the factors used. For any other size or shape use pool_volume.
Esquema de entrada
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"enum": [
"all",
"inground",
"above_ground"
],
"description": "Which table (default all)."
}
},
"required": [],
"additionalProperties": false
}Esquema de salida
{
"type": "object",
"properties": {
"kind": {
"type": "string"
},
"rows": {
"type": "array",
"items": {
"type": "object",
"properties": {
"pool": {
"type": "string"
},
"kind": {
"type": "string"
},
"gallons": {
"type": "array",
"items": {
"type": "object",
"properties": {
"depth": {
"type": "string"
},
"gallons": {
"type": "integer"
}
},
"required": [
"depth",
"gallons"
],
"additionalProperties": false
}
}
},
"required": [
"pool",
"kind",
"gallons"
],
"additionalProperties": false
}
},
"factors": {
"type": "object",
"properties": {
"gallons_per_cubic_foot": {
"type": "number"
},
"round_and_oval_factor": {
"type": "number"
},
"litres_per_gallon": {
"type": "number"
}
},
"required": [
"gallons_per_cubic_foot",
"round_and_oval_factor",
"litres_per_gallon"
],
"additionalProperties": false
},
"note": {
"type": "string"
},
"link": {
"type": "string",
"description": "Page of calculatepool.com for the same calculation."
}
},
"required": [
"kind",
"rows",
"factors",
"note",
"link"
],
"additionalProperties": false
}Comunidad
Evidencia