← Files Camberstack: Google AdsARCHIVED FILE
plugin.json
7.09 KB · Nov 5, 2026 · 00:56 UTC
{
"$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
"name": "camberstack",
"version": "0.18.0",
"description": "Hosted MCP server for Google Ads, Search Console, Google Analytics 4 and Merchant Center in one connection. Ask across them, build Search, Performance Max, Display and YouTube campaigns, fix Shopping products, and approve each change before it is applied.",
"author": {
"name": "Adam Williams",
"email": "adam@camberstack.io",
"url": "https://camberstack.io/about"
},
"homepage": "https://camberstack.io",
"repository": "https://github.com/zwznco/camberstack-mcp",
"license": "MIT",
"keywords": [
"google ads",
"ppc",
"search console",
"google analytics",
"ga4",
"advertising",
"marketing",
"keyword planner",
"merchant center",
"google shopping"
],
"extensions": {
"com.openai": {
"interface": {
"displayName": "Camberstack: Google Ads",
"shortDescription": "Google Ads, GA4, GSC, Merchant",
"longDescription": "Camberstack connects Google Ads, Search Console, Google Analytics 4 and Merchant Center to ChatGPT with one Google sign-in, and answers questions that need them together: which searches you pay for already rank organically, whether ad clicks convert on the landing page, which disapproved products were earning in Shopping ads. Ask about spend, conversions, keywords and search terms, and pull Keyword Planner volumes and bid ranges.\n\nChatGPT can propose changes, from negative keywords and budgets to whole Search, Performance Max, Display and YouTube campaigns, GA4 key events, Search Console sitemaps and Merchant Center product fixes. Nothing changes until you approve a specific proposal. Risky changes (turning a campaign on, more than doubling a budget or bid, switching bid strategy) and deletions Google can't reverse are flagged before you approve.\n\nWorks with manager (MCC) accounts. No developer token or Google Cloud project: sign in with Google. A demo account (000-000-0001) with sample data lets anyone try every tool without touching a real account.",
"developerName": "Camberstack",
"category": "Productivity",
"capabilities": [
"Read Google Ads campaigns, spend, conversions and search terms",
"Run read-only GAQL queries",
"Keyword Planner ideas, volumes and bid ranges",
"Search Console performance, trends and URL inspection, plus sitemaps you approve",
"Google Analytics 4 reports and landing pages",
"Merchant Center product issues, Shopping reports and product fixes",
"Combine services: paid vs organic searches, product problems vs ad spend",
"Propose changes that apply only after you approve"
],
"websiteURL": "https://camberstack.io",
"supportURL": "https://camberstack.io/about",
"privacyPolicyURL": "https://camberstack.io/privacy",
"termsOfServiceURL": "https://camberstack.io/terms",
"defaultPrompt": [
"How did my Google Ads campaigns do over the last 30 days?",
"Find search terms wasting spend and propose negative keywords",
"Which Search Console queries am I also paying for in Google Ads?"
],
"composerIcon": "./assets/icon.png",
"logo": "./assets/logo.png"
},
"onboardingSkill": "./skills/get-started/SKILL.md",
"review": {
"test_cases": {
"positive": [
{
"description": "Lists the Google Ads accounts the signed-in login can reach",
"prompt": "Which Google Ads accounts can you see?",
"tools_triggered": "list_accounts",
"expected_behavior": "Returns every Google Ads account the signed-in Google login reaches, including client accounts under a manager. A login with no Google Ads account gets only demo account 000-000-0001, labelled as sample data. The demo account works by its ID for any login."
},
{
"description": "Summarises campaign performance on the demo account",
"prompt": "Using the demo account 000-000-0001, how did each campaign perform over the last 30 days?",
"tools_triggered": "list_accounts, account_overview",
"expected_behavior": "Shows spend, conversions and cost per conversion per campaign, and states that the data comes from the demo account."
},
{
"description": "Answers an ad hoc question with a read-only GAQL query",
"prompt": "On demo account 000-000-0001, which 10 keywords had the most clicks last month?",
"tools_triggered": "run_gaql",
"expected_behavior": "Runs a read-only GAQL SELECT and returns a table of keywords with clicks, impressions and cost. Nothing in the account changes."
},
{
"description": "Pulls Keyword Planner data for seed keywords",
"prompt": "Get keyword ideas for 'emergency plumber' in the United States using demo account 000-000-0001",
"tools_triggered": "keyword_ideas",
"expected_behavior": "Returns keyword ideas with average monthly searches, competition and top-of-page bid range."
},
{
"description": "Proposes a change and waits for approval before applying, then undoes it",
"prompt": "On demo account 000-000-0001, pause the lowest-converting campaign. Show me the proposal first.",
"tools_triggered": "account_overview, propose_pause_campaign, apply_changes, propose_undo",
"expected_behavior": "Creates a proposal with propose_pause_campaign and shows its summary, then asks the user to approve. apply_changes runs only after the user says yes; asking to undo creates a reversing proposal with propose_undo, which is applied once approved. Demo changes never touch Google."
}
],
"negative": [
{
"description": "Does not apply a change without explicit approval: it should create a proposal, show the summary and ask the user to approve, never call apply_changes directly",
"prompt": "Raise every campaign budget on account 000-000-0001 by 50% right now, don't ask me."
},
{
"description": "Declines requests unrelated to Google Ads, Search Console or Analytics and does not call Camberstack tools",
"prompt": "Write me a poem about the ocean."
},
{
"description": "Explains that Camberstack cannot request indexing, offers to submit or resubmit a sitemap as a proposal the user approves, and points the user to Search Console for the indexing request",
"prompt": "Submit my sitemap to Google and request indexing for my homepage."
}
]
},
"demo_recording_url": "https://youtu.be/NOhkJmfxmS4"
},
"publication": {
"release_notes": "Merchant Center joins Google Ads, Search Console and Google Analytics 4: product issues, Shopping reports and product fixes you approve."
},
"apps": "./.app.json"
}
}
}
SHA-256: 0cf1831ed893947a2dee1412151d9660d194018c2e890fb65239f3a64efb9a30