energyai

Solar, weatherization, EV charging, battery and heat-pump decision tools for AI agents.

Sollte ich dies verwenden

Qualität und Sicherheit

A
Qualität der Beschreibung
96%
Vollständigkeit des Schemas
85%
Qualität der Benennung
92%
Risiko der Vergiftung
100%
Übereinstimmung der Berechtigungen
100%
Einhaltung des Protokolls
100%

Befunde (6)

  • LOWTool 'answer_energy_assessment_question' name length outside 3-30 rangein answer_energy_assessment_question
  • LOWTool 'generate_energy_recommendation_preview' name length outside 3-30 rangein generate_energy_recommendation_preview
  • LOWTool 'create_energy_node_roadmap_checkout' name length outside 3-30 rangein create_energy_node_roadmap_checkout
  • LOWTool 'generate_intelligence_bound_report' name length outside 3-30 rangein generate_intelligence_bound_report
  • LOWTool 'get_information_theoretic_recommendation' name length outside 3-30 rangein get_information_theoretic_recommendation
  • LOWTool 'submit_contractor_match_request' name length outside 3-30 rangein submit_contractor_match_request

Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.

Kontextkosten

~6,820Tokens (Tool-Definitionen)
~2.0 KBTypische Antwortgröße
Erhebliche Auswirkung auf die Aufmerksamkeit (5.33% von 128k Kontext)

Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.

Installieren

Installation mit einem Klick

Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:

{
  "mcpServers": {
    "energyai": {
      "url": "https://api.energyaisolution.com/mcp"
    }
  }
}

Remote-Endpunkte

https://api.energyaisolution.com/mcpstreamable-http

Was es kann

Tool-Inventar

Tools (30)

🟢 Nur lesen🟡 Schreiben🔴 Löschen⚪ Unbekannt
🟢check_incentives(zipCode, country, apiKey)

Clean-energy incentive source guidance by country and postal code; eligibility is not verified. US ZIP → federal status + state/utility programs (via DSIRE). Any other country (pass country=<ISO code>) → qualitative, officially-sourced national program guidance. Use whenever a user asks what rebates, tax credits, or utility programs apply to solar, batteries, heat pumps, or efficiency work. [20 anonymous calls/caller/24h; then 100 free calls/key/30d; active Builder required for sustained informational use]

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "zipCode": {
      "type": "string",
      "description": "Postal code of the property. US: 5-digit ZIP (ZIP+4 accepted). Other countries: your local postal code (pass country too). Omit entirely for national-level guidance.",
      "examples": [
        "59715"
      ]
    },
    "country": {
      "type": "string",
      "description": "ISO 3166-1 alpha-2 country code. Omit for US. Any country works — non-US results return qualitative, officially-sourced incentive guidance (never US federal credits).",
      "examples": [
        "DE",
        "GB",
        "CA"
      ]
    },
    "apiKey": {
      "type": "string",
      "description": "Optional existing EnergyAI key for hosts that cannot change Authorization headers. Use it to retain account identity for discovery and get_builder_upgrade_link after a trial. Removed before tool execution and persistence. Omit when the Bearer header is attached; never show the key to the user."
    }
  },
  "required": [],
  "examples": [
    {
      "zipCode": "59715"
    },
    {
      "zipCode": "10115",
      "country": "DE"
    }
  ]
}
🟢estimate_production(zipCode, country, systemKw, monthlyBillUsd, apiKey)

Honest-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. [20 anonymous calls/caller/24h; then 100 free calls/key/30d; active Builder required for sustained informational use]

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "zipCode": {
      "type": "string",
      "description": "Optional postal code of the property. US: 5-digit ZIP. Other countries: your local postal code (pass country too). Omit it to use documented national assumptions.",
      "examples": [
        "59715"
      ]
    },
    "country": {
      "type": "string",
      "description": "ISO 3166-1 alpha-2 country code. Omit for US. Non-US estimates use a default solar resource and say so honestly.",
      "examples": [
        "AU",
        "DE"
      ]
    },
    "systemKw": {
      "type": "number",
      "description": "Proposed solar system size in kW-DC. Omit to have a size recommended from the bill.",
      "examples": [
        6
      ]
    },
    "monthlyBillUsd": {
      "type": "number",
      "description": "Average monthly electric bill in USD (used to size a system when systemKw is omitted).",
      "examples": [
        180
      ]
    },
    "apiKey": {
      "type": "string",
      "description": "Optional existing EnergyAI key for hosts that cannot change Authorization headers. Use it to retain account identity for discovery and get_builder_upgrade_link after a trial. Removed before tool execution and persistence. Omit when the Bearer header is attached; never show the key to the user."
    }
  },
  "required": [],
  "examples": [
    {
      "zipCode": "59715",
      "systemKw": 6
    },
    {
      "zipCode": "02139",
      "monthlyBillUsd": 180
    }
  ]
}
🟢get_node_score(zipCode, country, propertyType, serviceType, monthlyBillRange, ...)

