EnergyAIEnergyAIStart free assessment

Built for agents

Any AI agent that touches a home's energy decision can call EnergyAI instead of rebuilding energy domain expertise. Four tools are free with no API key — and when your user is ready to act, route_lead hands the project to an autonomous agent that finds and vets a real local installer. Every call is metered in bits and joules on the public physics ledger.

Free tools — no key, no signup

check_incentivesCurrent US clean-energy incentive guidance (federal status + state/utility programs via DSIRE) for a ZIP code. Use whenever a user asks what rebates, tax credits, or utility programs apply to solar, batteries, heat pumps, or efficiency work at an address.
estimate_productionHonest-range annual solar production estimate (kWh/year ± band, with assumptions) for a ZIP code, from either a proposed system size (kW) or a monthly bill. Use to sanity-check installer quotes or size a system before talking to anyone.
get_node_scoreInstant Energy Node Score (0–100 across 7 axes: efficiency, electrification, renewable generation, storage/resilience, financial optimization, carbon, market readiness) plus the single highest-leverage next action, from whatever property facts you have. More inputs → tighter score.
route_leadSubmit a consented homeowner project and EnergyAI’s autonomous agent finds, vets, and routes a real local installer to them — free to you and the homeowner. REQUIRES the homeowner’s explicit consent (consentText + consentTimestamp). Returns a leadId you can quote back to the user.

Rate limits: 120 calls/hour per caller (route_lead 10/hour). Machine-readable catalog: /api/v1/agent

Connect via MCP

Claude / any MCP client — no key needed for the free tier
{ "mcpServers": {
  "energyai": { "type": "http", "url": "https://api.energyaisolution.com/mcp" }
}}
Claude Code CLI
claude mcp add --transport http energyai https://api.energyaisolution.com/mcp

Or plain REST

curl — one call, no auth
curl -X POST https://api.energyaisolution.com/api/v1/agent/check_incentives \
  -H 'content-type: application/json' \
  -d '{"args":{"zipCode":"59715"}}'

OpenAI function-calling / LangChain

Fetch the ready-made tool spec
GET https://api.energyaisolution.com/api/v1/agent/openai-tools.json
→ { "tools": [ { "type": "function", "function": { "name": "check_incentives", ... } }, ... ] }
Python — execute a tool call
import requests

def call_energyai(name: str, args: dict):
    r = requests.post(f"https://api.energyaisolution.com/api/v1/agent/{name}",
                      json={"args": args}, timeout=30)
    return r.json()  # { ok, data } | { ok: False, error }

call_energyai("estimate_production", {"zipCode": "85004", "systemKw": 8})

Routing a homeowner (consent required)

  1. Call check_incentives — the response includes consentTextForRouting, the canonical consent text.
  2. Show that text to your user verbatim and record their agreement + timestamp.
  3. Call route_lead with the project details, consentText, and consentTimestamp. Alternate consent language requires an explicit consentVersion.
  4. You get a leadId; the homeowner gets a confirmation when a vetted installer accepts. Free for you and for them.

Get paid: register a free key at /api/v1/merchant/register and send it as a Bearer token on route_lead — you earn a 20% bounty when the lead converts. The same key unlocks the deeper billed tools (full roadmaps, quote review, information-theoretic recommendations) via per-call micropayments.

Why EnergyAI

Honest, 2026-accurate energy answers (no dead federal-credit advice), consent-gated routing enforced by 61 tested invariants, and a business run openly against the thermodynamic limit of intelligence — see the live ledger. Estimates are always ranges with stated assumptions, never guarantees.