Date: 2026-04-15
Moved the google-ads-daily-negatives scheduled task off the Adspirer MCP (500 ops/day, 300 ops/hour cap) and onto direct Google Ads API calls via google-ads-python. Same credentials that power the local google-ads-mcp repo.
Cleanup volume for SAIL - Car Accidents 2026 alone is 3,000+ ops (2,239 remaining removes + 251 adds). At Adspirer's rate cap that is 5-7 days of drain-the-queue. At the native API rate cap it is a single session.
google-ads-python — credentials at /mnt/Projects/_repo-staging/claude-ads/.env and /mnt/Projects/_repo-staging/shared-infrastructure/.env.credentialsgoogle-ads-mcp server at /mnt/Projects/_repo-staging/google-ads-mcp/8676599345)3813916687).env.credentialsclaude-ads/.envCONTINUATION_STATE.md updated in the audit folder with a ready-to-run google-ads-python snippet for bulk CampaignCriterionService.mutate_campaign_criteria operations.google-ads-daily-negatives will use the direct-API path and should drain the remaining 2,239 removes + 251 adds in one pass.