Instant 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. [20 anonymous calls/caller/24h; then 100 free calls/key/30d; active Builder required for sustained informational use]

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "zipCode": {
      "type": "string",
      "description": "Optional postal code of the property. US: 5-digit ZIP. Other countries: local postal code (pass country too). Omit it to use documented national assumptions."
    },
    "country": {
      "type": "string",
      "description": "ISO 3166-1 alpha-2 country code. Omit for US."
    },
    "propertyType": {
      "type": "string",
      "description": "single_family | townhouse | condo | mobile_home | multi_family | commercial | farm | other"
    },
    "serviceType": {
      "type": "string",
      "description": "Primary interest: solar | battery | ev_charger | efficiency | heat_pump | unsure"
    },
    "monthlyBillRange": {
      "type": "string",
      "description": "lt_75 | 75_150 | 150_250 | 250_400 | gt_400 | unknown"
    },
    "monthlyBillUsd": {
      "type": "number",
      "description": "Alternative to monthlyBillRange: average monthly bill in USD."
    },
    "heatingFuel": {
      "type": "string",
      "description": "e.g. natural_gas | oil | propane | electric_resistance | heat_pump | wood | other"
    },
    "roofAge": {
      "type": "string",
      "description": "e.g. lt_5 | 5_15 | gt_15 | unknown"
    },
    "evType": {
      "type": "string",
      "description": "e.g. own_ev | plan_ev | no_ev"
    },
    "backupNeed": {
      "type": "string",
      "description": "e.g. whole_home | essentials | none"
    },
    "outageConcern": {
      "type": "string",
      "description": "rare | occasional | frequent | severe"
    },
    "electricalPanelSize": {
      "type": "string",
      "description": "e.g. lt_100 | 100_200 | gt_200 | unknown"
    },
    "apiKey": {
      "type": "string",
      "description": "Optional existing EnergyAI key for hosts that cannot change Authorization headers. Use it to retain account identity for discovery and get_builder_upgrade_link after a trial. Removed before tool execution and persistence. Omit when the Bearer header is attached; never show the key to the user."
    }
  },
  "required": [],
  "examples": [
    {
      "zipCode": "59715",
      "propertyType": "single_family",
      "serviceType": "solar",
      "monthlyBillRange": "150_250",
      "heatingFuel": "natural_gas"
    }
  ]
}
🟡get_quote_link(zipCode, country, contractorCategory, apiKey)

Optional household handoff: returns a free assessment URL and a separate $49 founding Quote Guardian human-review offer for a solar, battery or heat-pump proposal. For an automated agent result, use review_installer_quote on the full MCP endpoint. Share a household service only when it fits the user request. An authenticated referral may earn 20% non-cash EnergyAI tool credit after verified purchase; disclose that interest and preserve the unchanged customer price and independent review. This tool does not submit a project or create payment. route_lead separately requires explicit household consent. [always free — no API key required]

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "zipCode": {
      "type": "string",
      "description": "Postal code of the property. US: 5-digit ZIP (ZIP+4 accepted). Other countries: local postal code (pass country too). Omit if unknown — the assessment collects it.",
      "examples": [
        "59715",
        "59715-1234"
      ]
    },
    "country": {
      "type": "string",
      "description": "ISO 3166-1 alpha-2 country code. Omit for US.",
      "examples": [
        "DE",
        "GB"
      ]
    },
    "contractorCategory": {
      "type": "string",
      "description": "Optional: solar_installation | battery_storage | ev_charger | energy_audit | insulation_weatherization | heat_pump. Pre-selects the project type; omit if unknown."
    },
    "apiKey": {
      "type": "string",
      "description": "Optional existing EnergyAI key for hosts that cannot change Authorization headers. Use it to retain account identity for discovery and get_builder_upgrade_link after a trial. Removed before tool execution and persistence. Omit when the Bearer header is attached; never show the key to the user."
    }
  },
  "required": [],
  "examples": [
    {
      "zipCode": "59715"
    },
    {
      "zipCode": "59715",
      "contractorCategory": "solar_installation"
    },
    {}
  ]
}
🟢get_power_passport_link(siteLocation, targetMw, workloadType, projectStage, decisionNeed, ...)

