GridHub Electricity Market Data

Live and historical electricity prices and demand for 25 grids; carbon intensity for GB.

使うべきか

品質と安全性

B
説明の品質
100%
スキーマの完全性
75%
命名の品質
100%
ポイズニングのリスク
20%
権限の一致
100%
プロトコルへの準拠
100%

検出事項(5)

  • HIGHTool poisoning patterns detected
  • MEDIUMTool description contains URL to non-standard domainget_latest 内
  • MEDIUMTool description contains URL to non-standard domainget_zone_brief 内
  • MEDIUMTool description contains URL to non-standard domainget_history 内
  • MEDIUMTool description contains URL to non-standard domainget_map_snapshot 内

ツール定義とプロトコルへの準拠に関する自動分析に基づいています。

コンテキストコスト

~3,137トークン数(ツール定義)
~3.4 KB一般的なレスポンスサイズ
注意への影響は大きい(128k コンテキストの 2.45%)

これは、サーバーのツールがモデルのコンテキストに読み込まれるたびに消費されるおおよそのトークン数です。数が多いほど、ほかのタスクに使える注意が減ります。

インストール

ワンクリックインストール

これを `claude_desktop_config.json` ファイルに追加してください:

{
  "mcpServers": {
    "gridhub": {
      "url": "https://api.grid-hub.app/mcp"
    }
  }
}

リモートエンドポイント

https://api.grid-hub.app/mcpstreamable-http

できること

ツール一覧

ツール(6)

🟢 読み取り専用🟡 書き込み🔴 削除⚪ 不明
🟢list_zones

List the 25 electricity grid zones GridHub covers, with id, name, data source (EIA, ENTSO-E, NESO, AEMO), timezone, currency, licence and required attribution. Free, no credentials needed. Call this first if you are unsure which zone id to use.

入力スキーマ

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}

出力スキーマ

{
  "type": "object",
  "properties": {
    "zones": {
      "type": [
        "array",
        "null"
      ],
      "items": {
        "type": [
          "object",
          "null"
        ],
        "properties": {
          "id": {
            "type": [
              "string",
              "null"
            ]
          },
          "name": {
            "type": [
              "string",
              "null"
            ]
          },
          "source": {
            "type": [
              "string",
              "null"
            ]
          },
          "tz": {
            "type": [
              "string",
              "null"
            ]
          },
          "currency": {
            "type": [
              "string",
              "null"
            ]
          },
          "license": {
            "type": [
              "string",
              "null"
            ]
          },
          "attribution": {
            "type": [
              "string",
              "null"
            ]
          }
        }
      }
    }
  }
}
🟢get_status

Ingestion health per source and zone: last successful fetch timestamp and last error, if any. Free. Use it to explain stale or missing values before drawing conclusions from them.

入力スキーマ

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}

出力スキーマ

{
  "type": "object",
  "properties": {
    "now": {
      "type": [
        "number",
        "null"
      ]
    },
    "sources": {
      "type": [
        "array",
        "null"
      ],
      "items": {
        "type": [
          "object",
          "null"
        ],
        "properties": {
          "source": {
            "type": [
              "string",
              "null"
            ]
          },
          "zone": {
            "type": [
              "string",
              "null"
            ]
          },
          "last_ok": {
            "type": [
              "number",
              "null"
            ]
          },
          "last_error": {
            "type": [
              "string",
              "null"
            ]
          }
        }
      }
    }
  }
}
🟢get_latest(zone, api_key)

