Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
git clone --depth 1 https://github.com/getnable/finopsmcpWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/commands/getnable/finopsmcp/guard)<a href="https://agentmods.dev/commands/getnable/finopsmcp/guard"><img src="https://agentmods.dev/badge/commands/getnable/finopsmcp/guard/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/commands/getnable/finopsmcp/guard"><img src="https://agentmods.dev/badge/commands/getnable/finopsmcp/guard.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00019 | $0.00604 |
| Opus 5.5 | $0.00008 | $0.00242 |
| Sonnet 5.5 | $0.00004 | $0.00121 |
| Haiku 4.5 | $0.00002 | $0.00060 |
Grade A, and why
guard scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 18d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
What it actually says
You are helping the user see and control the nable guard: the hook this plugin adds, which prices what Claude is about to run (terraform destroy, kubectl delete, aws ec2 run-instances, the same changes through a Terraform, AWS or Kubernetes MCP tool) and asks before a costly launch or a destroy. Be concise and concrete. No em dashes.
The request is: $ARGUMENTS (empty means status).
-
Find the CLI. Use
nableifcommand -v nablefinds it. Otherwise useuvx --python 3.12 --from finops-mcp finopsin its place in every command below. -
Status (no argument, or "status"): run
nable guard status. Report in two or three lines:- Whether the guard is on. "plugin on (via the Claude Code plugin)" means this plugin's hook is checking commands. "standing aside wherever the settings hook above judges" means a hook from
nable guard installchecks the calls it sees and the plugin's hook checks the rest, so each command is judged exactly once. - Whether it is off ("The guard is off"), and how to turn it back on.
- Anything flagged in amber, with the fix the output gives.
Then run
nable guard report --days 7and give one line: how many commands it asked about or blocked this week, and the dollars in play. If the ledger is empty, say the guard has not had to step in yet.
- Whether the guard is on. "plugin on (via the Claude Code plugin)" means this plugin's hook is checking commands. "standing aside wherever the settings hook above judges" means a hook from
-
Off ("off"): the user asked for this by running this command. Run
nable guard off. If the guard asks them to confirm first, that is expected: turning the guard off is a change a human approves. Then tell them:- The hook stays installed and lets every command through, unchecked and unrecorded, until
nable guard on. - Claude Code cannot switch off one plugin's hooks, which is why this is a nable setting. To remove the guard completely:
/plugin disable nable@nableor/plugin uninstall nable@nable.
- The hook stays installed and lets every command through, unchecked and unrecorded, until
-
On ("on"): run
nable guard onand confirm the guard checks commands again. If the output says FINOPS_GUARD=off is set, tell them to remove it from the environment Claude Code starts in.
What the guard records: every verdict it makes (the command in a redacted summary, the decision, the priced monthly cost) goes to a local, hash-chained ledger, ~/.finops/guard-ledger.jsonl. Nothing leaves the machine. nable guard report summarises it and nable guard verify-log checks nothing was edited.
Never turn the guard off unless the user asked for it in this command.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 18d ago First seen · 27 lines · 19 tokens per session scan A 04e6f6dc0287
guard is a command published in the GitHub repository getnable/finopsmcp (19 stars, last pushed 12d ago), licensed Apache-2.0. It adds 19 tokens to every session and 604 once invoked, about $0.0001 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-28.
Other commands, from other repositories
bulk
Batch API processing with 50% cost savings.
scan
Scan AWS account for cost optimization.
costguard-live
Plan and ingest an opt-in, consent-gated live billing check for a provider, conducted via the playwriter MCP server (read-only browser reads over your logged-in session). costguard never drives the browser itself.
archive-ledger
../../../shared/commands/archive-ledger.md.
checklist
Generate a custom checklist for the current feature based on user requirements.
clarify
Identify underspecified areas in the current feature spec by asking up to 5 highly targeted clarification questions and encoding answers back into the spec.