Server data from the Official MCP Registry
Search Ads 360 — reporting via query language, insights, and offline conversion upload
Search Ads 360 — reporting via query language, insights, and offline conversion upload
Remote endpoints: streamable-http: https://{host}/sa360-mcp/mcp
Valid MCP server (2 strong, 1 medium validity signals). 1 known CVE in dependencies ⚠️ Package registry links to a different repository than scanned source. Imported from the Official MCP Registry. 1 finding(s) downgraded by scanner intelligence.
14 files analyzed · 2 issues found
Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.
Available as Local & Remote
This plugin can run on your machine or connect to a hosted endpoint. during install.
From the project's GitHub README.
Self-hostable MCP connectors for major advertising platforms.
Use this repo when you want transparent platform integrations, local experimentation, and infrastructure you control. Use Cesteral Intelligence when your team needs approvals before spend commits, credential brokering, auditability, and cross-platform execution from one governed environment.
Try Meta Ads MCP locally (~10 min) | Compare OSS vs Cesteral Intelligence | Book a workflow demo
This repo should be read as an open connector layer, not as the full product.
If you just need direct platform access, self-host a connector. If the workflow needs approvals, credential control, audit trails, or cross-platform coordination, that is the handoff point to Cesteral Intelligence.
Campaign writes, GAQL reporting, bid adjustments, previews, and validation via Google Ads REST API v23.
Package docs | Use with Cesteral Intelligence
Campaign writes, insights, targeting discovery, delivery estimates, previews, and bulk operations via Meta Marketing API v25.0.
Package docs | Use with Cesteral Intelligence
Campaign writes, targeting, custom bidding, previews, uploads, and schema-driven validation via DV360 API v4.
Package docs | Use with Cesteral Intelligence
The OSS connectors give you per-server tool execution + audit logs. Cesteral Intelligence layers governance and orchestration on top:
Compare OSS connectors vs Cesteral Intelligence
| Server | Platform | Tools | Auth |
|---|---|---|---|
| gads-mcp | Google Ads REST API v23 | 15 | OAuth2 refresh token |
| meta-mcp | Meta Marketing API v25.0 | 27 | Bearer token |
| dv360-mcp | DV360 API v4 | 26 | Google OAuth2 / service account |
| ttd-mcp | The Trade Desk REST + GraphQL API | 43 | User token (TTD-Auth header) |
| linkedin-mcp | LinkedIn Marketing API v2 | 21 | Bearer token |
| tiktok-mcp | TikTok Marketing API v1.3 | 24 | Bearer token + advertiser ID |
| cm360-mcp | CM360 API v5 | 21 | Google OAuth2 |
| sa360-mcp | SA360 Reporting API v0 + DS v2 | 16 | OAuth2 refresh token |
| pinterest-mcp | Pinterest Ads API v5 | 23 | Bearer token |
| snapchat-mcp | Snapchat Ads API v1 | 23 | Bearer token |
| amazon-dsp-mcp | Amazon DSP API | 19 | Bearer token |
| msads-mcp | Microsoft Advertising API v13 | 25 | Access token + developer token |
| dbm-mcp | Bid Manager API v2 | 6 | Google OAuth2 |
Self-hosting an AI agent that touches live ad spend is a trust problem first and a capability problem second. Two things make this fleet shippable to production without hand-rolling guardrails:
If your security review needs evidence — the redaction list, the field schema, the upstream capture path — all of it is in this repository.
For a guided walkthrough, see the 10-minute quickstart.
npm install -g pnpmgit clone https://github.com/cesteral/mcp-open-advertising.git
cd mcp-open-advertising
pnpm install
pnpm run build
# Start any server using the dev script
./scripts/dev-server.sh gads-mcp # port 3004
./scripts/dev-server.sh meta-mcp # port 3005
./scripts/dev-server.sh dv360-mcp # port 3002
# See each package README for required environment variables
{
"mcpServers": {
"cesteral-gads": {
"url": "https://gads.your-domain.com/mcp",
"apiKey": "your-gads-api-key"
},
"cesteral-meta": {
"url": "https://meta.your-domain.com/mcp",
"apiKey": "your-meta-api-key"
}
}
}
Add as many servers as you need. Each runs independently and can be deployed separately.
cd terraform
terraform init
terraform apply -var-file=dev.tfvars
See the deployment guide for production setup.
Cesteral uses a GCP-native architecture with thirteen independently deployable Cloud Run MCP services. Each server exposes the MCP protocol directly via HTTPS on Cloud Run.
Key design decisions:
mcp-open-advertising/
├── packages/
│ ├── gads-mcp/ # Google Ads
│ ├── meta-mcp/ # Meta Ads
│ ├── dv360-mcp/ # DV360
│ ├── ttd-mcp/ # The Trade Desk
│ ├── linkedin-mcp/ # LinkedIn Ads
│ ├── tiktok-mcp/ # TikTok Ads
│ ├── cm360-mcp/ # Campaign Manager 360
│ ├── sa360-mcp/ # Search Ads 360
│ ├── pinterest-mcp/ # Pinterest Ads
│ ├── snapchat-mcp/ # Snapchat Ads
│ ├── amazon-dsp-mcp/ # Amazon DSP
│ ├── msads-mcp/ # Microsoft Ads
│ ├── dbm-mcp/ # Bid Manager (reporting)
│ └── shared/ # Shared auth, telemetry, utilities
├── terraform/ # Infrastructure as Code
├── scripts/ # Deployment and dev automation
└── docs/ # Documentation and guides
# Install dependencies
pnpm install
# Build all packages
pnpm run build
# Run tests
pnpm run test
# Type checking
pnpm run typecheck
# Lint
pnpm run lint
# Use MCP Inspector
npx @modelcontextprotocol/inspector packages/gads-mcp
# Or use curl
curl -X POST http://localhost:3004/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc": "2.0", "method": "tools/list", "id": 1}'
We welcome contributions! Please see CONTRIBUTING.md for guidelines.
git checkout -b feature/your-featurepnpm run testSee also: CODE_OF_CONDUCT.md | SECURITY.md | ROADMAP.md
Be the first to review this server!
by Modelcontextprotocol · Developer Tools
Web content fetching and conversion for efficient LLM usage
by Modelcontextprotocol · Developer Tools
Read, search, and manipulate Git repositories programmatically
by Toleno · Developer Tools
Toleno Network MCP Server — Manage your Toleno mining account with Claude AI using natural language.