feat: add marketing tools registry for agent discovery
Create centralized tools/ directory with REGISTRY.md index and 29 integration guides covering analytics, SEO, CRM, payments, referral, email, ads, automation, and commerce platforms. Each guide includes API endpoints, authentication, common operations, and links to relevant skills. Updated AGENTS.md and key skills (referral-program, analytics-tracking, email-sequence, paid-ads) with tool integration references. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
159
tools/integrations/google-ads.md
Normal file
159
tools/integrations/google-ads.md
Normal file
@@ -0,0 +1,159 @@
|
||||
# Google Ads
|
||||
|
||||
Pay-per-click advertising platform for search, display, and video campaigns.
|
||||
|
||||
## Capabilities
|
||||
|
||||
| Integration | Available | Notes |
|
||||
|-------------|-----------|-------|
|
||||
| API | ✓ | Google Ads API for campaign management |
|
||||
| MCP | ✓ | Available via Google Ads MCP server |
|
||||
| CLI | - | Use gcloud or API scripts |
|
||||
| SDK | ✓ | Client libraries for multiple languages |
|
||||
|
||||
## Authentication
|
||||
|
||||
- **Type**: OAuth 2.0
|
||||
- **Scopes**: `https://www.googleapis.com/auth/adwords`
|
||||
- **Setup**: Create credentials in Google Cloud Console, link to Google Ads account
|
||||
- **Headers**: `developer-token`, `login-customer-id` (for MCC)
|
||||
|
||||
## Common Agent Operations
|
||||
|
||||
### Get account info
|
||||
|
||||
```bash
|
||||
POST https://googleads.googleapis.com/v14/customers/{customer_id}/googleAds:searchStream
|
||||
|
||||
{
|
||||
"query": "SELECT customer.id, customer.descriptive_name FROM customer"
|
||||
}
|
||||
```
|
||||
|
||||
### List campaigns
|
||||
|
||||
```bash
|
||||
POST https://googleads.googleapis.com/v14/customers/{customer_id}/googleAds:searchStream
|
||||
|
||||
{
|
||||
"query": "SELECT campaign.id, campaign.name, campaign.status, campaign_budget.amount_micros FROM campaign ORDER BY campaign.id"
|
||||
}
|
||||
```
|
||||
|
||||
### Get campaign performance
|
||||
|
||||
```bash
|
||||
POST https://googleads.googleapis.com/v14/customers/{customer_id}/googleAds:searchStream
|
||||
|
||||
{
|
||||
"query": "SELECT campaign.name, metrics.impressions, metrics.clicks, metrics.cost_micros, metrics.conversions FROM campaign WHERE segments.date DURING LAST_30_DAYS"
|
||||
}
|
||||
```
|
||||
|
||||
### Get ad group performance
|
||||
|
||||
```bash
|
||||
POST https://googleads.googleapis.com/v14/customers/{customer_id}/googleAds:searchStream
|
||||
|
||||
{
|
||||
"query": "SELECT ad_group.name, metrics.impressions, metrics.clicks, metrics.conversions FROM ad_group WHERE segments.date DURING LAST_7_DAYS"
|
||||
}
|
||||
```
|
||||
|
||||
### Get keyword performance
|
||||
|
||||
```bash
|
||||
POST https://googleads.googleapis.com/v14/customers/{customer_id}/googleAds:searchStream
|
||||
|
||||
{
|
||||
"query": "SELECT ad_group_criterion.keyword.text, metrics.impressions, metrics.clicks, metrics.average_cpc FROM keyword_view WHERE segments.date DURING LAST_30_DAYS ORDER BY metrics.clicks DESC LIMIT 50"
|
||||
}
|
||||
```
|
||||
|
||||
### Pause campaign
|
||||
|
||||
```bash
|
||||
POST https://googleads.googleapis.com/v14/customers/{customer_id}/campaigns:mutate
|
||||
|
||||
{
|
||||
"operations": [{
|
||||
"update": {
|
||||
"resourceName": "customers/{customer_id}/campaigns/{campaign_id}",
|
||||
"status": "PAUSED"
|
||||
},
|
||||
"updateMask": "status"
|
||||
}]
|
||||
}
|
||||
```
|
||||
|
||||
### Update budget
|
||||
|
||||
```bash
|
||||
POST https://googleads.googleapis.com/v14/customers/{customer_id}/campaignBudgets:mutate
|
||||
|
||||
{
|
||||
"operations": [{
|
||||
"update": {
|
||||
"resourceName": "customers/{customer_id}/campaignBudgets/{budget_id}",
|
||||
"amountMicros": "50000000"
|
||||
},
|
||||
"updateMask": "amountMicros"
|
||||
}]
|
||||
}
|
||||
```
|
||||
|
||||
## Key Metrics
|
||||
|
||||
| Metric | Description |
|
||||
|--------|-------------|
|
||||
| `metrics.impressions` | Ad impressions |
|
||||
| `metrics.clicks` | Clicks |
|
||||
| `metrics.cost_micros` | Cost in micros (divide by 1M) |
|
||||
| `metrics.conversions` | Conversions |
|
||||
| `metrics.conversions_value` | Conversion value |
|
||||
| `metrics.average_cpc` | Average cost per click |
|
||||
| `metrics.ctr` | Click-through rate |
|
||||
| `metrics.conversion_rate` | Conversion rate |
|
||||
|
||||
## Campaign Types
|
||||
|
||||
- `SEARCH` - Search network text ads
|
||||
- `DISPLAY` - Display network
|
||||
- `SHOPPING` - Product shopping ads
|
||||
- `VIDEO` - YouTube video ads
|
||||
- `PERFORMANCE_MAX` - AI-optimized across channels
|
||||
- `DEMAND_GEN` - Discovery/Demand Gen
|
||||
|
||||
## GAQL (Google Ads Query Language)
|
||||
|
||||
```sql
|
||||
SELECT
|
||||
campaign.name,
|
||||
metrics.clicks,
|
||||
metrics.conversions
|
||||
FROM campaign
|
||||
WHERE
|
||||
campaign.status = 'ENABLED'
|
||||
AND segments.date DURING LAST_30_DAYS
|
||||
ORDER BY metrics.conversions DESC
|
||||
LIMIT 10
|
||||
```
|
||||
|
||||
## When to Use
|
||||
|
||||
- Managing search advertising campaigns
|
||||
- Analyzing campaign performance
|
||||
- Adjusting budgets and bids
|
||||
- Keyword research and management
|
||||
- Conversion tracking analysis
|
||||
|
||||
## Rate Limits
|
||||
|
||||
- 15,000 operations per day (basic)
|
||||
- Higher limits with developer token levels
|
||||
|
||||
## Relevant Skills
|
||||
|
||||
- paid-ads
|
||||
- analytics-tracking
|
||||
- page-cro
|
||||
Reference in New Issue
Block a user