Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Description from the maker (original English)
Greener, cheaper cloud infra decisions — carbon + cost + latency tradeoffs, in-editor.
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
GREENPICK_CARBON_SOURCE, EIA_API_KEY, ENTSOE_TOKEN, ELECTRICITYMAPS_TOKEN, GREENPICK_CACHE_TTL_SECONDS, GREENPICK_LOG_LEVELValues marked secret are keys to your account. Never share them or paste them into a chat.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"mcpServers": {
"greenpick": {
"command": "uvx",
"args": [
"greenpick"
],
"env": {
"GREENPICK_CARBON_SOURCE": "your-value",
"EIA_API_KEY": "your-value",
"ENTSOE_TOKEN": "your-value",
"ELECTRICITYMAPS_TOKEN": "your-value",
"GREENPICK_CACHE_TTL_SECONDS": "your-value",
"GREENPICK_LOG_LEVEL": "your-value"
}
}
}
}Run this in your terminal
claude mcp add greenpick --env GREENPICK_CARBON_SOURCE=your-value --env EIA_API_KEY=your-value --env ENTSOE_TOKEN=your-value --env ELECTRICITYMAPS_TOKEN=your-value --env GREENPICK_CACHE_TTL_SECONDS=your-value --env GREENPICK_LOG_LEVEL=your-value -- uvx greenpickFill in the empty values before running it.
Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"greenpick": {
"command": "uvx",
"args": [
"greenpick"
],
"env": {
"GREENPICK_CARBON_SOURCE": "your-value",
"EIA_API_KEY": "your-value",
"ENTSOE_TOKEN": "your-value",
"ELECTRICITYMAPS_TOKEN": "your-value",
"GREENPICK_CACHE_TTL_SECONDS": "your-value",
"GREENPICK_LOG_LEVEL": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"greenpick": {
"type": "stdio",
"command": "uvx",
"args": [
"greenpick"
],
"env": {
"GREENPICK_CARBON_SOURCE": "your-value",
"EIA_API_KEY": "your-value",
"ENTSOE_TOKEN": "your-value",
"ELECTRICITYMAPS_TOKEN": "your-value",
"GREENPICK_CACHE_TTL_SECONDS": "your-value",
"GREENPICK_LOG_LEVEL": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.
Your choice stays on this device in a cookie; no account needed.
GREENPICK_CARBON_SOURCE envGREENPICK_CACHE_TTL_SECONDS envGREENPICK_LOG_LEVEL envThese settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Runs on your computer; the tool list appears in your AI app after you install it.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 6, 2026
The registry name was verified with the GitHub account bithug01, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
This one runs on your computer; there is no internet endpoint
Runs on your computer and uses local settings instead
Runs on your computer; we can only read tool lists from internet endpoints
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
You need to fill in: EIA_API_KEY, ENTSOE_TOKEN, ELECTRICITYMAPS_TOKEN
It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).
The GitHub repo last changed –, and the latest version (0.6.2) reached the registry today.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Python (uv) on your computer.
In the same category: Spec Driven Development, Remote Desktop Commander, AI Deprecations
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
AI model shutdown dates, replacements, change feed and webhook alerts for 8 providers.
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
GreenPick
Write greener, cheaper cloud infrastructure — before you deploy.
A design-time sustainability co-pilot that runs as an MCP server inside your vibe-coding environment (Cursor / Claude Code / Kiro). Ask it where to deploy, when to run a job, or how to right-size — and it answers with an honest carbon + cost + latency tradeoff, in-editor, in seconds. (It responds when you ask; auto-nudging on infra-code changes is on the roadmap.)
Status: working — 19 tools. Live carbon for US (EIA-930), EU (ENTSO-E) and Canada (Hydro-Québec,
IESO — no key needed), cross-cloud cost
parity (Vantage-refreshed), per-axis R/Y/G ratings, carbon-aware scheduling + day-ahead forecast,
GPU-training and LLM-inference carbon, right-sizing, serving-pattern and data-locality/residency
checks — all shipped. Offline or without API keys, falls back to clearly-labelled *typical* values:
this month's average for each grid, from a year of real data.
*The same 40-GPU-hour training run emits ~0.6 kg CO₂ in Stockholm vs ~17.5 kg in Sydney — a ~28× difference from region choice alone (typical October grids; Sydney on Ember's 2025 national figure, a lower bound for its coal-heavier state grid). Ask GreenPick and it surfaces that (with the cost and latency tradeoff) while you're still in the editor, before you commit.*
▶ [See the 5-minute demo](docs/demo.md) — three scenarios with real tool output (training placement, the egress backfire, the forecast).
The same web service emits very different CO₂ depending on which region it runs in, because electricity grids differ in carbon intensity. Existing tools either rank regions in the abstract, or measure carbon *after* you deploy. GreenPick does it at the moment you choose, and tells you what the greener choice *costs you* in latency and dollars — so you can accept or reject it with eyes open.
The combination — cross-cloud, carbon + cost + latency, at design time, in the editor, with backfire guards — is the part nothing else puts together.
Roadmap: data-format/engine efficiency advice, sub-national grid zones, CI/CD integration. See docs/user-questions-backlog.md.
19 tools, grouped by what you're trying to do.
| Tool | What it does |
|---|---|
compare_regions_tri_axis | Rank candidate regions by carbon with cost + latency tradeoffs; recommend a pick, each axis rated R/Y/G. Pass regions to rank only the ones you'd actually consider. |
greener_alternative_to | "You picked X — the greenest region within +N ms latency is Y (−Z% carbon, Δcost)." The core nudge. |
region_carbon_now | Current gCO₂/kWh for a region, with source + timestamp + freshness — and, when live, whether that's cleaner, dirtier or about usual for that hour this month. |
| Tool | What it does |
|---|---|
cleanest_hours_to_run | Cleanest recent hours to time a deferrable job (ETL, backups, training), + % reduction. Pass window_hours for a job of known duration → cleanest contiguous window to start at. |
cleanest_time_of_day | For a recurring job (nightly batch): the region's cleanest time of day, averaged across recent days. A daily pattern, not a 7-day weekly one. |
greenest_regions_on_average | Which regions are cleanest on a typical day in a given month (or the whole year), ranked from last year's real data. Offline, no keys; a planning view, not today's grid. |
carbon_forecast | Forward-looking: which upcoming hours will be cleanest, from the EU day-ahead wind+solar forecast (ENTSO-E). Relative ranking; US/uncovered zones degrade to the recent historical pattern. |
| Tool | What it does |
|---|---|
estimate_workload_carbon | Rough kgCO₂/month for a workload in a region (an *estimate*, not a measurement). |
estimate_training_carbon | Carbon of a GPU training run (TDP-based energy × live grid), with greener where (region ranking) + when (cleanest hours) — the two levers that compound for portable, deferrable training. |
estimate_inference_carbon | Energy + CO₂ of an LLM inference workload, by model size class × output tokens × requests (× live grid). A low–high band; smaller size class is the big lever. Self-hosted-friendly; not a named-model leaderboard. |
| Tool | What it does |
|---|---|
greener_instance_family | A greener same-size family in the same region via perf-per-watt (newer generation / ARM Graviton-class does the same work on less energy). |
rightsizing_check | Right-sizing (the #1 FinOps win) with a carbon twin: if you're over-provisioned, a smaller size cuts both cost and carbon → the right-sized target with monthly $ and kg CO₂ saving. |
offhours_check | For dev/test/staging that doesn't need to run 24/7: the monthly $ and kg CO2 saved by running it only N hours a week. Compute only, directional. |
data_locality_egress_check | Warn when running compute away from where your data lives backfires: directional egress $ + coarse transfer carbon, and whether a greener-region move is still a net win. |
migration_payoff | Does moving the data to the compute's region pay off? Payback in months, one-off vs monthly egress and transfer carbon, net over 12 months. Egress only. |
region_move_justification | A short paste-ready paragraph for a pull request or decision record, with the carbon, cost, latency and egress numbers and their quality labels. Says so if the move is not an improvement. |
serving_pattern_advice | For a user-facing platform: serve from one region or several? Traffic-weighted latency + carbon, with the multi-region data-sync egress and cross-jurisdiction residency catches. |
| Tool | What it does |
|---|---|
carbon_metric_scaffold | Emits paste-in instrumentation (Python) so your app reports its own estimated carbon over time — observable proxies × GreenPick's power model × live grid. Self-tracking, directional; not a runtime meter. |
explain_methodology_and_limits | The assumptions and what GreenPick explicitly does not claim. |
cleanest_hours_to_run from recent hourly history.data/typical.json, refreshed by scripts/refresh_typical.py). Labelled quality: "typical" — a realistic norm, never presented as a current reading.data/annual.json). Labelled quality: "annual_average"; fine for comparing regions, but carries no timing signal.Only the beginning is shown; read the rest in the repo