Skip to main content
Glama

Create a Microsoft Advertising shared budget

msads_create_shared_budget
Idempotent

Create a shared daily budget that several campaigns can draw on. Creating it spends nothing: it only matters once a campaign is linked to it with msads_set_campaign_budget_link. Names must be unique in the account. An amount above 50 per day needs allowLargeChange. Use dryRun to review.

Input Schema

NameRequiredDescriptionDefault
nameYesBudget name, up to 255 characters, unique in the account.
dryRunNoPreview only. Microsoft has no validate-only mode, so Caybl reads the current value and shows exactly what would change (before and after) without sending anything. Free, and cannot affect spend.
accountIdNoMicrosoft Advertising account id or account number (e.g. 'F123ABCD'), as listed by msads_list_accounts. Only needed when the sign-in can reach more than one account.
dailyAmountYesDaily amount in the account currency.
allowLargeChangeNoA change that more than doubles the current value is refused unless this is true. Set it only when the increase is deliberate and the user has confirmed it.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.1/5.0
Behavior4/5

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

Annotations only give a coarse safety profile (not read-only, non-destructive, idempotent), and the description adds genuinely new behavior: creation has no spend impact, names must be unique per account, and amounts above 50/day require allowLargeChange. The uniqueness rule also usefully explains why repeated identical calls will fail rather than duplicate. Missing: what the tool returns (a budget id?) and whether linking can be undone.

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?

Five short sentences: purpose first, then the no-spend guarantee, the linking dependency, the uniqueness constraint, and the two conditional flags. No filler and the most decision-relevant facts are front-loaded.

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?

There is no output schema, so an agent does not learn what comes back from a successful create (presumably an id needed for msads_set_campaign_budget_link) — a modest gap for a create tool. Otherwise the definition covers the mutation's effects, prerequisites, validation thresholds, and the dryRun escape hatch, which is complete relative to the available annotations.

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 the baseline is 3, but the description adds meaning the schema does not carry: the concrete '>50 per day needs allowLargeChange' rule for the creation case, whereas the schema only frames allowLargeChange as a relative doubling check against a current value. It also signals dryRun as a review mechanism. Two parameters (accountId, name) get no extra description beyond schema.

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 shared daily budget that several campaigns can draw on.' That distinguishes it from campaign-level budget tools by the word 'shared', and it names the follow-up tool msads_set_campaign_budget_link. It never explicitly contrasts itself with msads_create_campaign or msads_set_shared_budget_amount, so sibling differentiation is only implied.

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 real usage context: creating the budget spends nothing, it only takes effect once linked via msads_set_campaign_budget_link, and dryRun should be used to review first. That is a clear when-to-use and a prerequisite. It stops short of saying when an agent should prefer a non-shared budget or how it relates to msads_set_shared_budget_amount.

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