
Green Mcp
io.github.rlawogh1005Published by GitHub account rlawogh1005v0.1.2Updated Oct 27, 2026
Measure a program's CPU energy and LLM tokens, then refactor it cheaper. Measure, never estimate.
Overview
Local MCP server that measures a program's CPU energy use and LLM token consumption, compares runs statistically, and helps refactor code to be cheaper.
- What you can do
- Measure CPU energy of a command from hardware telemetry (AMD uProf, Linux RAPL, macOS powermetrics)
- Compare energy between two runs with a statistical test
- Measure LLM token usage of a program through a counting proxy
- Compare token usage between runs
- Verify that a refactored program still behaves the same
- Report which energy backend is available on the host
- When to use it
- Useful when you want an assistant to quantify the energy or token cost of a command or script, check whether a refactor actually made it cheaper, or confirm behavior is preserved after optimization. Best suited to local development machines with a reachable power sensor.
- Requirements
- Runs as a local stdio subprocess launched by the IDE; Python 3.10+ and the green-mcp package (pipx or pip). Energy measurement needs a power-sensor backend: AMD uProf on Windows+AMD, /sys/class/powercap on Linux, or powermetrics with root or passwordless sudo on macOS. Token measurement requires the target program to read its LLM endpoint from an environment variable such as ANTHROPIC_BASE_URL or OPENAI_BASE_URL, plus network access to the provider. The optional bundled agent needs Anthropic…
Installation
In SourceWeft
- Open Green Mcp 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
Green Agent
A pluggable MCP server that measures two efficiency axes of a program and refactors it to be cheaper while preserving behavior:
- CPU energy — joules the code actually consumes, from real hardware telemetry (AMD uProf / Linux RAPL / macOS powermetrics), chosen automatically for the host.
- LLM tokens — the token usage of a program that calls LLMs (input/output/cache/reasoning), measured provider-neutrally and non-blockingly.
Defining principle: measure, never estimate. Every claim is a measurement with the command, the number, and its run-to-run uncertainty — or it's labeled an estimate. The comparison verdict is a real statistical test (Welch's t with the idle-baseline uncertainty folded in), not a heuristic.
Quick start
Mount it in your IDE (configs in deploy/):
Then ask your agent to measure or compare energy/tokens of a command. See
deploy/README.md for the full mount + harness guide.
Tools
measure_energy · compare_energy · measure_tokens · compare_tokens ·
verify_equivalence · energy_backend_info
Requirements (what each part needs to actually work)
No server to host. green-mcp is not a web service — your IDE launches it as a local stdio subprocess. There's no cloud, no account, and no LLM key needed for the measurement server itself.
Energy axis — needs a power-sensor backend on the host (the largest prerequisite):
- Windows + AMD → install AMD uProf separately (driver-based; admin to install). Not bundled.
- Linux → reads
/sys/class/powercap(RAPL); no extra install, butenergy_ujis root-only on some distros. - macOS → uses the built-in
powermetrics, which requires root / passwordless sudo. - No reachable sensor (a VM, a container, a locked-down machine) → energy tools report
energy_available: falseand refuse to estimate. Energy generally does NOT work in Docker/CI — containers and VMs have no power-sensor passthrough. Use the token axis there. - The measured command runs locally (arbitrary commands → use in a trusted environment only).
Token axis — no special hardware, works anywhere, but:
- The target program must read its LLM endpoint from an env var (
ANTHROPIC_BASE_URL,OPENAI_BASE_URL, …) so we can route it through the counting proxy. A hardcoded endpoint won't be measured (reports 0 calls). - Measuring runs the target's real LLM calls — the proxy forwards to the real provider, so the target's API key is billed as usual, and network access to the provider is required.
Bundled agent (optional) — pip install green-mcp[agent] adds the Claude Agent SDK and needs
Anthropic credentials. The MCP server alone needs none.
Honest scope
- Energy is CPU package energy (+DRAM on RAPL) — not carbon, not whole-system.
- Numbers from different backends are not comparable.
- Only the AMD/uProf backend is validated for repeatability on real hardware; Linux/macOS are
written and unit-tested but unverified on metal, and no backend is yet cross-validated against a
wall power meter. The token measurer is validated against a live provider (NVIDIA NIM,
OpenAI-compatible: 5 real calls, streaming and non-streaming, matching the provider's own usage
records exactly) — but the Anthropic-shaped
usagepath and rate-limit behavior are still only exercised against a local fake upstream. These gaps are tracked, not hidden.
Development
Architecture and decisions live in North Star.md, Green.md,
and docs/. Licensed under MIT.
Source: README.md at commit 7049f98
Tools
0Version history
1- v0.1.2LatestSep 16, 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