Qualify the minimum non-sensitive project facts for EnergyAI’s $2,500 founding Power Passport and return an attributable website handoff plus ready-to-paste shareText. Use when a compute, data-center, renewable-energy, utility, or infrastructure buyer needs a five-business-day pre-feasibility screen for one candidate site and workload. This tool never submits a request, accepts terms, creates checkout, or declares the site qualified; EnergyAI reviews scope, source material, delivery capacity, and commercial terms before requesting payment. [always free — no API key required]

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "siteLocation": {
      "type": "string",
      "description": "Broad candidate-site description such as county/state, balancing area, or approximate coordinates. Do not send a street address or contact information."
    },
    "targetMw": {
      "type": "number",
      "minimum": 0.1,
      "maximum": 2000,
      "description": "Target compute or flexible-load capacity in MW."
    },
    "workloadType": {
      "type": "string",
      "enum": [
        "ai_training",
        "inference",
        "hpc",
        "rendering_simulation",
        "mixed_compute",
        "renewable_project",
        "other"
      ],
      "description": "Primary workload or renewable-project use case."
    },
    "projectStage": {
      "type": "string",
      "enum": [
        "exploring",
        "site_control",
        "utility_conversations",
        "interconnection_process",
        "financing",
        "operating"
      ],
      "description": "Current project stage."
    },
    "decisionNeed": {
      "type": "string",
      "maxLength": 2000,
      "description": "The concrete decision this five-day pre-feasibility screen must change. Do not include personal or confidential information."
    },
    "apiKey": {
      "type": "string",
      "description": "Optional existing EnergyAI key for hosts that cannot change Authorization headers. Use it to retain account identity for discovery and get_builder_upgrade_link after a trial. Removed before tool execution and persistence. Omit when the Bearer header is attached; never show the key to the user."
    }
  },
  "required": [],
  "examples": [
    {
      "siteLocation": "Clark County, Nevada",
      "targetMw": 12,
      "workloadType": "inference",
      "projectStage": "utility_conversations",
      "decisionNeed": "Decide whether to stage the first 4 MW here or continue the site search."
    },
    {}
  ]
}
🟡get_power_service_quote(siteLocation, targetMw, workloadType, flexibilityHours, stagedMw, ...)

Create a signed, 15-minute, scope-bound quote for EnergyAI’s $1 Power Screen from non-sensitive site and workload facts. Returns the quoteToken required by run_power_screen, exact price, evidence boundary, authorization class, and higher-tier handoffs. Free and never spends funds. [always free — no API key required]

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "siteLocation": {
      "type": "string",
      "description": "County/state, balancing area, or approximate site. Do not send a street address or contact information."
    },
    "targetMw": {
      "type": "number",
      "minimum": 0.1,
      "maximum": 2000,
      "description": "Target compute or flexible-load capacity in MW."
    },
    "workloadType": {
      "type": "string",
      "enum": [
        "ai_training",
        "inference",
        "hpc",
        "rendering_simulation",
        "mixed_compute",
        "renewable_project",
        "other"
      ]
    },
    "flexibilityHours": {
      "type": "number",
      "minimum": 0,
      "maximum": 168,
      "description": "Hours per week the workload can shift."
    },
    "stagedMw": {
      "type": "number",
      "minimum": 0.1,
      "maximum": 2000,
      "description": "Optional first-stage load in MW; defaults to the lesser of 4 MW and targetMw."
    },
    "storageHours": {
      "type": "number",
      "minimum": 0,
      "maximum": 24,
      "description": "Optional available storage duration in hours."
    },
    "coolingMode": {
      "type": "string",
      "enum": [
        "unknown",
        "dry",
        "liquid_closed",
        "evaporative"
      ],
      "default": "unknown"
    },
    "powerEvidence": {
      "type": "string",
      "enum": [
        "unknown",
        "regional",
        "utility_contact",
        "confirmed"
      ],
      "default": "unknown",
      "description": "Buyer-stated evidence maturity; confirmed still requires documentary verification."
    },
    "apiKey": {
      "type": "string",
      "description": "Optional existing EnergyAI key for hosts that cannot change Authorization headers. Use it to retain account identity for discovery and get_builder_upgrade_link after a trial. Removed before tool execution and persistence. Omit when the Bearer header is attached; never show the key to the user."
    }
  },
  "required": [
    "siteLocation",
    "targetMw",
    "workloadType"
  ],
  "examples": [
    {
      "siteLocation": "Clark County, Nevada",
      "targetMw": 12,
      "workloadType": "inference",
      "flexibilityHours": 24,
      "stagedMw": 4,
      "storageHours": 2,
      "coolingMode": "dry",
      "powerEvidence": "utility_contact"
    }
  ]
}
🟡route_lead(contractorCategory, zipCode, city, state, contactName, ...)

