Skip to content

Connect your own MCP client

Aristotle’s in-app chat is the easy way in. When you want more — your own LLM budget, your own tooling, or to wire WattCarbon data into an assistant you already use — you can point your own MCP client straight at WattCarbon’s endpoint. You bring the language model and pay for its tokens; we serve your account’s data, read-only.

https://api.wattcarbon.com/mcp

It speaks the streamable-http MCP transport and authenticates with a WattCarbon API key (the same key the rest of our API uses). Everything it exposes is read-only and scoped to your account — exactly what Aristotle can see, nothing it can’t.

Create a key from Account Settings → API Keys in the web app. A key looks like wck_live_<43 characters> and is shown once, at creation; copy it somewhere safe, since it can’t be retrieved again. Revoke a key from the same page at any time. Each key is scoped to a single account.

Use it directly as a bearer credential:

Authorization: Bearer wck_live_YOUR_KEY

Add WattCarbon to your MCP client’s server list. For Claude Desktop, Cursor, and most other clients the shape is:

{
"mcpServers": {
"wattcarbon": {
"type": "streamable-http",
"url": "https://api.wattcarbon.com/mcp",
"headers": {
"Authorization": "Bearer YOUR_API_KEY"
}
}
}
}

Then ask your assistant things like “What assets do I have?”, “Explain the methodology for asset 42”, or “Show me last year’s monthly savings for my solar fleet.”

All tools are read-only.

The names below are what your client receives from tools/list. Each maps to the HTTP route of the same name — MCP-get_account is GET /mcp/get-account — so you can try any of them with curl before wiring up a client.

Tool What it does
MCP-get_account Your account overview and contact info.
MCP-list_assets List your assets, with optional kind / status / domain / name filters.
MCP-get_portfolio_summary Headline metrics for every asset in your account in a single call.
MCP-get_portfolio_measurements Every asset’s observed total for one period, in a single call — for ranking or comparing assets over a date range.
MCP-get_data_coverage How many asset-months of data your fleet has, for spotting gaps.
MCP-get_asset Full configuration, location, and metadata for one asset.
MCP-get_asset_methodology Start here. How an asset is measured: methodology steps, model details, and carbon / grid scores.
MCP-get_asset_measurement_logs Scores, warnings, and data-quality notes from an asset’s latest measurement job.
MCP-get_asset_measurements An asset’s measurement timeseries (observed vs. comparison scenario) as chartable data points.
MCP-get_asset_peak_stats Interval-level peak and demand statistics for one or more assets.
MCP-get_measurement_summary Available date ranges and measurement scenarios for your assets — call this before measurements or methodology to discover what data exists.
MCP-get_asset_tariff The electricity tariff an asset is billed on: energy rate range, fixed charges, seasonal demand charges, demand ratchet.
MCP-find_tariffs Candidate tariffs that could apply at an asset’s address.
MCP-get_asset_der_value_projection Multi-year grid-value projection for a battery or other DER asset.
MCP-simulate_peak_shaving Size a battery that lowers an asset’s demand charges: the recommended size, every size evaluated, and billed demand per month before and after.
Tool What it does
MCP-list_docs Index of WattCarbon platform how-to documentation.
MCP-get_doc The full text of a platform documentation page.

A second corpus documents the grid data itself — what each value stream means, how it is computed, and its known limits.

Tool What it does
MCP-grid_list_docs Index of the grid-data documentation, with each entry’s sections.
MCP-grid_get_doc One grid-data document, or one section of it. A whole document is too large.

These read grid-planning data rather than your account’s data. Most are keyed by a distribution node, so resolve the node first, then query it. nwa_planned_capacity and nwa_utility_substations are the exceptions: both are keyed by utility. Forecasts and load shapes here are modeled, not metered. A published plan is not — it is the utility’s own statement.

Tool What it does
MCP-nwa_list_coverage Which utilities/states the grid data covers, and each value stream’s provenance.
MCP-nwa_list_nodes Find distribution nodes in a state — by coordinates, county, or substation name.
MCP-nwa_constraint One node’s distribution capacity constraint and deficiency outlook.
MCP-nwa_der_potential The DER capacity that could be assembled at a node.
MCP-nwa_relief_portfolio A portfolio of resources sized to relieve a node’s constraint.
MCP-nwa_scenario An assembled “defer the wire” scenario for a node.
MCP-nwa_forecast Forward stress forecast for a node.
MCP-nwa_forecast_history Previously published forecasts for a node, for comparison.
MCP-nwa_load_shape Modeled hourly load shape at a node.
MCP-nwa_value_streams Forward value streams available at a node.
MCP-nwa_planned_capacity The capacity projects a utility has itself published: where and by when.
MCP-nwa_utility_substations The substations a utility publishes on its own hosting-capacity map: position, feeder count, voltage, installed and queued distributed generation, the limiting constraint, and the year-by-year capacity shortfall.

These read a load-serving entity’s own economics rather than your account’s data. An LSE is identified by a slug, such as svce. Prices are USD per kilowatt-hour, not per MWh.

Tool What it does
MCP-lse_margin_hours Which hours of a typical year an LSE loses money serving load, as 288 month-by-hour cells with cost to serve, generation revenue, and margin.
MCP-lse_priority_substations The substations in an LSE’s territory that a demand-flexibility program would help most, each with a need score, a recommended DER type and size, and nearby data centers.
MCP-lse_flex_settlement Settle a DER’s demand savings under the bifurcated flexibility program: the kWh in each bucket, and the dollars each payer owes.