>_

SpendSignoff documentation

The always-on operator for your ad accounts. Read and draft from your AI client — approve before anything goes live.

Start here

Get started

SpendSignoff adds an always-on operator to the AI client you already use. It connects over OAuth, starts read-only, and stages every spend-affecting change as a draft you approve. You are live in three steps.

Your AI can read and draft — it can never spend without your approval.
1

Connect your AI client

Add the SpendSignoff MCP server to Claude, ChatGPT, or Cursor. It connects over OAuth 2.1 and requests two scopes only: mcp.read and mcp.draft. There is no mcp.approve scope — approval never leaves the SpendSignoff app.

Settings → Developer → Edit Config, paste the block, then restart Claude.

claude_desktop_config.json

{
  "mcpServers": {
    "spendsignoff": {
      "url": "https://mcp.spendsignoff.com/mcp"
    }
  }
}
2

Link an ad account — read now

OAuth into Google Ads or Meta. The first authorization is read-only: SpendSignoff reads spend, structure, and performance so the operator can find money. Nothing is changed yet.

  • Reads are ungated — you can see what the operator would do on any plan, including Free.
  • Linking grants read access to your ad account. It does not grant the ability to spend — that is gated behind your explicit approval, not an OAuth scope.
3

Ship your first approval

The operator drafts a change — say, reallocating a stalled budget — and shows the before → after diff with projected impact. You review it in the approval queue and run the two-step Approve & push live → Confirm control. Only then does it touch the live account, with a full audit entry and one-click rollback.

Drafts are inert until you approve

A draft is a proposal, not a pending action. Nothing in a draft reaches your ad account until you confirm it. On Free, the approve control is replaced by the locked upgrade card — never a fake or disabled button.

What the operator can do today

V1 is propose-only. The loop drafts; you approve.

  • Read campaigns, ad sets, budgets, bids, and performance across linked Google Ads and Meta accounts.
  • Draft budget reallocations, bid changes, and pacing fixes as reviewable diffs via propose_change.
  • Never apply a change on its own. There is no auto-pilot in V1 — every live change is one you approved.

Next

Concepts

Drafts, the approval queue, the autonomy loop, the 24h envelope, and rollback.

    Get started — SpendSignoff Docs · SpendSignoff