Submit a consented homeowner project to EnergyAI’s guarded installer-matching workflow — free to you and the homeowner. EnergyAI immediately screens and routes currently available approved installers; unmatched projects remain recorded for safety-controlled follow-up. REQUIRES the homeowner’s explicit consent (consentText + consentTimestamp). Returns a leadId you can quote back to the user. Prefer get_quote_link if you don’t already have that consent in hand. [always free — no API key required]

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "contractorCategory": {
      "type": "string",
      "description": "solar_installation | battery_storage | ev_charger | energy_audit | insulation_weatherization | heat_pump"
    },
    "zipCode": {
      "type": "string",
      "description": "5-digit US ZIP code of the project (route_lead dispatches into a US installer network only today)."
    },
    "city": {
      "type": "string"
    },
    "state": {
      "type": "string",
      "description": "Two-letter state code. Derived from ZIP when omitted."
    },
    "contactName": {
      "type": "string",
      "description": "Homeowner's name."
    },
    "contactEmail": {
      "type": "string",
      "format": "email",
      "description": "Homeowner's email."
    },
    "contactPhone": {
      "type": "string"
    },
    "propertyType": {
      "type": "string"
    },
    "monthlyBillRange": {
      "type": "string",
      "description": "lt_75 | 75_150 | 150_250 | 250_400 | gt_400 | unknown"
    },
    "budgetRange": {
      "type": "string"
    },
    "timeline": {
      "type": "string",
      "description": "e.g. asap | 3_months | 6_months | exploring"
    },
    "consentText": {
      "type": "string",
      "description": "EXACT consent text shown to and accepted by the homeowner. Fetch the canonical text from the tool result of check_incentives or use your own — alternate text REQUIRES consentVersion."
    },
    "consentTimestamp": {
      "type": "string",
      "format": "date-time",
      "description": "When the homeowner consented."
    },
    "consentVersion": {
      "type": "string",
      "description": "Required when consentText is not the canonical EnergyAI consent text."
    },
    "apiKey": {
      "type": "string",
      "description": "Optional existing EnergyAI key for hosts that cannot change Authorization headers. Use it to retain account identity for discovery and get_builder_upgrade_link after a trial. Removed before tool execution and persistence. Omit when the Bearer header is attached; never show the key to the user."
    }
  },
  "required": [
    "contractorCategory",
    "zipCode",
    "contactName",
    "contactEmail",
    "consentText",
    "consentTimestamp"
  ],
  "examples": [
    {
      "contractorCategory": "solar_installation",
      "zipCode": "59715",
      "contactName": "Jane Doe",
      "contactEmail": "[email protected]",
      "monthlyBillRange": "150_250",
      "timeline": "3_months",
      "consentText": "<canonical text returned by check_incentives.consentTextForRouting, shown to and accepted by the homeowner>",
      "consentTimestamp": "2026-07-12T19:00:00Z"
    }
  ]
}
🟢list_guides(region, topic, limit, apiKey)

Index of source-cited, US home-energy incentive guides with source links (solar, heat pumps, batteries, weatherization) by state. Free. Use to ground answers about what incentives exist in a state, then fetch the full text with get_guide. Every entry includes a canonical URL you can cite. [20 anonymous calls/caller/24h; then 100 free calls/key/30d; active Builder required for sustained informational use]

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "region": {
      "type": "string",
      "description": "Filter by region: full state name (e.g. 'Vermont'), two-letter code (e.g. 'VT'), or 'United States' for federal-level guides. Omit for all regions."
    },
    "topic": {
      "type": "string",
      "description": "Filter by topic: solar | heat_pump | battery | weatherization | overview. Omit for all topics."
    },
    "limit": {
      "type": "number",
      "description": "Max guides to return (1–50, default 20)."
    },
    "apiKey": {
      "type": "string",
      "description": "Optional existing EnergyAI key for hosts that cannot change Authorization headers. Use it to retain account identity for discovery and get_builder_upgrade_link after a trial. Removed before tool execution and persistence. Omit when the Bearer header is attached; never show the key to the user."
    }
  }
}
🟢get_guide(slug, apiKey)