The most recent value of every metric one zone publishes (price and demand for every zone; generation by fuel for GB and US-CAISO; carbon intensity for GB; interchange where available), each with unit and timestamp. This is the right tool for 'what is the price/demand/carbon intensity in X right now'. Note: some European sources publish day-ahead prices, so the price timestamp can be up to ~36h in the future; use get_zone_brief for a strictly at-or-before-now value with historical context. Authentication: send 'Authorization: Bearer <ghk_key>' on the MCP connection (free key, 500 requests/day, instant email signup at https://grid-hub.app/developers), or pay per call with x402 (USDC on Base) via the X-PAYMENT header. With no credentials, data tools run in free sample mode: real, current data but truncated (history capped at 50 rows; brief returns one context block). Sample results are clearly marked.

入力スキーマ

{
  "type": "object",
  "properties": {
    "zone": {
      "type": "string",
      "enum": [
        "US-CAISO",
        "US-ERCOT",
        "US-PJM",
        "US-MISO",
        "US-NYISO",
        "US-ISONE",
        "US-SPP",
        "DE-LU",
        "FR",
        "ES",
        "IT-NO",
        "NL",
        "BE",
        "PL",
        "SE-3",
        "NO-2",
        "DK-1",
        "AT",
        "CH",
        "GB",
        "AU-NSW",
        "AU-QLD",
        "AU-VIC",
        "AU-SA",
        "AU-TAS"
      ],
      "description": "Zone id. US ISOs: US-CAISO, US-ERCOT, US-PJM, US-MISO, US-NYISO, US-ISONE, US-SPP. Europe: DE-LU, FR, ES, IT-NO, NL, BE, PL, SE-3, NO-2, DK-1, AT, CH. Great Britain: GB. Australia (NEM): AU-NSW, AU-QLD, AU-VIC, AU-SA, AU-TAS. Call list_zones for names, sources, currencies and licences."
    },
    "api_key": {
      "type": "string",
      "description": "Optional GridHub API key (ghk_...). Prefer sending it as an 'Authorization: Bearer <key>' HTTP header on the MCP connection; use this argument only if your client cannot set headers. Without a key the tool runs in free sample mode (truncated output)."
    }
  },
  "required": [
    "zone"
  ],
  "additionalProperties": false
}

出力スキーマ

{
  "type": "object",
  "properties": {
    "zone": {
      "type": [
        "string",
        "null"
      ]
    },
    "metrics": {
      "type": [
        "object",
        "null"
      ],
      "additionalProperties": {
        "type": [
          "object",
          "null"
        ],
        "properties": {
          "value": {
            "type": [
              "number",
              "null"
            ]
          },
          "unit": {
            "type": [
              "string",
              "null"
            ]
          },
          "ts": {
            "type": [
              "number",
              "null"
            ]
          },
          "resolution": {
            "type": [
              "string",
              "null"
            ]
          }
        }
      }
    },
    "updated": {
      "type": [
        "number",
        "null"
      ]
    },
    "attribution": {
      "type": [
        "string",
        "null"
      ]
    },
    "license": {
      "type": [
        "string",
        "null"
      ]
    }
  }
}
🟢get_zone_brief(zone, api_key)

Composite, interpretation-ready snapshot of one zone: current price / demand / carbon intensity where published (strictly at-or-before now), each ranked against that zone's own last ~30 days (percentile, vs-median %, min/max, sample count and the actual data window), a 24h trend per metric, the generation mix where published (GB, US-CAISO), and a one-sentence plain-English summary. Best tool for questions like 'is electricity cheap/clean in X right now' or 'is this a good time to run a flexible workload'. A raw price means little without this context. Authentication: send 'Authorization: Bearer <ghk_key>' on the MCP connection (free key, 500 requests/day, instant email signup at https://grid-hub.app/developers), or pay per call with x402 (USDC on Base) via the X-PAYMENT header. With no credentials, data tools run in free sample mode: real, current data but truncated (history capped at 50 rows; brief returns one context block). Sample results are clearly marked.

入力スキーマ

{
  "type": "object",
  "properties": {
    "zone": {
      "type": "string",
      "enum": [
        "US-CAISO",
        "US-ERCOT",
        "US-PJM",
        "US-MISO",
        "US-NYISO",
        "US-ISONE",
        "US-SPP",
        "DE-LU",
        "FR",
        "ES",
        "IT-NO",
        "NL",
        "BE",
        "PL",
        "SE-3",
        "NO-2",
        "DK-1",
        "AT",
        "CH",
        "GB",
        "AU-NSW",
        "AU-QLD",
        "AU-VIC",
        "AU-SA",
        "AU-TAS"
      ],
      "description": "Zone id. US ISOs: US-CAISO, US-ERCOT, US-PJM, US-MISO, US-NYISO, US-ISONE, US-SPP. Europe: DE-LU, FR, ES, IT-NO, NL, BE, PL, SE-3, NO-2, DK-1, AT, CH. Great Britain: GB. Australia (NEM): AU-NSW, AU-QLD, AU-VIC, AU-SA, AU-TAS. Call list_zones for names, sources, currencies and licences."
    },
    "api_key": {
      "type": "string",
      "description": "Optional GridHub API key (ghk_...). Prefer sending it as an 'Authorization: Bearer <key>' HTTP header on the MCP connection; use this argument only if your client cannot set headers. Without a key the tool runs in free sample mode (truncated output)."
    }
  },
  "required": [
    "zone"
  ],
  "additionalProperties": false
}

出力スキーマ

{
  "type": "object",
  "properties": {
    "zone": {
      "type": [
        "string",
        "null"
      ]
    },
    "zone_name": {
      "type": [
        "string",
        "null"
      ]
    },
    "as_of": {
      "type": [
        "number",
        "null"
      ]
    },
    "current": {
      "type": [
        "object",
        "null"
      ],
      "additionalProperties": {
        "type": [
          "object",
          "null"
        ],
        "properties": {
          "value": {
            "type": [
              "number",
              "null"
            ]
          },
          "unit": {
            "type": [
              "string",
              "null"
            ]
          },
          "ts": {
            "type": [
              "number",
              "null"
            ]
          }
        }
      }
    },
    "context": {
      "type": [
        "object",
        "null"
      ],
      "additionalProperties": {
        "type": [
          "object",
          "null"
        ],
        "properties": {
          "percentile": {
            "type": [
              "number",
              "null"
            ]
          },
          "vs_median_pct": {
            "type": [
              "number",
              "null"
            ]
          },
          "median": {
            "type": [
              "number",
              "null"
            ]
          },
          "min": {
            "type": [
              "number",
              "null"
            ]
          },
          "max": {
            "type": [
              "number",
              "null"
            ]
          },
          "sample_count": {
            "type": [
              "number",
              "null"
            ]
          },
          "window_days_actual": {
            "type": [
              "number",
              "null"
            ]
          },
          "unit": {
            "type": [
              "string",
              "null"
            ]
          }
        }
      }
    },
    "context_window_requested_days": {
      "type": [
        "number",
        "null"
      ]
    },
    "summary": {
      "type": [
        "string",
        "null"
      ]
    },
    "coverage_note": {
      "type": [
        "string",
        "null"
      ]
    },
    "attribution": {
      "type": [
        "string",
        "null"
      ]
    },
    "license": {
      "type": [
        "string",
        "null"
      ]
    }
  }
}
🟢get_history(zone, metric, start, end, limit, ...)

Time series for one metric in one zone over a start/end window (Unix seconds). Rows are returned oldest-first and the 'limit' truncates from the OLDEST end, so a small limit over a wide window returns old data, not recent data — for 'the latest N points' set start close to now, or use get_latest / get_zone_brief for current values. Default window is the last 24h (last ~400 days for capacity, which is annual). Max window 31 days per call (400 for capacity); paginate with start/end for more. Metrics: price (wholesale, local currency per MWh), demand (MW), generation (per fuel, 'fuel' field set; % or MW depending on zone; GB and US-CAISO only), carbon-intensity (gCO2/kWh; GB only), interchange (net imports, MW), capacity (installed MW per fuel; European zones only). Authentication: send 'Authorization: Bearer <ghk_key>' on the MCP connection (free key, 500 requests/day, instant email signup at https://grid-hub.app/developers), or pay per call with x402 (USDC on Base) via the X-PAYMENT header. With no credentials, data tools run in free sample mode: real, current data but truncated (history capped at 50 rows; brief returns one context block). Sample results are clearly marked.

入力スキーマ

{
  "type": "object",
  "properties": {
    "zone": {
      "type": "string",
      "enum": [
        "US-CAISO",
        "US-ERCOT",
        "US-PJM",
        "US-MISO",
        "US-NYISO",
        "US-ISONE",
        "US-SPP",
        "DE-LU",
        "FR",
        "ES",
        "IT-NO",
        "NL",
        "BE",
        "PL",
        "SE-3",
        "NO-2",
        "DK-1",
        "AT",
        "CH",
        "GB",
        "AU-NSW",
        "AU-QLD",
        "AU-VIC",
        "AU-SA",
        "AU-TAS"
      ],
      "description": "Zone id. US ISOs: US-CAISO, US-ERCOT, US-PJM, US-MISO, US-NYISO, US-ISONE, US-SPP. Europe: DE-LU, FR, ES, IT-NO, NL, BE, PL, SE-3, NO-2, DK-1, AT, CH. Great Britain: GB. Australia (NEM): AU-NSW, AU-QLD, AU-VIC, AU-SA, AU-TAS. Call list_zones for names, sources, currencies and licences."
    },
    "metric": {
      "type": "string",
      "enum": [
        "price",
        "demand",
        "generation",
        "carbon-intensity",
        "interchange",
        "capacity"
      ],
      "description": "Which series to fetch."
    },
    "start": {
      "type": "integer",
      "description": "Window start, Unix seconds. Default: end minus 24h."
    },
    "end": {
      "type": "integer",
      "description": "Window end, Unix seconds. Default: now."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 1000,
      "description": "Max rows (default 200, max 1000 via MCP; sample mode caps at 50)."
    },
    "api_key": {
      "type": "string",
      "description": "Optional GridHub API key (ghk_...). Prefer sending it as an 'Authorization: Bearer <key>' HTTP header on the MCP connection; use this argument only if your client cannot set headers. Without a key the tool runs in free sample mode (truncated output)."
    }
  },
  "required": [
    "zone",
    "metric"
  ],
  "additionalProperties": false
}

出力スキーマ

{
  "type": "object",
  "properties": {
    "zone": {
      "type": [
        "string",
        "null"
      ]
    },
    "metric": {
      "type": [
        "string",
        "null"
      ]
    },
    "start": {
      "type": [
        "number",
        "null"
      ]
    },
    "end": {
      "type": [
        "number",
        "null"
      ]
    },
    "count": {
      "type": [
        "number",
        "null"
      ]
    },
    "attribution": {
      "type": [
        "string",
        "null"
      ]
    },
    "license": {
      "type": [
        "string",
        "null"
      ]
    },
    "data": {
      "type": [
        "array",
        "null"
      ],
      "items": {
        "type": [
          "object",
          "null"
        ],
        "properties": {
          "metric": {
            "type": [
              "string",
              "null"
            ]
          },
          "fuel": {
            "type": [
              "string",
              "null"
            ]
          },
          "ts": {
            "type": [
              "number",
              "null"
            ]
          },
          "value": {
            "type": [
              "number",
              "null"
            ]
          },
          "unit": {
            "type": [
              "string",
              "null"
            ]
          },
          "resolution": {
            "type": [
              "string",
              "null"
            ]
          },
          "source": {
            "type": [
              "string",
              "null"
            ]
          }
        }
      }
    }
  }
}
🟢get_map_snapshot(api_key)

Current headline values for all 25 zones in one call — the cheapest way to compare zones (e.g. 'which European zone has the lowest price right now', 'rank US ISOs by demand'). Rebuilt every 5 minutes. Authentication: send 'Authorization: Bearer <ghk_key>' on the MCP connection (free key, 500 requests/day, instant email signup at https://grid-hub.app/developers), or pay per call with x402 (USDC on Base) via the X-PAYMENT header. With no credentials, data tools run in free sample mode: real, current data but truncated (history capped at 50 rows; brief returns one context block). Sample results are clearly marked.

入力スキーマ

{
  "type": "object",
  "properties": {
    "api_key": {
      "type": "string",
      "description": "Optional GridHub API key (ghk_...). Prefer sending it as an 'Authorization: Bearer <key>' HTTP header on the MCP connection; use this argument only if your client cannot set headers. Without a key the tool runs in free sample mode (truncated output)."
    }
  },
  "additionalProperties": false
}

出力スキーマ

{
  "type": "object",
  "properties": {
    "generated": {
      "type": [
        "number",
        "null"
      ]
    },
    "zones": {
      "type": [
        "object",
        "null"
      ],
      "additionalProperties": {
        "type": [
          "object",
          "null"
        ],
        "properties": {
          "zone": {
            "type": [
              "string",
              "null"
            ]
          },
          "metrics": {
            "type": [
              "object",
              "null"
            ],
            "additionalProperties": {
              "type": [
                "object",
                "null"
              ],
              "properties": {
                "value": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "unit": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "ts": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "resolution": {
                  "type": [
                    "string",
                    "null"
                  ]
                }
              }
            }
          },
          "updated": {
            "type": [
              "number",
              "null"
            ]
          },
          "attribution": {
            "type": [
              "string",
              "null"
            ]
          },
          "license": {
            "type": [
              "string",
              "null"
            ]
          }
        }
      }
    }
  }
}

コミュニティ

このサーバーを評価する

エビデンス

最近の観測

検証済みバージョンは記録されていませんツール 6 件
検証済みバージョンは記録されていませんツール 6 件