Skip to main content
Generated from the server’s own tool registry, as released on 2026-11-05. Every section lists what the tool needs, whether it waits for a yes, how it completes, each action’s inputs, valid example calls, and the errors it can return. Before you call a tool, fetch its live schema with help_describe; if the server and this page disagree, the server wins. Reads your campaign structure; creates paused campaigns, ad sets, and ads; updates or pauses them; builds audiences and lookalikes; and keeps an audit log of every write. Good to know:
  • Every write is two-phase: params.mode: "preview" returns a diff and a confirm_token that lasts 10 minutes; repeat the call with params.mode: "confirm" and the token.
  • Budgets are in minor units of the ad account’s currency: daily_budget: 1000 is 10.00. Google Ads budgets use micros: 1000000 is 1.00.
  • guardrails reads the brand’s spend caps for any Viewer; setting them (mode: "set") needs an Admin or Owner.
  • Campaigns, ad sets, ads, and copies are created paused. Activating one, raising a budget past the brand’s limit (by default, more than 30%), or any write on a brand with an approval chain returns APPROVAL_REQUIRED until an Admin or Owner calls mcp_approval_grant.
  • batch previews many writes under one token.
  • Each write receipt includes undo: the call that reverses it, or null with the reason it can’t be undone.
  • google_ads runs one Google Ads operation (update_campaign_budget, set_status, create_campaign, create_ad_group, or add_keywords) with the same preview and confirm steps, and needs the brand’s Google connection. ENABLED needs an Admin or Owner.
  • Boosting organic posts isn’t supported.
Actions (action): Examples (IDs are illustrative; use the ones earlier calls return): List campaigns:
Preview a campaign:
Cut an ad set to ages 18–55:
Restructure in one confirmation:
Audit log:
Confirm the previewed campaign with its token, after the person says yes:
Errors and statuses: Related: analytics_query, account_map, mcp_approval_grant, mcp_approvals_list, help_describe. Full schema: help_describe {"tool":"paid_manage","action":"hierarchy"}. As JSON: /mcp/schemas/paid_manage.json. Your brand’s campaign naming convention. Inputs: Examples (IDs are illustrative; use the ones earlier calls return): The Meta naming convention:
Errors and statuses: Related: analytics_creative_insights, analytics_query. Full schema: help_describe {"tool":"paid_naming_schema_get"}. As JSON: /mcp/schemas/paid_naming_schema_get.json.

optimizer_query

Portfolios, pending recommendations, performance, and the optimization log. Actions (action): Examples (IDs are illustrative; use the ones earlier calls return): A portfolio’s pending recommendations:
Errors and statuses: Related: help_describe, optimizer_manage. Full schema: help_describe {"tool":"optimizer_query","action":"portfolios"}. As JSON: /mcp/schemas/optimizer_query.json.

optimizer_manage

Approves or rejects recommendations and manages portfolios. Actions (action): Examples (IDs are illustrative; use the ones earlier calls return): Approve one recommendation (the approval is the yes):
Errors and statuses: Related: help_describe, mcp_approval_grant, optimizer_query, paid_manage. Full schema: help_describe {"tool":"optimizer_manage","action":"create_portfolio"}. As JSON: /mcp/schemas/optimizer_manage.json.

What’s next

All tools

Every tool on one page, and the machine-readable index.

Account, brand, and jobs

Lists the brands you can access, and more.

Analytics, trends, and competitors

Organic, paid, and website results by platform: accounts, top posts, campaigns, ad sets, and ads, and more.

Organic+ planning and publishing

Reads and proposes a week of posts, approves it, reschedules and copies posts, and attaches media, and more.