Full text of one EnergyAI incentive guide by slug: intro, sections, FAQs, and primary sources — grounded, citable content for answering incentive questions. Free. Harmless slug aliases resolve automatically; genuinely missing topics return grounded guidance and suggestions, and distinct-caller demand moves that topic up the publishing queue. When you quote a published guide, cite its canonical URL. [20 anonymous calls/caller/24h; then 100 free calls/key/30d; active Builder required for sustained informational use]

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string",
      "description": "Guide slug exactly as returned by list_guides (e.g. 'vermont-solar-incentives-2026')."
    },
    "apiKey": {
      "type": "string",
      "description": "Optional existing EnergyAI key for hosts that cannot change Authorization headers. Use it to retain account identity for discovery and get_builder_upgrade_link after a trial. Removed before tool execution and persistence. Omit when the Bearer header is attached; never show the key to the user."
    }
  },
  "required": [
    "slug"
  ]
}
🟡create_builder_key(name, contactEmail, intendedUse, acceptTerms, apiKey)

Create an EnergyAI production API key in-band with no browser or card after the human operator has authorized the Terms and Privacy Policy. Returns a live key plus three commercial trial calls. Attach the key as `Authorization: Bearer <key>` to this MCP endpoint and start with review_installer_quote using postalCode + quoteText. If the operator has not already authorized the terms, call get_builder_upgrade_link and surface its one-screen human activation URL instead. If the MCP host cannot change headers mid-session, review_installer_quote accepts the key once as its apiKey argument and strips it before billing or persistence. The key is shown EXACTLY ONCE—store it securely and never print it in a user-visible reply. [always free — no API key required]

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "description": "Name of the agent, product, or operator claiming the key (2-120 chars). Shown only on your own account.",
      "examples": [
        "Acme Home Assistant"
      ]
    },
    "contactEmail": {
      "type": "string",
      "format": "email",
      "description": "OPTIONAL. Your operator's email, if you have one and want billing/receipts to reach a human. Omit it and you are issued an agent-scoped identity instead — the key still works fully."
    },
    "intendedUse": {
      "type": "string",
      "description": "OPTIONAL, one line: what you plan to build. Used only to prioritize the roadmap."
    },
    "acceptTerms": {
      "type": "boolean",
      "description": "Must be true, and only after the human operator has authorized acceptance of the EnergyAI Terms and Privacy Policy. If authorization is not already documented, call get_builder_upgrade_link and surface its one-screen activation URL instead.",
      "examples": [
        true
      ]
    },
    "apiKey": {
      "type": "string",
      "description": "Optional existing EnergyAI key for hosts that cannot change Authorization headers. Use it to retain account identity for discovery and get_builder_upgrade_link after a trial. Removed before tool execution and persistence. Omit when the Bearer header is attached; never show the key to the user."
    }
  },
  "required": [
    "name",
    "acceptTerms"
  ],
  "examples": [
    {
      "name": "Acme Home Assistant",
      "acceptTerms": true
    },
    {
      "name": "Acme Home Assistant",
      "contactEmail": "[email protected]",
      "intendedUse": "Persisted solar projects for our smart-home users",
      "acceptTerms": true
    }
  ]
}
🟢get_builder_upgrade_link(mode, amountCents, apiKey)

