Free, public API for AI systems and developers. No authentication required.
Calculate paint requirements for a given area and paint type.
{
"length": 12,
"width": 12,
"height": 8,
"paintType": "eggshell-satin",
"coats": 2,
"doors": 1,
"windows": 1
}{
"gallons": 2.0,
"squareFeet": 349,
"paintType": "Eggshell/Satin",
"coverage": 375,
"coats": 2
}curl -X POST https://www.homepaintcalculator.com/api/calculate \
-H "Content-Type: application/json" \
-d '{"length":12,"width":12,"height":8,"paintType":"eggshell-satin","coats":2}'Quick calculation for specific room sizes with optional city-specific pricing.
?length=12&width=12&height=8&doors=1&windows=1&paintType=eggshell-satin&coats=2&city=minneapolis{
"gallons": 2.0,
"sqft": 349,
"paintType": "Eggshell/Satin",
"coats": 2,
"costEstimate": {
"min": 60,
"max": 80,
"pricePerGallon": { "min": 30, "max": 40 },
"city": "Minneapolis & St. Paul"
}
}curl "https://www.homepaintcalculator.com/api/room-calculator?length=12&width=12&height=8&city=minneapolis"Get city-specific paint pricing, climate data, and seasonal recommendations.
slug - Get specific city (e.g., ?slug=minneapolis)state - Filter by state (e.g., ?state=MN)climateZone - Filter by climate zone{
"city": {
"slug": "minneapolis",
"name": "Minneapolis",
"displayName": "Minneapolis & St. Paul",
"interiorPaintMin": 30,
"interiorPaintMax": 40,
"exteriorPaintMin": 35,
"exteriorPaintMax": 50,
"laborRateMin": 30,
"laborRateMax": 50,
"climateZone": "cold-extreme",
"retailers": [...],
"weatherConsiderations": [...]
}
}curl "https://www.homepaintcalculator.com/api/cities?slug=minneapolis"Get structured data on coverage rates for all paint types.
{
"paintTypes": [
{
"id": "flat-interior",
"name": "Flat/Matte Interior",
"coveragePerGallon": 425,
"coverageMin": 400,
"coverageMax": 450,
"typicalCoats": 2
}
]
}curl https://www.homepaintcalculator.com/api/coverage-ratesFor Claude, Cursor, and other MCP clients, use our Python MCP wrapper instead of calling these REST endpoints manually. It exposes the four public API endpoints as MCP tools with validation and retries.
mcp-server/ in the GitHub repopython -m homepaint_mcp/mcp/health on the MCP host (not this site)See mcp-server/README.md for Claude Desktop config and production deployment steps. The website and REST API stay on Vercel; the MCP process runs separately.
X-RateLimit-* headers when rate limiting is enabled (requires Upstash Redis env vars on Vercel).