io.github.cyanheads

eia-mcp-server

Browse and query the EIA API v2 — electricity, petroleum, natural gas, coal, forecasts via MCP.

communityknowledge

Package Details

Transportstdio
Runtimebun

Package Arguments

Positional
Position 0
run
Position 1
start:stdio

Environment Variables

EIA_API_KEY(str)
Required

Free API key from api.eia.gov. Required — all requests use this as the api_key query parameter.

EIA_DATASET_TTL_SECONDS(str)
Default:86400

Per-table TTL for DataCanvas dataframes in seconds.

EIA_DATAFRAME_DROP_ENABLED(str)
Default:false

Set to 'true' to expose eia_dataframe_drop for manual canvas cleanup.

CANVAS_PROVIDER_TYPE(str)

Set to 'duckdb' to enable DataCanvas spillover for large query result sets (Node.js only).

MCP_LOG_LEVEL(str)
Default:info

Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').

TransportStreamable HTTP
Runtimebun

Package Arguments

Positional
Position 0
run
Position 1
start:http

Environment Variables

EIA_API_KEY(str)
Required

Free API key from api.eia.gov. Required — all requests use this as the api_key query parameter.

EIA_DATASET_TTL_SECONDS(str)
Default:86400

Per-table TTL for DataCanvas dataframes in seconds.

EIA_DATAFRAME_DROP_ENABLED(str)
Default:false

Set to 'true' to expose eia_dataframe_drop for manual canvas cleanup.

CANVAS_PROVIDER_TYPE(str)

Set to 'duckdb' to enable DataCanvas spillover for large query result sets (Node.js only).

MCP_HTTP_HOST(str)
Default:127.0.0.1

The hostname for the HTTP server.

MCP_HTTP_PORT(str)
Default:3010

The port to run the HTTP server on.

MCP_HTTP_ENDPOINT_PATH(str)
Default:/mcp

The endpoint path for the MCP server.

MCP_PUBLIC_URL(str)

Public origin override for deployments behind a TLS-terminating reverse proxy (e.g. https://mcp.example.com).

MCP_AUTH_MODE(str)
Default:none

Authentication mode to use: 'none', 'jwt', or 'oauth'.

MCP_LOG_LEVEL(str)
Default:info

Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').