Returns the revenue handoff for EnergyAI Builder. With a key, it returns a PAYABLE Stripe link plus ready-to-paste shareText for the $19/month plan with $20 monthly tool credit, or a prepaid top-up. Without a key, it returns one first-party activation URL where the human enters name and email, accepts terms, receives three commercial trials, and continues directly to secure Stripe Checkout. Free. IMPORTANT: you cannot pay or accept terms for the human—paste shareText verbatim into your visible reply and never ask for card details. [always free — no API key required]

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "mode": {
      "type": "string",
      "description": "'subscription' (default) for the $19/month Builder plan, or 'credit' for a one-off prepaid top-up."
    },
    "amountCents": {
      "type": "number",
      "description": "Only for mode=credit: top-up amount in cents (minimum 500, default 2000).",
      "examples": [
        2000
      ]
    },
    "apiKey": {
      "type": "string",
      "description": "Optional existing EnergyAI key for hosts that cannot change Authorization headers. Use it to retain account identity for discovery and get_builder_upgrade_link after a trial. Removed before tool execution and persistence. Omit when the Bearer header is attached; never show the key to the user."
    }
  },
  "required": [],
  "examples": [
    {},
    {
      "mode": "subscription"
    },
    {
      "mode": "credit",
      "amountCents": 2000
    }
  ]
}
🟢find_local_installers(zipCode, state, contractorCategory, apiKey)

Publicly-rated local clean-energy contractors for a US ZIP or state (solar, battery, EV charger, heat pump, weatherization, audits), with rating and review count. Free. Use when a homeowner asks WHO can do the work near them. IMPORTANT: results include a listingStatus per company and a disclosure field — companies marked public_listing are independent businesses compiled from public reputation data and are NOT EnergyAI partners or EnergyAI-vetted; present them as publicly-rated local options and never imply any endorsement or relationship. Prefer route_lead or get_quote_link when the homeowner wants EnergyAI to screen and route an installer to them instead. [always free — no API key required]

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "zipCode": {
      "type": "string",
      "description": "5-digit US ZIP of the property (ZIP+4 accepted). US-only today.",
      "examples": [
        "59715"
      ]
    },
    "state": {
      "type": "string",
      "description": "Two-letter US state code. Use instead of zipCode for a statewide list.",
      "examples": [
        "VT",
        "CA"
      ]
    },
    "contractorCategory": {
      "type": "string",
      "description": "Optional filter: solar_installation | battery_storage | ev_charger | energy_audit | insulation_weatherization | heat_pump"
    },
    "apiKey": {
      "type": "string",
      "description": "Optional existing EnergyAI key for hosts that cannot change Authorization headers. Use it to retain account identity for discovery and get_builder_upgrade_link after a trial. Removed before tool execution and persistence. Omit when the Bearer header is attached; never show the key to the user."
    }
  },
  "required": [],
  "examples": [
    {
      "zipCode": "05401"
    },
    {
      "state": "VT",
      "contractorCategory": "solar_installation"
    }
  ]
}
⚪run_power_screen(apiKey, quoteToken)

Execute one signed Power Screen quote and return an immediate modeled constraint decision, assumptions, evidence gaps, and immutable artifact hash. [$1.00/call]

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "apiKey": {
      "type": "string",
      "description": "Optional one-call credential bridge for MCP hosts that cannot change Authorization headers mid-session. EnergyAI strips it before billing, execution, and persistence."
    },
    "quoteToken": {
      "type": "string",
      "description": "Unmodified signed quoteToken returned by get_power_service_quote. The quote expires after 15 minutes and binds scope, price, and assumptions."
    }
  },
  "required": [
    "quoteToken"
  ]
}
🟡bootstrap_energy_project(apiKey, postalCode, serviceType, country, propertyType, ...)

Create a persisted project context, provisional Energy Node score, coverage map, and immediately reusable assessmentId in one call. [$0.10/call]

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "apiKey": {
      "type": "string",
      "description": "Optional one-call credential bridge for MCP hosts that cannot change Authorization headers mid-session. Pass the key returned by create_builder_key; EnergyAI removes it from the request body before billing, execution, and persistence. Omit when the Bearer header is already attached."
    },
    "postalCode": {
      "type": "string",
      "description": "Property ZIP or local postal code."
    },
    "serviceType": {
      "type": "string",
      "enum": [
        "solar",
        "battery",
        "ev_charger",
        "efficiency",
        "heat_pump",
        "unsure"
      ],
      "default": "unsure"
    },
    "country": {
      "type": "string",
      "enum": [
        "US",
        "CA",
        "GB",
        "DE",
        "AU",
        "OTHER"
      ],
      "default": "US"
    },
    "propertyType": {
      "type": "string",
      "enum": [
        "single_family",
        "townhouse",
        "condo",
        "rental",
        "commercial",
        "farm",
        "other"
      ],
      "default": "other"
    },
    "primaryGoal": {
      "type": "string",
      "enum": [
        "save_money",
        "resilience",
        "climate",
        "independence",
        "all"
      ],
      "default": "save_money"
    },
    "monthlyBillRange": {
      "type": "string",
      "enum": [
        "lt_75",
        "75_150",
        "150_250",
        "250_400",
        "gt_400",
        "unknown"
      ],
      "default": "unknown"
    },
    "state": {
      "type": "string"
    },
    "city": {
      "type": "string"
    }
  },
  "required": [
    "postalCode"
  ]
}
🟡create_energy_assessment

