
gomarble-ai/google-ads-mcp-server
CommunityMCP server for Google Ads API with automatic OAuth 2.0 authentication.
Connects Google Ads API to Claude Desktop and other MCP clients. It provides automatic OAuth 2.0 authentication, token refresh, GAQL querying, and keyword research capabilities.
What it does
- Connects Google Ads API to Claude Desktop and other MCP clients.
- It provides automatic OAuth 2.0 authentication, token refresh, GAQL querying, and keyword research capabilities.
Best for
gomarble-ai/google-ads-mcp-server is a MCP server categorised under cloud service, api integration, keyword research, google ads. Connects Google Ads API to Claude Desktop and other MCP clients. It provides automatic OAuth 2.0 authentication, token refresh, GAQL querying, and keyword research capabilities.
Pick your MCP client from the Install panel on this page to get a one-click install link (Cursor, VS Code) or a ready-to-paste configuration for Claude Desktop, Claude Code, Gemini, Codex, Windsurf, and other MCP-compatible clients. No local setup required for remote servers.
gomarble-ai/google-ads-mcp-server is released under the MIT license. This is a permissive open-source license, so you can freely use, modify, and distribute it โ subject to its terms.
Reviews
Write a ReviewBe the first to leave a review after using this server in production.
README
Refreshed 4h agoGoogle Ads MCP Server ๐
A FastMCP-powered Model Context Protocol server for Google Ads API integration with automatic OAuth 2.0 authentication
Connect Google Ads API directly to Claude Desktop and other MCP clients with seamless OAuth 2.0 authentication, automatic token refresh, GAQL querying, and keyword research capabilities.
Your browser does not support the video tag.
Easy One-Click Setup
For a simpler setup experience, we offer ready-to-use installers:
๐ Download installer - https://gomarble.ai/mcp
Join our community for help and updates
๐ Slack Community - AI in Ads
Try Facebook ads mcp server also
๐ Facebook Ads MCP - Facebook Ads MCP
โจ Features
- ๐ Automatic OAuth 2.0 - One-time browser authentication with auto-refresh
- ๐ Smart Token Management - Handles expired tokens automatically
- ๐ GAQL Query Execution - Run any Google Ads Query Language queries
- ๐ข Account Management - List and manage Google Ads accounts
- ๐ Keyword Research - Generate keyword ideas with search volume data
- ๐ FastMCP Framework - Built on the modern MCP standard
- ๐ฅ๏ธ Claude Desktop Ready - Direct integration with Claude Desktop
- ๐ก๏ธ Secure Local Storage - Tokens stored locally, never exposed
๐ Available Tools
| Tool | Description | Parameters | Example Usage |
|---|---|---|---|
list_accounts | List all accessible Google Ads accounts | None | "List all my Google Ads accounts" |
run_gaql | Execute GAQL queries with custom formatting | customer_id, query, manager_id (optional) | "Show me campaign performance for account 1234567890" |
run_keyword_planner | Generate keyword ideas with metrics | customer_id, keywords, manager_id, page_url, date range options | "Generate keyword ideas for 'digital marketing'" |
Note: All tools automatically handle authentication - no token parameters required!
๐ Quick Start
Prerequisites
Before setting up the MCP server, you'll need:
- Python 3.10+ installed
- A Google Cloud Platform account
- A Google Ads account with API access
๐ง Step 1: Google Cloud Platform Setup
1.1 Create Google Cloud Project
- Go to Google Cloud Console
- Create a new project:
- Click "Select a project" โ "New Project"
- Enter project name (e.g., "Google Ads MCP")
- Click "Create"
1.2 Enable Google Ads API
- In your Google Cloud Console:
- Go to "APIs & Services" โ "Library"
- Search for "Google Ads API"
- Click on it and press "Enable"
1.3 Create OAuth 2.0 Credentials
- Go to "APIs & Services" โ "Credentials"
- Click "+ CREATE CREDENTIALS" โ "OAuth 2.0 Client ID"
- Configure consent screen (if first time):
- Click "Configure Consent Screen"
- Choose "External" (unless you have Google Workspace)
- Fill required fields:
- App name: "Google Ads MCP"
- User support email: Your email
- Developer contact: Your email
- Click "Save and Continue" through all steps
- Create OAuth Client:
- Application type: "Desktop application"
- Name: "Google Ads MCP Client"
- Click "Create"
- Download credentials:
- Click "Download JSON" button
- Save file as
client_secret_[long-string].jsonin your project directory
๐ง Step 2: Google Ads API Setup
2.1 Get Developer Token
- Sign in to Google Ads
- Go to Tools & Settings (wrench icon in top navigation)
- Under "Setup", click "API Center"
- Accept Terms of Service if prompted
- Click "Apply for token"
- Fill out application form:
- Describe your use case (e.g., "MCP integration for campaign analysis")
- Provide technical details about your implementation
- Submit and wait for approval (usually 1-3 business days)
Note: You'll initially get a test token with limited functionality. After testing, you can apply for production access.
2.2 Find Your Developer Token
Once approved:
- Return to API Center in Google Ads
- Copy your Developer Token (format:
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX)
๐ง Step 3: Installation & Setup
3.1 Clone and Install
# Clone the repository
git clone https://github.com/yourusername/google-ads-mcp-server.git
cd google-ads-mcp-server
# Create virtual environment (recommended)
python3 -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
# Install dependencies
pip install -r requirements.txt
3.2 Environment Configuration
Create a .env file in your project directory:
# Copy the example file
cp .env.example .env
Edit .env with your credentials:
# Required: Google Ads API Developer Token
GOOGLE_ADS_DEVELOPER_TOKEN=your_developer_token_here
# Required: Path to OAuth credentials JSON file (downloaded from Google Cloud)
GOOGLE_ADS_OAUTH_CONFIG_PATH=/full/path/to/your/client_secret_file.json
Example .env file:
GOOGLE_ADS_DEVELOPER_TOKEN=ABCDEFG1234567890
GOOGLE_ADS_OAUTH_CONFIG_PATH=/Users/john/google-ads-mcp/client_secret_138737274875-abc123.apps.googleusercontent.com.json
๐ฅ๏ธ Step 4: Claude Desktop Integration
4.1 Locate Claude Configuration
Find your Claude Desktop configuration file:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
Windows:
%APPDATA%\Claude\claude_desktop_config.json
4.2 Add MCP Server Configuration
Edit the configuration file and add your Google Ads MCP server:
{
"mcpServers": {
"google-ads": {
"command": "/full/path/to/your/project/.venv/bin/python",
"args": [
"/full/path/to/your/project/server.py"
]
}
}
}
Real Example:
{
"mcpServers": {
"google-ads": {
"command": "/Users/marble-dev-01/workspace/google_ads_with_fastmcp/.venv/bin/python",
"args": [
"/Users/marble-dev-01/workspace/google_ads_with_fastmcp/server.py"
]
}
}
}
Important:
- Use absolute paths for all file locations
- On Windows, use forward slashes
/or double backslashes\\in paths - Replace
your_developer_token_herewith your actual developer token
4.3 Restart Claude Desktop
Close and restart Claude Desktop to load the new configuration.
๐ Step 5: First-Time Authentication
5.1 Trigger OAuth Flow
- Open Claude Desktop
- Try any Google Ads command, for example:
"List all my Google Ads accounts"
5.2 Complete Authentication
- Browser opens automatically to Google OAuth page
- Sign in with your Google account (the one with Google Ads access)
- Grant permissions by clicking "Allow"
- Browser shows success page
- Return to Claude - your command will complete automatically!
5.3 Verify Setup
After authentication, you should see:
- A
google_ads_token.jsonfile created in your project directory - Your Google Ads accounts listed in Claude's response
๐ Usage Examples
Basic Account Operations
"List all my Google Ads accounts"
"Show me the account details and which ones have active campaigns"
Campaign Analysis
"Show me campaign performance for account 1234567890 in the last 30 days"
"Get conversion data for all campaigns in the last week"
"Which campaigns have the highest cost per conversion?"
Keyword Research
Alternatives
MCP server for the Meta Marketing API
An MCP server to automate Google Ad Manager operations using AI assistants.
This MCP server integrates with Google Drive for file management and Google Shee