
Eco Router
io.github.stevensu04Published by GitHub account stevensu04v0.1.1Updated Oct 24, 2026
Rank AWS, Google Cloud and Azure regions by grid carbon intensity and latency.
The publisher's own server: 370.ai — AI Gateway: 100+ Chat Models, Image & Speech Generation
Overview
Ranks AWS, Google Cloud and Azure regions by grid carbon intensity and estimated latency, helping an assistant pick a low-carbon region for a workload.
- What you can do
- Rank cloud regions by grid carbon intensity, optionally balanced against estimated latency from an origin, with filters for provider, country, latency and carbon limits
- Find the lowest-carbon start time in the next 72 hours for flexible batch jobs, with savings versus starting now
- List cloud regions and the electricity grid zone each one draws power from, filtered by provider or country
- When to use it
- Useful when deciding where or when to run a cloud workload and carbon footprint matters, for example choosing an EU region under a latency budget or scheduling a batch job for a cleaner grid window.
- Requirements
- Runs locally over stdio via npx, requiring Node.js 22 or later. Works with no setup using annual grid averages; hourly grid data needs an Electricity Maps API token in ELECTRICITY_MAPS_API_TOKEN with forecast access for the clean-window tool.
Installation
In SourceWeft
- Open Eco Router in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
Eco Router MCP
An MCP server that helps AI agents pick the lowest-carbon cloud region for a workload.
The same GPU job can emit several times more CO₂ depending on which grid powers the datacenter. Eco Router maps AWS, Google Cloud and Azure regions to the electricity grids they draw from, so an agent can ask:
"Where should I run this training job? Data must stay in the EU and latency should be under 150 ms."
and get back a ranked shortlist with the reasoning behind it.
Carbon figures are location-based grid averages. They describe the grid that supplies each region, not the renewable energy a provider buys, so regions in the same grid get the same value. See what the numbers represent.
Status: early release (v0.1). Corrections and feedback are welcome in issues. See Roadmap.
Install
Requires Node.js 22 or later.
Claude Code
Claude Desktop (claude_desktop_config.json)
Live grid data (optional)
Out of the box, Eco Router uses annual averages (per grid in the US, per
province in Canada, per country elsewhere), so it works with no setup. For hourly, grid-level data, set ELECTRICITY_MAPS_API_TOKEN to your
own Electricity Maps API token. Zones your
plan does not cover fall back to the annual average automatically.
Your use of live data is governed by your own Electricity Maps plan and its terms. At the time of writing, Electricity Maps offers free access for academic and personal non-commercial use, and a 14-day trial for commercial evaluation. Commercial use requires a paid license. Eco Router does not provide or share any token.
Tools
countries accepts ISO 3166-1 alpha-2 codes and the groups EU and EEA.
Example request to rank_regions:
Example request to find_clean_window for a 6-hour job that must finish within
two days:
Scoring, data sources and their limits are explained in docs/methodology.md.
How regions are mapped to grids, and which mappings rest on assumptions, is documented in docs/regions.md.
Roadmap
- MCP server skeleton over stdio
- Full AWS, Google Cloud and Azure region dataset with sources
- Carbon data: published annual averages by default, live data with an optional Electricity Maps API token
-
rank_regions: rank regions by carbon intensity and estimated latency, with hard limits such as allowed countries or a carbon ceiling - US grid-level annual data without a token (EPA eGRID)
- Canadian provincial annual data without a token (National Inventory Report)
- Grid-level annual data for Australia
- Time shifting: suggest when to run, using carbon forecasts
- Publish to npm and the MCP Registry
Development
Data sources
- Annual carbon intensity: Ember, Yearly Electricity Data, licensed under CC BY 4.0.
- US grid generation mix: US EPA eGRID (public domain), converted to lifecycle emissions with Ember's US factors.
- Canadian provincial generation mix: Environment and Climate Change Canada, National Inventory Report, Annex 7, converted to lifecycle emissions with Ember's Canadian factors. Contains information licensed under the Open Government Licence – Canada.
- Live carbon intensity (optional): Source: ElectricityMaps.com, using your own API token and subject to the terms of your plan.
- Region lists: official AWS, Google Cloud and Azure documentation. See docs/regions.md.
Contributing
Corrections to region data are especially welcome. See CONTRIBUTING.md to get started.
Credits
Eco Router started as a hackathon project. Thanks to the original team for the scoring design this project builds on: Chris (@chrislee021225), Joli (@L-Joli), Bob (@Loic0927), Irene Tsai (@YunTong09) and Steven Su (@stevensu04).
License
Source: README.md at commit 7191ccc
Tools
0Version history
2- v0.1.1LatestSep 22, 2026
- v0.1.0Sep 17, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts
Other Router integrations
370.ai — AI Gateway: 100+ Chat Models, Image & Speech Generation
ai.routerOfficial publisher
Remote AI gateway MCP server that lets an assistant call 100+ chat models, generate images, and convert text to speech through one 370.ai API key.

AI Media Router
Published by GitHub account jutsuhq
Local MCP server that generates images and videos through 40+ providers using your own API keys, with price comparison and a searchable local asset library.

Bike Router
Published by GitHub account JonasHeinickeBio
MCP bridge to a self-hosted pyBikeRouter API that plans OSM-based bike routes with weather, sights and GeoJSON/GPX exports.

Uniswap Universal Router Decoder
Published by GitHub account Elnaril
Local MCP server that decodes and encodes Uniswap Universal Router calldata for V2, V3 and V4 swaps, read-only and never signing or sending.

x402 Router
Published by GitHub account camerxnduff
Read-only MCP server that searches a probed registry of live x402 pay-per-call endpoints and routes an agent to the best-scored one.