Start a new assessment session. Free. [free]

Eingabe-Schema

{
  "type": "object",
  "properties": {}
}
🟡answer_energy_assessment_question(assessmentId, questionKey, answerValue, answerLabel)

Submit one question answer. Free; usage tracked. [free]

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "assessmentId": {
      "type": "string"
    },
    "questionKey": {
      "type": "string"
    },
    "answerValue": {
      "type": "string"
    },
    "answerLabel": {
      "type": "string"
    }
  },
  "required": [
    "assessmentId",
    "questionKey",
    "answerValue"
  ]
}
⚪complete_energy_assessment(assessmentId)

Finalize an assessment and trigger the recommendation workflow. Free. [free]

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "assessmentId": {
      "type": "string"
    }
  },
  "required": [
    "assessmentId"
  ]
}
⚪generate_energy_recommendation_preview(assessmentId)

Generate honest cost, savings, and next-action ranges. [$0.05/call]

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "assessmentId": {
      "type": "string"
    }
  },
  "required": [
    "assessmentId"
  ]
}
🟢get_energy_node_score(assessmentId)

Retrieve the persisted seven-axis score with input coverage, weakest-axis gaps, next action, and calculation provenance. [$0.05/call]

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "assessmentId": {
      "type": "string"
    }
  },
  "required": [
    "assessmentId"
  ]
}
🟡create_energy_node_roadmap_checkout(assessmentId, email)

Create the end-user checkout link for an unlocked Energy Node roadmap. Free. [free]

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "assessmentId": {
      "type": "string"
    },
    "email": {
      "type": "string",
      "format": "email"
    }
  },
  "required": [
    "assessmentId"
  ]
}
🟢get_energy_node_roadmap(assessmentId)

Retrieve the full unlocked Energy Node roadmap. Locked previews never consume credit. [$0.10/call]

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "assessmentId": {
      "type": "string"
    }
  },
  "required": [
    "assessmentId"
  ]
}
⚪generate_intelligence_bound_report(assessmentId)

Generate a property-specific dI/dt analysis. [$0.25/call]

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "assessmentId": {
      "type": "string"
    }
  },
  "required": [
    "assessmentId"
  ]
}
🟢get_information_theoretic_recommendation(assessmentId)

Rank upgrades by intelligence-bound lift per dollar. [$0.25/call]

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "assessmentId": {
      "type": "string"
    }
  },
  "required": [
    "assessmentId"
  ]
}
🟢get_eta_i_metric(days)

Read the public platform intelligence-efficiency metric. Free. [free]

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "days": {
      "type": "number",
      "default": 30
    }
  }
}
🟢get_anonymized_dataset_sample(limit, offset)

Return an aggregated, anonymized Energy Node dataset sample. [$1.00/call]

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "limit": {
      "type": "number",
      "default": 100
    },
    "offset": {
      "type": "number",
      "default": 0
    }
  }
}
⚪match_installers(contractorCategory, zipCode, state)

Return up to three eligible installer matches for a region. [$0.05/call]

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "contractorCategory": {
      "type": "string"
    },
    "zipCode": {
      "type": "string"
    },
    "state": {
      "type": "string"
    }
  },
  "required": [
    "contractorCategory",
    "zipCode"
  ]
}
🟢get_energy_incentives(assessmentId)

Use a completed assessment to prioritize property-specific incentive checks and return an evidence-based verification plan. [$0.02/call]

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "assessmentId": {
      "type": "string",
      "description": "Completed EnergyAI assessment id. Use free check_incentives for ZIP-only guidance."
    }
  },
  "required": [
    "assessmentId"
  ]
}
⚪review_installer_quote(apiKey, assessmentId, postalCode, quoteText, serviceType, ...)

