# io.github.kardashev-lab/kardashev-mcp (npm · kardashev-mcp)

US grid data for agents: LMP, carbon, load, queues, ERCOT large loads, RT−DA spread forecasts.

- Trust score: 69/100 (medium)
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-08-18

## Components

- npm · `kardashev-mcp`: 69/100 (this document), [markdown](https://verifymcp.io/servers/kardashev-lab-kardashev-mcp/kardashev-mcp.md), [page](https://verifymcp.io/servers/kardashev-lab-kardashev-mcp/kardashev-mcp)

## Channel facts

- Registry: `npm`
- Package: `kardashev-mcp`
- Version: `0.1.0`
- Transport: `stdio`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-08-18.

- **Supply Chain Security**: 98/100
  - No malware found by supply-chain analysis.
  - No known CVEs affecting this package version or its production dependencies.
  - No install/post-install scripts declared.
  - 30 of 95 dependencies flagged as unhealthy.
- **Provenance & Transparency**: 45/100
  - Source repository is publicly reachable at the declared URL.
  - Provenance check failed: no build-provenance attestation is published.
  - Clear OSI-approved license (MIT).
  - Actively maintained (last published 5 days ago).
  - Disclosure check failed: no security disclosure policy was found in the source repository.
- **Schema Quality & AI Usability**: 79/100
  - AI-judged instruction clarity (excellent).
  - Context-footprint check failed: tool/resource definitions use about 1256 tokens (~114/item across 11 items; 11 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 0/100
  - Stability not yet verified: not enough scan history yet (needs a 30-day window).
- **Tool Coverage**: 100/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 100% of tool parameters carry a description.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

**Unverified: 1 category.** A category scored 0 because we could not verify it: a data source with nothing on this package, evidence we could not reach, or a check we could not run. We only credit what we can confirm.

## Install

### Claude

```bash
claude mcp add kardashev-lab-kardashev-mcp -- npx -y kardashev-mcp
```

### Codex

```bash
codex mcp add kardashev-lab-kardashev-mcp -- npx -y kardashev-mcp
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "kardashev-lab-kardashev-mcp": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "kardashev-mcp"
      ],
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add kardashev-lab-kardashev-mcp --command npx --arg -y --arg kardashev-mcp
```

### Hermes

```yaml
mcp_servers:
  kardashev-lab-kardashev-mcp:
    command: "npx"
    args: ["-y", "kardashev-mcp"]
```

### Other

```json
{
  "mcpServers": {
    "kardashev-lab-kardashev-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "kardashev-mcp"
      ]
    }
  }
}
```

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-08-13 (score 69)

First indexed and scored.

## MCP tools (11)

### `list_isos` (~55 tokens)

List covered ISOs

List US ISOs/RTOs covered by Kardashev Labs and their live ingest status. Call this first to discover valid iso codes for other tools.

Input parameters:

- `include_bas` (boolean): Include smaller balancing authorities. Default false.

### `get_fuel_mix` (~157 tokens)

Get fuel mix

Generation by fuel type (MW) for a US ISO. Use latest=true for the newest snapshot; otherwise returns recent history (row-capped).

Input parameters:

- `end` (string): End date YYYY-MM-DD.
- `fuel_type` (string): Optional fuel filter, e.g. solar, wind, gas.
- `iso` (string, required): ISO/RTO code, e.g. CAISO, ERCOT, MISO, NYISO, ISONE, SPP, PJM.
- `latest` (boolean): If true, return only the latest fuel-mix snapshot. Default false.
- `limit` (integer): Max rows (default 50, max 500).
- `start` (string): Start date YYYY-MM-DD.

### `get_carbon` (~148 tokens)

Get carbon intensity

Grid carbon intensity in lbs CO₂/MWh. Omit iso with latest=true for all balancing authorities; pass iso for one region. Prefer this over raw fuel-mix when the question is about emissions intensity.

Input parameters:

- `end` (string): End date YYYY-MM-DD for history.
- `hours` (integer): Trailing hours of history.
- `iso` (string): ISO/BA code. Optional when latest=true (returns all).
- `latest` (boolean): If true, return latest snapshot(s). Default true when no history window.
- `limit` (integer): Max rows (default 50, max 500).
- `start` (string): Start date YYYY-MM-DD for history.

### `get_lmp` (~182 tokens)

Get LMP prices

Locational marginal prices (LMP) for a US ISO. market=RT (real-time) or DA (day-ahead). Optionally filter by node_id. This is settled/observed prices — for Kardashev's forward RT−DA spread forecast use get_spread_forecast instead.

Input parameters:

- `end` (string): End date YYYY-MM-DD.
- `iso` (string, required): ISO/RTO code, e.g. CAISO, ERCOT, MISO, NYISO, ISONE, SPP, PJM.
- `limit` (integer): Max rows (default 50, max 500).
- `market` (string): RT (real-time) or DA (day-ahead). Default RT.
- `node_id` (string): Optional price node / hub id.
- `start` (string): Start date YYYY-MM-DD.

### `get_load` (~120 tokens)

Get grid load

Actual electricity demand (MW) for a US ISO or zone.

Input parameters:

- `end` (string): End date YYYY-MM-DD.
- `hours` (integer): Trailing hours.
- `iso` (string, required): ISO/RTO code, e.g. CAISO, ERCOT, MISO, NYISO, ISONE, SPP, PJM.
- `limit` (integer): Max rows (default 50, max 500).
- `start` (string): Start date YYYY-MM-DD.
- `zone` (string): Optional zone/load zone filter.

### `get_load_forecast` (~83 tokens)

Get load forecast

Near-term ISO load forecast (MW). Not the ERCOT RT−DA price-spread forecast — use get_spread_forecast for that.

Input parameters:

- `hours` (integer): Forecast horizon in hours. Default 24.
- `include_recent` (boolean): Include recent actuals alongside the forecast.
- `iso` (string): ISO code. Optional for default coverage.

### `get_curtailment` (~113 tokens)

Get renewable curtailment

Solar and wind curtailment (MWh) by ISO. Strongest coverage for CAISO, ERCOT, SPP.

Input parameters:

- `days` (integer): Trailing days if start/end omitted.
- `end` (string): End date YYYY-MM-DD.
- `iso` (string): ISO code filter, e.g. CAISO or ERCOT.
- `limit` (integer): Max rows after fetch (default 50, max 500).
- `start` (string): Start date YYYY-MM-DD.

### `get_queue` (~143 tokens)

Get interconnection queue

Search generator interconnection queue projects across US ISOs/RTOs — projects waiting to connect to the grid. Filter by iso, fuel_type, status, state, or min_mw.

Input parameters:

- `fuel_type` (string): Fuel/technology filter, e.g. Solar, Wind, Storage.
- `iso` (string): ISO filter, e.g. ERCOT, MISO, PJM.
- `limit` (integer): Max rows (default 50, max 500).
- `min_mw` (number): Minimum capacity MW.
- `state` (string): US state code filter, e.g. TX.
- `status` (string): Queue status filter.

### `get_large_load` (~82 tokens)

Get ERCOT large loads

ERCOT large-load interconnection queue snapshot and summary (data centers, crypto, industrial). ERCOT-only. Use summary=true for aggregates; default returns latest rows.

Input parameters:

- `limit` (integer): Max rows when summary=false (default 50, max 500).
- `summary` (boolean): If true, return aggregate summary instead of project rows. Default false.

### `get_spread_forecast` (~113 tokens)

Get ERCOT RT−DA spread forecast

Kardashev Labs live ERCOT day-ahead RT−DA price spread forecast (p10/p50/p90), issued before delivery and never revised. spread = RT − DA. Optional node_id filter (e.g. HB_BUSAVG, HB_NORTH). For scored historical performance use get_forecast_track_record.

Input parameters:

- `limit` (integer): Max rows (default 50, max 500).
- `node_id` (string): ERCOT hub/node id filter, e.g. HB_BUSAVG.

### `get_forecast_track_record` (~60 tokens)

Get spread forecast track record

Public scored track record for Kardashev Labs ERCOT RT−DA spread models (MAE/RMSE/coverage/DART PnL). Use this to evaluate forecast quality; use get_spread_forecast for the live forward issuance.

## Diagnostics

Captured diagnostic sections: Provenance, Dependencies. The full working is on the page: https://verifymcp.io/servers/kardashev-lab-kardashev-mcp/kardashev-mcp#diagnostics

## Score history

- 2026-08-18: 69
- 2026-08-17: 69
- 2026-08-16: 69
- 2026-08-15: 69
- 2026-08-14: 69
- 2026-08-13: 69

## Links

- npm package: https://www.npmjs.com/package/kardashev-mcp
- Socket report: https://socket.dev/npm/package/kardashev-mcp
- Repository: https://github.com/kardashev-lab/kardashev-mcp
- Website: https://kardashevlabs.org/
- Changelog RSS feed: https://verifymcp.io/servers/kardashev-lab-kardashev-mcp/kardashev-mcp.xml
- Changelog JSON feed: https://verifymcp.io/servers/kardashev-lab-kardashev-mcp/kardashev-mcp.json
- HTML version of this page: https://verifymcp.io/servers/kardashev-lab-kardashev-mcp/kardashev-mcp
