Skip to main content
Glama

Propose a budget change

automate_propose_budget

Create a pending daily-budget change for a selected Google/Meta campaign. Take campaign_id and the account id from the *_get_campaigns rows. Capped at 20% of current daily budget. Does not mutate until automate_confirm_action with confirm=true.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameNo
scopeNo
titleNo
actionNo
metricNo
reasonNo
confirmNo
date_toNo
dry_runNo
rule_idNo
user_idNo
operatorNo
platformNo
action_idNo
client_idNo
conditionNo
date_fromNo
is_activeNo
min_spendNo
thresholdNo
to_amountNo
user_emailNo
campaign_idNo
report_typeNo
confirm_liveNo
range_presetNo
lookback_daysNo
cooldown_hoursNo
roas_thresholdNo
consecutive_daysNo
google_customer_idNo
meta_ad_account_idNo
max_actions_per_dayNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.6/5.0
Behavior4/5

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

Adds real behavior beyond annotations: the 20% cap on the daily budget and the deferred-mutation semantics (nothing changes until confirm=true). Annotations already flag readOnly=false/destructive=false, but the cap and staging behavior are meaningful extras not derivable from structured fields.

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

Conciseness5/5

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

Four tight sentences, front-loaded with the action, then param sourcing, then the cap, then the confirmation gate. Every sentence adds a distinct constraint with no filler.

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

Completeness2/5

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

For a 33-parameter tool with zero schema descriptions, the description covers only the core happy-path params and ignores the bulk of the schema. Output schema exists so return values need no explanation, but the parameter ambiguity is a major gap that the description does not close.

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

Parameters2/5

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

Schema description coverage is 0% across 33 parameters, so the description carries the full burden, yet it only names campaign_id and 'the account id'. The many other params (action, metric, threshold, rule_id, dry_run, etc.) are left entirely undefined, leaving an agent unable to tell which matter for a budget change.

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

Purpose4/5

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

States a specific verb and resource: 'Create a pending daily-budget change for a selected Google/Meta campaign.' The 'budget' resource naturally separates it from the sibling automate_propose_pause, though it never names that sibling explicitly.

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

Usage Guidelines4/5

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

Gives clear context: source campaign_id and the account id from the *_get_campaigns rows, and routes the follow-up step to automate_confirm_action with confirm=true. No explicit when-not-to-use or exclusion, but the workflow positioning is clear.

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.