# Run Budget Guard > A hard spending cap for one AI agent run, shared by every sub-agent. Your agent checks before each model or tool call and gets a clear STOP when the run hits its dollar, token, call or time limit. Free 500 checks a day, then $9 a month. ## Connect - MCP (streamable HTTP): https://budget.botrecipe.com/mcp - Claude Code: `claude mcp add --transport http run-budget-guard https://budget.botrecipe.com/mcp` - REST: `POST https://budget.botrecipe.com/api/run/` with JSON args. OpenAPI: https://budget.botrecipe.com/openapi.json - Auth: optional `Authorization: Bearer `. Free key: `POST https://budget.botrecipe.com/api/key` ## Pricing - Free: 500 calls/day (daily, not a trial). No signup. - Pro: $9/month, 50000 calls/day: https://pay.instaloops.com/b/8x2fZh0Ped799P94Kr83C3w - Bring your own model. Works with Claude, Codex, ChatGPT, Grok Bot. ## Tools ### open_budget Open a hard budget for one agent run before it starts: max dollars, tokens, calls and/or wall-clock seconds. Returns a handle. Give the handle to every sub-agent; they all draw from the same ledger, so one runaway loop or fork cannot exceed the run cap. Inputs: `label` (string), `max_usd` (number), `max_tokens` (integer), `max_calls` (integer), `max_seconds` (integer), `ttl_hours` (integer) ### reserve Call BEFORE each model call, tool call or sub-agent spawn with your estimate. Returns allowed=true and deducts it, or allowed=false with the limit that tripped. When allowed is false, stop, do not retry, and return your partial result to the user. Atomic, so parallel sub-agents cannot both slip under the cap. Inputs: `handle` (string, required), `usd` (number), `tokens` (integer), `calls` (integer), `note` (string) ### record After a call, report the actual usage minus what you reserved (positive if it cost more, negative to give back an overestimate). Keeps the ledger honest without blocking. Inputs: `handle` (string, required), `usd` (number), `tokens` (integer), `note` (string) ### budget_status See spend vs limits, remaining budget, whether the run is stopped and why, and the last 20 ledger events. Set close=true when the run finishes. Inputs: `handle` (string, required), `close` (boolean) ### usage_and_upgrade Usage today + upgrade link (not metered). ## Example result `open_budget({"max_usd":"2.00"})` → Budget open: $2. Call reserve with this handle before every model or tool call, and pass it to sub-agents. ## FAQ ### What problem does this solve? Agent loops and sub-agent forks can burn millions of tokens in one run before anyone notices. Provider caps are monthly or org-wide, and SDKs report usage after the run. Run Budget Guard gives one run a hard cap that every sub-agent shares, checked before each call. ### How does my agent use it? Call open_budget at the start with max_usd, max_tokens, max_calls and/or max_seconds. Before every model call, tool call or sub-agent spawn, call reserve with your estimate. If allowed is false, stop and return the partial result. Optionally call record with the actual usage to keep the ledger exact. ### Does it work across sub-agents running in parallel? Yes. Pass the handle to each sub-agent. Every reserve is an atomic check-and-deduct on one ledger row, so eight parallel calls against a cap of five calls allow exactly five. ### Who estimates the cost? Your agent does. Run Budget Guard does not see your prompts or proxy your model traffic; it only counts the numbers you send. Use your provider's published prices for the estimate and record to correct it. ### What happens when a limit trips? The run is marked stopped with the reason (max_usd, max_tokens, max_calls, max_seconds) and every later reserve returns allowed=false, so a looping agent cannot creep past the cap. Open a new budget to continue. ### What does it cost? Free: 500 checks a day, 10 open runs, handles last 24 hours. Pro is $9 a month: 50,000 checks a day, 200 open runs, handles last up to 7 days. You get your Pro key on screen right after paying. Publisher: Supa Humans (https://supahumans.ai). Marketplace: https://botrecipe.com/tools/ ## Machine files - https://budget.botrecipe.com/ - https://budget.botrecipe.com/index.md - https://budget.botrecipe.com/llms.txt - https://budget.botrecipe.com/llms-full.txt - https://budget.botrecipe.com/SKILL.md - https://budget.botrecipe.com/openapi.json - https://budget.botrecipe.com/tool.json - https://budget.botrecipe.com/.well-known/mcp.json