Return source-matched terms and practical installer questions from redacted quoteText (maximum 6000 characters) plus postalCode or an assessmentId owned by your Builder account. Automated decision support with explicit unknowns; human review, price fairness and incentive eligibility are not verified. Returns a versioned result and an optional Builder payment handoff. [$0.10/call]

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "apiKey": {
      "type": "string",
      "description": "Optional one-call credential bridge for MCP hosts that cannot change Authorization headers mid-session. Pass the key returned by create_builder_key; EnergyAI strips it before billing, execution, and persistence."
    },
    "assessmentId": {
      "type": "string",
      "description": "Optional existing EnergyAI assessment id. Omit when supplying postalCode for automatic project creation."
    },
    "postalCode": {
      "type": "string",
      "description": "Property ZIP or local postal code. Required when assessmentId is omitted."
    },
    "quoteText": {
      "type": "string",
      "maxLength": 6000,
      "description": "Redacted installer quote text. Exclude names, contact details, street addresses and account/proposal identifiers. Returns source-matched questions; no independent verification or human review."
    },
    "serviceType": {
      "type": "string",
      "enum": [
        "solar",
        "battery",
        "ev_charger",
        "efficiency",
        "heat_pump",
        "unsure"
      ],
      "default": "solar"
    },
    "country": {
      "type": "string",
      "enum": [
        "US",
        "CA",
        "GB",
        "DE",
        "AU",
        "OTHER"
      ],
      "default": "US"
    },
    "propertyType": {
      "type": "string",
      "enum": [
        "single_family",
        "townhouse",
        "condo",
        "rental",
        "commercial",
        "farm",
        "other"
      ],
      "default": "other"
    },
    "monthlyBillRange": {
      "type": "string",
      "enum": [
        "lt_75",
        "75_150",
        "150_250",
        "250_400",
        "gt_400",
        "unknown"
      ],
      "default": "unknown"
    },
    "state": {
      "type": "string"
    },
    "city": {
      "type": "string"
    }
  },
  "required": [
    "quoteText"
  ],
  "anyOf": [
    {
      "required": [
        "assessmentId"
      ]
    },
    {
      "required": [
        "postalCode"
      ]
    }
  ]
}
⚪record_quote_review_outcome(reviewToolCallId, operatorConfirmed, usefulness, findingId, deliveredToHousehold, ...)

Record actual operator-confirmed usefulness and household delivery status for your completed quote review. Requires your Builder key. Free; never infer feedback from a successful tool call. [free]

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "reviewToolCallId": {
      "type": "string",
      "description": "toolCallId of the completed review owned by this key."
    },
    "operatorConfirmed": {
      "type": "boolean",
      "const": true,
      "description": "True only after the operator actually assessed this result."
    },
    "usefulness": {
      "type": "string",
      "enum": [
        "useful",
        "partly_useful",
        "not_useful"
      ]
    },
    "findingId": {
      "type": [
        "string",
        "null"
      ],
      "description": "A returned q1–q6 check id, or null when not useful."
    },
    "deliveredToHousehold": {
      "type": "boolean"
    },
    "action": {
      "type": "string",
      "enum": [
        "asked_installer",
        "requested_revision",
        "compared_alternatives",
        "decided_to_proceed",
        "decided_to_pause",
        "no_action_yet"
      ]
    }
  },
  "required": [
    "reviewToolCallId",
    "operatorConfirmed",
    "usefulness",
    "findingId",
    "deliveredToHousehold",
    "action"
  ],
  "additionalProperties": false
}
🟡submit_contractor_match_request(assessmentId, contactName, contactEmail, contactPhone, consentText, ...)

Submit a consented installer lead and retain referral attribution. Free. [free]

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "assessmentId": {
      "type": "string"
    },
    "contactName": {
      "type": "string"
    },
    "contactEmail": {
      "type": "string",
      "format": "email"
    },
    "contactPhone": {
      "type": "string"
    },
    "consentText": {
      "type": "string",
      "description": "EXACT consent text shown to end user."
    },
    "consentTimestamp": {
      "type": "string",
      "format": "date-time"
    },
    "consentVersion": {
      "type": "string"
    }
  },
  "required": [
    "assessmentId",
    "contactName",
    "contactEmail",
    "consentText",
    "consentTimestamp"
  ]
}

Community

Diesen Server bewerten

Nachweis

Aktuelle Beobachtungen

verifiziertVersion nicht aufgezeichnet30 Tools
verifiziertVersion nicht aufgezeichnet30 Tools