Inspiration
Carbon-aware schedulers already move jobs into cleaner hours, but they decide silently. The constraints that actually matter: this backup stays in Frankfurt, that training must finish by 8 AM and live in people's heads and never reach the scheduler. WebMCP made it possible to turn that into a conversation.
What it does
Shows your workloads on a timeline against the grid carbon forecast. You state a goal, the agent plans against it. When the goal is impossible, GreenWindow names the colliding constraints and offers the smallest trade that unlocks most of the benefit: shift one deadline by 45 minutes, get 38% of the reduction, keep region and cost untouched. You accept or reject each trade. Anything you lock stays locked. The output is a carbon execution contract: what was preserved, what was relaxed, and the resulting savings.
How we built it
TypeScript, React, Vite, static, no backend --> WebMCP tools run in the user's own browser session. The planner is a constraint solver over discrete time slots optimizing carbon and cost. Infeasibility explanations come from tracking which constraint killed which window, so the solver can name culprits instead of returning "no solution". Carbon and price forecasts are a bundled 24-hour dataset, so the demo needs no API key.
Challenges we ran into
The first version let the agent apply schedules directly. It produced better plans that no operator would ever run, because it had no idea which constraints were negotiable. Rebuilding around locks and single-constraint trades was the turning point. Explaining infeasibility properly meant instrumenting the solver, not bolting on a message afterwards.
Accomplishments that we're proud of
The infeasibility explanation: it tells you exactly why your goals don't fit and what the cheapest way out is. And the demo is honest: state really changes, plans recompute live, and the savings come from the same solver that produced the schedule.
What we learned
WebMCP is strongest when tools aren't remote controls for existing buttons. The useful ones here have no button at all: test a hypothetical constraint set, find the minimum relaxation. Those are questions, not clicks.
What's next for GreenWindow
Export contracts in a form the Carbon Aware SDK and Kubernetes schedulers can consume. Real grid forecast APIs with fallback. Multi-region contention when two teams want the same clean window. A review mode, so contracts can be approved by someone other than the negotiator.
Built With
- browser-agents
- carbon-aware-computing
- chatgpt
- cloud
- constraint-solver
- css3
- devops
- finops
- green-software
- html5
- javascript
- kubernetes
- model-context-protocol
- openai
- optimization
- react
- scheduling
- sustainability
- typescript
- vercel
- vite
- webmcp
Log in or sign up for Devpost to join the conversation.