Skip to main content
Glama

Request a budget

request_budget
Destructive

[write · asks the person] Ask once for a budget of credits on one project, so a run's paid steps do not each wait for a yes. Ask for what the run will spend (a plan's quote) before its first paid step. A new budget replaces what is left of the last one on that project, it does not add to it, so ask again only for everything the run still has to spend. The person approves it like a paid call, and you call again with approval_id as for any approval. Once approved, calls on that project that cost credits run without asking while the budget covers them, for 12 hours. A call that deletes something still asks, and the day's limit and the balance still apply. Answers the budget, what is left, what it replaced and when it ends.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "project_id": "<project_id>",
      "credits": "<credits>"
    },
    "name": "request_budget"
  }
}

Input Schema

NameRequiredDescriptionDefault
creditsYesThe most the run may spend on this project without asking again. It replaces any budget left there.
project_idYesThe AskEditor project (from list_projects).
approval_idNoOnly when a previous call answered needs_approval: its approval_id, once the person has approved it.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations flag destructiveHint=true but the description does the real work: it explains that a new budget replaces the remaining one rather than adding, that approval follows the paid-call flow with approval_id, that coverage lasts 12 hours, and that deletes still ask and day limits/balance still apply. That is exactly the non-obvious behavior an agent cannot infer from the schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the action and tightly packed with relevant facts; the replacement rule and 12-hour caveat are stated inline. It is dense and runs long, but nearly every clause carries a constraint an agent needs, so little is wasted.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema exists, and the description compensates by stating what the answer contains: the budget, what is left, what it replaced, and when it ends. Combined with annotations and full schema coverage, nothing essential is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3, but the description adds real meaning beyond the schema: credits is framed as 'what the run will spend,' and approval_id is described as the retry token after a needs_approval response, which clarifies the call sequence rather than just the field.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Ask once for a budget of credits on one project') plus the resulting effect ('paid steps do not each wait for a yes'). This clearly separates it from siblings like wait_for_credits or ask_askeditor.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicit timing ('before its first paid step'), the amount to request ('what the run will spend (a plan's quote)'), and an exclusion ('ask again only for everything the run still has to spend' because a new budget replaces the old one). All the when/when-not guidance an agent needs is present.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources