Skip to main content
Glama

Google Ads budget allocation plan

google_ads_budget_plan
Read-only

Use this when the user asks how to split or move budget between Google Ads campaigns. Returns a proposed new daily budget per enabled campaign, based on cost per conversion, impression share lost to budget and current budget usage. Read-only: it only proposes; applying a budget is done with google_ads_update_budget after the user confirms. The result is also displayed as a visual card. Default period: last 30 days.

Input Schema

NameRequiredDescriptionDefault
detailNosummary (default): headline numbers and the top 5 rows — right for a specific question or a quick look. full: every row and section — only when the user asks for a full report, a complete list or all the details.
folderNoClient folder name. Use instead of account to cover every Google Ads account in that client's folder.
accountNoGoogle Ads customer ID (e.g. 123-456-7890) or part of the account name. Optional when only one account is available.
end_dateNoCustom end date YYYY-MM-DD.
languageNoLanguage of the card: the language the user is writing in (ar for any Arabic dialect).
date_rangeNoPreset period. Default LAST_30_DAYS.
start_dateNoCustom start date YYYY-MM-DD (use with end_date instead of date_range).
total_daily_budgetNoOptional new total daily budget to distribute (account currency). Default: keep the current total.

Schema Changelog

Changes observed during successful MCP inspections.

No schema history has been recorded yet.

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, and the description reinforces this with 'only proposes' plus the two-step confirm-then-apply workflow, which is real added context. It also discloses the optimization basis and that output is rendered as a visual card, though it says nothing about behavior on thin-data campaigns, disabled campaigns, or the default when total_daily_budget is omitted beyond the schema text.

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?

Four short sentences, front-loaded with the trigger condition, then output, then safety/workflow, then rendering/defaults. No filler, though the visual-card sentence and the closing default-period sentence sit slightly awkwardly after the workflow guidance.

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

Completeness4/5

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

With 8 optional parameters, no required fields and no output schema, the description does the important work: it explains the returned proposal at a conceptual level and the propose-vs-apply boundary. It stops short of enumerating the returned fields or how the proposal behaves when only one campaign is eligible, which an agent may need for narration.

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

Parameters3/5

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

Schema description coverage is 100%, including the enum guidance for detail and the default for date_range, so the schema already carries parameter meaning. The only description-level addition is the restated default period (last 30 days), which duplicates LAST_30_DAYS in the schema rather than clarifying the semantics of total_daily_budget redistribution.

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?

The description opens with a concrete routing condition ('user asks how to split or move budget between Google Ads campaigns') and states exactly what is produced: a proposed new daily budget per enabled campaign, derived from cost per conversion, impression share lost to budget and current budget usage. It also names the sibling that performs the write (google_ads_update_budget), so an agent can distinguish proposal from execution without opening a schema.

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?

It gives an explicit when-to-use trigger and an explicit handoff path: call this to propose, then call google_ads_update_budget only after user confirmation. The gap is that it does not distinguish itself from the other budget siblings in the toolset (budget_pacing_plan, budgets_at_risk, budget_status), so an agent facing 'how is my budget doing?' must guess between them.

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