# GreenPick MCP server

> An MCP server that provides carbon, cost, and latency tradeoffs for cloud infrastructure decisions directly within your code editor.

- Repository: https://github.com/bithug01/greenpick
- Page: https://hostedmcp.org/servers/bithug01/greenpick
- Transport: stdio
- Stars: 5
- License: MIT
- Latest version: 0.8.0

## Install

### Claude Code

```sh
claude mcp add --env EIA_API_KEY=<YOUR_EIA_API_KEY> --env ELECTRICITYMAPS_TOKEN=<YOUR_ELECTRICITYMAPS_TOKEN> --env ENTSOE_TOKEN=<YOUR_ENTSOE_TOKEN> greenpick -- uvx greenpick
```

### Cursor (`~/.cursor/mcp.json`)

```json
{
  "mcpServers": {
    "greenpick": {
      "command": "uvx",
      "args": [
        "greenpick"
      ],
      "env": {
        "EIA_API_KEY": "<YOUR_EIA_API_KEY>",
        "ELECTRICITYMAPS_TOKEN": "<YOUR_ELECTRICITYMAPS_TOKEN>",
        "ENTSOE_TOKEN": "<YOUR_ENTSOE_TOKEN>"
      }
    }
  }
}
```

### VS Code (`.vscode/mcp.json`)

```json
{
  "servers": {
    "greenpick": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "greenpick"
      ],
      "env": {
        "EIA_API_KEY": "<YOUR_EIA_API_KEY>",
        "ELECTRICITYMAPS_TOKEN": "<YOUR_ELECTRICITYMAPS_TOKEN>",
        "ENTSOE_TOKEN": "<YOUR_ENTSOE_TOKEN>"
      }
    }
  }
}
```

### Claude Desktop (`claude_desktop_config.json`)

```json
{
  "mcpServers": {
    "greenpick": {
      "command": "uvx",
      "args": [
        "greenpick"
      ],
      "env": {
        "EIA_API_KEY": "<YOUR_EIA_API_KEY>",
        "ELECTRICITYMAPS_TOKEN": "<YOUR_ELECTRICITYMAPS_TOKEN>",
        "ENTSOE_TOKEN": "<YOUR_ENTSOE_TOKEN>"
      }
    }
  }
}
```

### Codex (`~/.codex/config.toml`)

```toml
[mcp_servers.greenpick]
command = "uvx"
args = ["greenpick"]

[mcp_servers.greenpick.env]
EIA_API_KEY = "<YOUR_EIA_API_KEY>"
ELECTRICITYMAPS_TOKEN = "<YOUR_ELECTRICITYMAPS_TOKEN>"
ENTSOE_TOKEN = "<YOUR_ENTSOE_TOKEN>"
```

### Gemini CLI (`~/.gemini/settings.json`)

```json
{
  "mcpServers": {
    "greenpick": {
      "command": "uvx",
      "args": [
        "greenpick"
      ],
      "env": {
        "EIA_API_KEY": "<YOUR_EIA_API_KEY>",
        "ELECTRICITYMAPS_TOKEN": "<YOUR_ELECTRICITYMAPS_TOKEN>",
        "ENTSOE_TOKEN": "<YOUR_ENTSOE_TOKEN>"
      }
    }
  }
}
```

## Environment variables

| Name | Required | Secret | Description |
|---|---|---|---|
| `EIA_API_KEY` | no | yes | Free US EIA-930 grid data API key (optional; enables live US carbon). |
| `ELECTRICITYMAPS_TOKEN` | no | yes | Electricity Maps API token (optional; used when GREENPICK_CARBON_SOURCE=electricitymaps). |
| `ENTSOE_TOKEN` | no | yes | Free EU ENTSO-E grid data token (optional; enables live EU carbon + day-ahead forecast). |
| `GREENPICK_CACHE_TTL_SECONDS` | no | no | Cache lifetime for fetched grid data, in seconds. |
| `GREENPICK_CARBON_SOURCE` | no | no | Carbon data source: 'auto' (US->EIA, EU->ENTSO-E, Canada->Hydro-Québec/IESO live), 'mock' (offline: typical monthly values from a year of real data), 'eia', 'entsoe', or 'electricitymaps'. Defaults to offline. |
| `GREENPICK_LOG_LEVEL` | no | no | Logging level (DEBUG, INFO, WARNING, ERROR). |

## Tools (20)

- `compare_regions_tri_axis`
- `greener_alternative_to`
- `region_carbon_now`
- `cleanest_hours_to_run`
- `cleanest_time_of_day`
- `greenest_regions_on_average`
- `carbon_forecast`
- `estimate_workload_carbon`
- `estimate_training_carbon`
- `estimate_inference_carbon`
- `greener_instance_family`
- `rightsizing_check`
- `serverless_check`
- `offhours_check`
- `data_locality_egress_check`
- `migration_payoff`
- `region_move_justification`
- `serving_pattern_advice`
- `carbon_metric_scaffold`
- `explain_methodology_and_limits`

## FAQ

### Does GreenPick require API keys to start?

No, it works offline or without API keys by falling back to clearly-labelled typical values based on a year of real data.

### Is GreenPick an audited carbon accounting tool?

No, it is a design-time guidance tool for developers and does not claim GHG-Protocol or ISO compliance.

### Which cloud providers are supported?

The server supports AWS, GCP, and Azure across 25 regions including the US, Europe, Canada, Asia, and Australia.
