MCP Ads
Gerencie Google Ads, Meta Ads, TikTok, LinkedIn e Microsoft Ads, além de GA4, Search Console e Tag Manager pelo Claude ou ChatGPT: relatórios de desempenho, auditorias e edições de campanhas (novas campanhas começam pausadas). Código aberto (MIT) ou hospedado com OAuth.
Servidor MCP hospedado
npx add-mcp 'https://mcp-ads.com/mcp-slim'Instala no Claude Code, Codex, Cursor e outros
Documentação
MCP Ads: servidor MCP do Google Ads + servidor MCP do Meta Ads
MCP Ads, o servidor MCP de anúncios por Roy Azran. Hospedado em mcp-ads.com, código aberto aqui.
Site · Documentação · Preços · Listagem no Registro MCP (com.mcp-ads/mcp-ads)
Servidor MCP de código aberto (MIT) para Google Ads, Meta Ads (Facebook e Instagram), GA4, Search Console, Tag Manager, TikTok, LinkedIn, Microsoft Ads e mais. Funciona com Claude, Claude Code, ChatGPT, Cursor, Codex, Gemini CLI, Grok ou qualquer cliente MCP. Leia desempenho, audite gastos desperdiçados, crie relatórios e crie ou altere campanhas. Tudo o que ele cria começa pausado até que você diga o contrário.
3.363 ações registradas em 21 famílias de ferramentas na versão hospedada (setembro de 2026), expostas por meio de um dispatcher por família, para que seu agente carregue cerca de duas dúzias de definições de ferramentas em vez de milhares. Este repositório inclui 18 dessas famílias; veja Categorias de ferramentas.
Como ele se compara
Fatos de setembro de 2026, retirados das páginas públicas de cada produto. Planos e cobertura mudam, então verifique o site deles antes de decidir.
| Google Ads MCP do Google | Ads MCP da Meta | Pipeboard | Adspirer | MCP Ads | |
|---|---|---|---|---|---|
| Plataformas | Google Ads | Meta Ads | Meta, Google, TikTok, LinkedIn, Microsoft, Pinterest, Snap, Reddit, além de GA4 e Search Console | Google, Meta, LinkedIn, TikTok, Amazon, ChatGPT Ads | Google, Meta, TikTok, LinkedIn, Microsoft, Snapchat, X, ChatGPT Ads, além de GA4, Search Console, Tag Manager, Merchant Center, WordPress |
| O que faz | Relatórios e diagnósticos (somente leitura) | Relatórios e gerenciamento de campanhas | Servidor MCP de anúncios nas plataformas listadas | Serviço de agente hospedado que executa tarefas de anúncios | Leitura e escrita: 755 ações do Google Ads, 230 ações do Meta Ads |
| Hospedagem | Autohospedado, com seu próprio token de desenvolvedor | Hospedado pela Meta | Hospedado; servidor Meta de código aberto também disponível | Hospedado | Hospedado ou autohospedado (este repositório, MIT) |
| Preços | Software gratuito; você fornece o acesso à API | Verifique o site da Meta | Nível gratuito; planos pagos por número de slots de contas de anúncios | Preço por tarefa com um pequeno nível gratuito | US$ 49/mês fixo, teste gratuito de 3 dias (veja preços); autohospedagem é gratuita |
Use o servidor do Google ou da Meta se você precisar de apenas uma plataforma e quiser o código do próprio fornecedor. Use este se quiser um único servidor entre plataformas, acesso de escrita ao Google Ads ou a opção de executar tudo você mesmo.
Escolha seu caminho
☁️ Nuvem — conectado em 2 minutos
Vá para mcp-ads.com, entre, faça OAuth das suas contas de anúncios no navegador e cole uma URL no Claude. Pronto.
- Sem solicitações de API, sem tokens de desenvolvedor, sem revisões de aplicativos — as aprovações das plataformas (token de desenvolvedor do Google Ads, App Review da Meta e as demais) já estão em vigor
- US$ 49/mês fixo para todas as plataformas, com teste gratuito de 3 dias (veja preços para a oferta atual)
- Suas credenciais armazenadas criptografadas; revogue a qualquer momento pelo painel
Esta é a escolha certa para quase todos que querem usar as ferramentas em vez de hospedá-las.
🔧 Autohospedado — gratuito para sempre, suas chaves, sua máquina
Clone este repositório e execute-o com suas próprias credenciais de plataforma. Licença MIT, sem amarras, sem telemetria. Seus tokens nunca saem da sua máquina.
O custo honesto: várias das plataformas de anúncios exigem que você solicite acesso à API (veja a tabela abaixo). Se você já tem essas credenciais — você é uma agência com token de desenvolvedor do Google Ads, um desenvolvedor com um aplicativo revisado da Meta — a autohospedagem leva minutos. Se não, reserve dias a semanas para as filas de aprovação das próprias plataformas, ou use a nuvem.
Mesmo código de qualquer forma. O produto hospedado é este servidor mais autenticação multiusuário, as aprovações já feitas e três famílias que ainda não estão neste repositório (Merchant Center, X Ads, Bing Webmaster Tools).
Conecte-se ao seu cliente de IA
O endpoint hospedado é o mesmo para todos os clientes:
https://mcp-ads.com/mcp-slim
O login é OAuth no navegador no primeiro uso; não há chave de API para colar. Para um servidor autohospedado, use a configuração stdio em Início rápido autohospedado em vez disso; a nota sob cada cliente indica onde ela vai.
Claude.ai e Claude Desktop. Configurações → Conectores → Adicionar conector personalizado,
cole a URL acima e aprove a janela de login.
(Guia)
Autohospedado: o Claude Desktop aceita o bloco command/args em
claude_desktop_config.json.
Claude Code.
claude mcp add --transport http mcp-ads https://mcp-ads.com/mcp-slim
A primeira chamada de ferramenta abre o login no navegador. (Guia)
Autohospedado: claude mcp add mcp-ads -- python /absolute/path/to/mcp-ads/server.py,
ou o mesmo bloco em .mcp.json.
ChatGPT. Conectores personalizados exigem o modo Desenvolvedor:
- Configurações → Plugins → Procurar plugins e ative o modo Desenvolvedor (uma vez).
- Configurações → Conectores → Adicionar conector personalizado. Nomeie-o como "MCP Ads" e cole a URL acima.
- Entre com a identidade do Google que tem acesso às suas contas de anúncios.
- Em um novo chat, abra o menu de ferramentas e ative o conector. O ChatGPT mantém os conectores desativados por chat por padrão.
Cursor. Adicione isto a ~/.cursor/mcp.json (ou .cursor/mcp.json em um
projeto) e reinicie o Cursor:
{
"mcpServers": {
"mcp-ads": {
"url": "https://mcp-ads.com/mcp-slim"
}
}
}
(Guia) Autohospedado: o mesmo arquivo aceita o
bloco command/args em vez de url.
Codex. Adicione [mcp_servers.mcp-ads] com url = "https://mcp-ads.com/mcp-slim"
a ~/.codex/config.toml. (Guia)
Gemini CLI. Adicione uma entrada mcp-ads com a URL a ~/.gemini/settings.json
e execute /mcp para verificar. (Guia)
Grok. Em grok.com: + → Conectores → Novo conector → Personalizado, cole a URL e conclua o login. (Guia)
Início rápido autohospedado
git clone https://github.com/RoyAzran/mcp-ads.git
cd mcp-ads
pip install -r requirements.txt
cp .env.example .env # fill in the platforms you use
python server.py doctor # shows what's connected
Depois adicione ao Claude Desktop (claude_desktop_config.json) ou ao
Claude Code (.mcp.json):
{
"mcpServers": {
"mcp-ads": {
"command": "python",
"args": ["/absolute/path/to/mcp-ads/server.py"]
}
}
}
Essa é a instalação completa. Peça ao seu agente "audite meu gasto desperdiçado no Google Ads" e veja-o agir.
Docker em vez disso:
cp .env.example .env
docker compose up -d # HTTP server on 127.0.0.1:8000, MCP endpoint at /mcp
Modo HTTP sem Docker: python server.py serve --transport http
Auxiliar OAuth para as plataformas com token bearer (abre um navegador, armazena e atualiza automaticamente o token):
python server.py auth snapchat_ads
O que funciona de fábrica, honestamente
Autohospedar significa ter suas próprias chaves para cada plataforma. Algumas as entregam em minutos; outras exigem solicitação. Este é o quadro real:
| Plataforma | Ações | O que você precisa | Esforço realista |
|---|---|---|---|
| GA4 | 95 | Cliente OAuth do Google + token de atualização | Minutos–horas |
| Search Console | 22 | Mesmo token do Google | Minutos |
| Tag Manager | 64 | Mesmo token do Google | Minutos |
| WordPress | 1.843 | URL do site + senha de aplicativo | Minutos |
| Google Ads | 755 | O acima mais um token de desenvolvedor (o Google analisa a solicitação) | 1–3 semanas |
| Meta Ads | 230 | Um aplicativo Meta; ads_management/ads_read exigem App Review (funciona para os próprios administradores/testadores do aplicativo antes da aprovação) | Dias para você, semanas para App Review |
| Snapchat Ads | 12 | Aplicativo OAuth autoatendido no Business Manager | Horas |
| Microsoft Ads | 11 | Aplicativo OAuth Entra + token de desenvolvedor (sandbox instantâneo, produção revisada) | Horas–dias |
| TikTok Ads | 35 | Revisão do aplicativo Business API | Semanas |
| LinkedIn Ads | 26 | Aprovação da Marketing Developer Platform — rotineiramente recusada a pessoas físicas | Frequentemente inacessível |
| Meta Ad Library | 7 | Token de uma identidade verificada por Meta-ID | Dias |
| Ads Transparency | 7 | Nada — mas leia a nota abaixo | Desativado por padrão |
| Geração criativa | 7 | Sua chave de API da OpenAI | Minutos |
Se essa tabela o cansa, é exatamente para isso que a versão em nuvem serve — as aprovações já estão feitas, você apenas conecta suas contas.
Categorias de ferramentas
Um dispatcher por família. As contagens são ações registradas na versão hospedada (setembro de 2026); cada dispatcher vincula à sua página de referência da API.
| Dispatcher | Ações | Exemplos de ações |
|---|---|---|
google_ads_action | 755 | google_ads_search_terms, google_ads_add_negative_keywords, google_ads_update_campaign_budget |
meta_ads_action | 230 | meta_ads_campaign_performance, meta_ads_frequency, meta_ads_update_adset_budget |
ga4_action | 95 | ga4_landing_pages, ga4_diagnose_missing_conversions, ga4_run_custom_report |
gsc_action | 22 | gsc_top_keywords, gsc_inspect_url, gsc_submit_sitemap |
gtm_action | 64 | gtm_audit_container, gtm_setup_google_ads_conversion, gtm_publish_workspace_now |
tiktok_ads_action | 35 | tiktok_ads_campaign_report, tiktok_ads_create_adgroup, tiktok_ads_upload_video |
linkedin_ads_action | 26 | linkedin_ads_campaign_report, linkedin_ads_find_targeting_entities, linkedin_ads_update_campaign |
microsoft_ads_action | 11 | microsoft_ads_campaign_performance, microsoft_ads_list_keywords, microsoft_ads_update_campaign_budget |
snapchat_ads_action | 12 | snapchat_ads_campaign_report, snapchat_ads_create_campaign, snapchat_ads_update_campaign_status |
openai_ads_action (ChatGPT Ads) | 15 | openai_ads_ad_insights, openai_ads_create_campaign, openai_ads_set_ad_status |
organic_social_action | 32 | meta_pages_create_post, linkedin_organic_create_post, tiktok_organic_publish_video |
meta_ad_library_action | 7 | meta_ad_library_search_ads, meta_ad_library_advertiser_ads, meta_ad_library_creative_angles |
google_ads_transparency_action | 7 | google_ads_transparency_find_advertiser, google_ads_transparency_advertiser_ads, google_ads_transparency_creative_mix |
creative_action | 7 | creative_generate_ad_images, creative_start_image_generation, creative_get_image_generation_result |
reports_action | 8 | report_monthly_executive, report_paid_search_full, report_new_client_audit |
agency_action | 20 | agency_wasted_spend_report, agency_budget_pacing_all_channels, agency_cross_platform_overview |
wordpress_action | 1.843 | a11y_audit_page, cf7_list_forms, backup_updraft_run |
misc_action | 8 | competitor_ads_gallery, media_upload_start, creative_show_images |
merchant_action (somente hospedado) | 123 | merchant_list_products, merchant_product_status_summary, merchant_account_issues |
x_ads_action (somente hospedado) | 23 | x_ads_account_stats, x_ads_create_campaign, x_ads_campaign_reach |
bing_webmaster_action (somente hospedado) | 20 | bing_webmaster_top_queries, bing_webmaster_crawl_issues, bing_webmaster_submit_url |
Total: 3.363. Uma compilação autohospedada registra as mesmas famílias, exceto as três
marcadas como somente hospedado; social orgânico tem 12 ações aqui em vez de 32, e
algumas outras contagens diferem por alguns números conforme ações são adicionadas ou ocultadas.
list_actions sempre informa o que sua compilação realmente tem.
Como funciona a superfície de ferramentas
Seu agente vê um dispatcher por plataforma mais list_actions:
1. list_actions(category="meta_ads_action", search="budget")
2. meta_ads_action(action="<name from step 1>", params={...})
- Ações de escrita criam tudo pausado a menos que explicitamente instruídas a lançar (veja Modelo de segurança)
--surface fullregistra cada ação como sua própria ferramenta MCP — útil para clientes programáticos, ferramentas demais para um cliente de chat
Exemplos de prompts
- "Quais termos de pesquisa gastaram mais de US$ 50 sem conversões no mês passado? Adicione os dez piores como negativas de correspondência exata."
- "Pause conjuntos de anúncios com frequência acima de 3 na minha conta Meta principal."
- "Compare o CPA do Meta e do Google na semana passada com as conversões do GA4."
- "Quais páginas de destino recebem tráfego pago, mas convertem abaixo da média do site?"
- "Crie uma campanha de Search pausada para 'encanador de emergência' com três grupos de anúncios e um orçamento diário de US$ 50."
- "O que meus concorrentes estão veiculando no Facebook e no Instagram agora?"
- "Verifique meu contêiner GTM para tags pausadas ou não utilizadas."
- "Escreva o relatório executivo deste mês em Google Ads, Meta e GA4."
A CLI NPX
Sem Python na máquina do cliente? A CLI é um proxy stdio de ~300 linhas
(cli/) que encaminha para qualquer servidor MCP Ads:
# against your self-hosted server
MCP_ADS_BASE_URL=http://127.0.0.1:8000 npx -y @marketingmcp/cli
# against the cloud (API key from mcp-ads.com/manage)
MCP_ADS_API_KEY=mcp_live_xxx npx -y @marketingmcp/cli
Uma nota sobre o Google Ads Transparency
tools/google_ads_transparency.py lê o Centro de Transparência de Anúncios público do Google chamando os endpoints que o próprio site utiliza. O Google não documenta nenhuma API para esses dados; os endpoints podem mudar ou começar a recusar sem aviso, e o acesso automatizado a eles não é algo que o Google tenha abençoado. A família está desativada por padrão — defina GOOGLE_ADS_TRANSPARENCY_ENABLED=true somente depois de ler o docstring desse módulo. As ferramentas da Meta Ad Library usam a API oficial da Meta e não têm essa ressalva.
Modelo de segurança
- Aprovação antes de gravações. Cada dispatcher carrega anotações de ferramentas MCP: uma família com qualquer ação de gravação é marcada como
readOnlyHint: false,destructiveHint: true. A verificação falha de forma segura, então ações de gravação ocultas também contam, e a geração de imagens paga nunca é marcada como somente leitura. Clientes como Claude e ChatGPT usam essas dicas para perguntar a você antes da chamada ser executada. As instruções do próprio servidor também dizem ao modelo para declarar uma gravação claramente e obter confirmação antes de tocar em gastos ao vivo ou conteúdo público. - Criado pausado. A criação de campanha, conjunto de anúncios, grupo de anúncios e anúncio tem como padrão
PAUSEDno Google Ads e na Meta. Nada começa a gastar até que você peça para ser ativado. - Controle de função de leitura/gravação.
permissions.pylista as ferramentas de gravação emWRITE_TOOLS, e uma heurística de nomes falha de forma segura para verbos de gravação ausentes dessa lista. Ferramentas de gravação chamamrequire_editor(), que recusa a funçãoviewer; somenteeditoreadminpodem gravar. No serviço hospedado, um assento de visualizador recebe essa recusa. - Executando somente leitura quando auto-hospedado. Ainda não há um interruptor de configuração. A versão auto-hospedada tem um usuário,
SelfHostPrincipalemcredentials_env.py, cuja função éadmin. Altere esserolepara"viewer"e toda ferramenta de gravação recusa. Para uma segunda camada, use credenciais somente leitura onde a plataforma as oferece: um token da Meta com apenasads_read, e os escopos somente leitura do GA4 e do Search Console (analytics.readonly,webmasters.readonly). A API do Google Ads não tem escopo somente leitura, então para o Google Ads a mudança de função é o controle.
Postura de segurança
- As credenciais vêm do seu
.enve de um armazenamento local opcional criptografado com Fernet (MCP_ADS_SECRET_KEY). Nada envia dados para casa: a telemetria é totalmente opcional e desativada, a menos que você configure seu próprio projeto de análise. - O modo HTTP não é autenticado por design (é você, no loopback). O servidor recusa vincular uma interface pública a menos que você defina
MCP_ADS_ALLOW_PUBLIC_BIND=true, porque ele contém credenciais que podem gastar dinheiro real. - A CI executa uma verificação de limite (
tests/test_no_private_imports.py) que falha em qualquer coisa com formato de segredo entrando na árvore.
Veja SECURITY.md para relatar problemas.
Contribuindo
Issues e PRs são bem-vindos — veja CONTRIBUTING.md. Os scripts de verificação em scripts/ são o padrão de revisão: cada um fixa uma falha que realmente aconteceu em produção, e python scripts/check_tools_execute.py antes de um PR pega a maior parte do que a revisão pegaria.
Uma coisa com a qual não podemos ajudar: obter acesso à API da plataforma. Essas filas de aprovação pertencem ao Google, Meta, LinkedIn, TikTok e Microsoft.
FAQ
Existe um servidor MCP do Google Ads que pode fazer alterações? Sim, este. O servidor MCP oficial do Google Ads é somente leitura (relatórios e diagnósticos). O MCP Ads tem 755 ações do Google Ads, incluindo criar campanhas, grupos de anúncios, palavras-chave e anúncios de pesquisa responsivos, adicionar negativas e alterar orçamentos e lances. Novas campanhas são criadas pausadas.
Funciona com o ChatGPT?
Sim. Adicione-o como um conector personalizado no modo Desenvolvedor com a URL https://mcp-ads.com/mcp-slim; os passos estão em Conecte-se ao seu cliente de IA e no guia do ChatGPT.
Preciso de um token de desenvolvedor? Não para a versão hospedada: o token de desenvolvedor do Google Ads e as outras aprovações de plataforma já estão em vigor, e você só faz login. Para o Google Ads auto-hospedado, sim: você precisa do seu próprio token de desenvolvedor da API do Google Ads, e o Google analisa a aplicação (veja O que funciona pronto para uso).
Licença
MIT.