Google Ads MCP Server

Google Ads MCP Server

A free MCP server that brings Google Ads API into Claude Code, translating natural language queries into GAQL or mutation operations, with safety guardrails and change history for undo.

Category
访问服务器

README

google-ads-mcp

Собствен MCP сървър към Google Ads API. Дава ти Google Ads директно в терминала през Claude Code: питаш на човешки език, а сървърът превежда въпроса в GAQL заявка или в mutate операция срещу реалния акаунт.

Заменя платените wrapper-и, които таксуват на „connected account". Тук цената е нула - Google Ads API е безплатен, а един MCC покрива всичките си дъщерни акаунти.

Node, нула зависимости освен MCP SDK-то. Използва вградения fetch и REST-а на Google Ads API, без protobuf библиотеката.

Инсталация: виж SETUP.md. Там е целият процес от нула - Node, developer token, Google Cloud, OAuth, вързване към Claude Code и проверка, че работи.


Инструменти (18)

Четене

Инструмент За какво
list_accounts Цялото дърво под MCC-то. Оттук вадиш customerId.
run_gaql Произволна GAQL заявка. Основният read инструмент.
run_gaql_multi До 20 заявки паралелно, може срещу различни акаунти.
describe_fields Метаданни за GAQL полета - вместо да гадаеш имена.
account_overview Готов одит на акаунт с едно извикване.
change_history Историята от Google, включително ръчните промени в UI-я.

Писане

Инструмент За какво
mutate Сурови операции, всякакъв ресурс. По подразбиране validateOnly.
set_status Bulk pause/enable/remove на кампании, ad groups, реклами, думи.
set_campaign_budget Дневен бюджет, с проверка за споделен бюджет.
set_bid CPC бидове, bulk.
add_keywords Позитивни думи в ad group.
add_negative_keywords Негативни думи на ниво кампания или ad group.
create_responsive_search_ad RSA, по подразбиране PAUSED.

Контрол

Инструмент За какво
list_changes Локалният change log, с ID за връщане назад.
undo_change Връща промяна назад от снимката ѝ.
get_guardrails / set_guardrails Предпазните правила.
check_connection Диагностика.

Безопасност

Всяко писане минава през src/apply.js: guardrails → снимка на старите стойности → mutate → запис в change log.

Guardrails (~/.google-ads-mcp/guardrails.json):

{
  "readOnlyAccounts": [],
  "blockedAccounts": [],
  "writeAllowlist": [],
  "maxBudgetIncreasePct": 50,
  "maxDailyBudget": null,
  "requireConfirmForRemove": true,
  "maxOperationsPerCall": 500
}

writeAllowlist е най-силният предпазител: ако не е празен, писане е позволено само в изброените акаунти. Сложи един тестов акаунт, докато свикнеш, и всички останали са защитени.

Undo (~/.google-ads-mcp/changes.jsonl) - преди всеки update се снима старата стойност на полетата от updateMask, за да може undo_change да я върне.

Две честни ограничения:

  • REMOVE е необратим. Google Ads API няма un-remove. Затова set_status с REMOVED иска confirm: true, а по подразбиране се препоръчва PAUSED.
  • Полета, които не са четими през GAQL, не могат да се снимат. Тогава промяната се записва в лога, но list_changes я маркира undoable: false.

Поддръжка

Версия на API-то. По подразбиране v24. Google мина на месечен цикъл през 2026. Всяка версия живее около година. Смяната е един ред в ~/.google-ads.env:

GOOGLE_ADS_API_VERSION=v25

Тест след промени:

npm test        # MCP handshake, схеми, guardrails - не пипа мрежата
npm run doctor  # реална връзка към Google

Файлове

google-ads-mcp/
  SETUP.md              инсталация от нула
  src/index.js          MCP сървър, регистрация на инструментите
  src/config.js         зареждане на ~/.google-ads.env
  src/auth.js           OAuth refresh + кеш на access token
  src/client.js         REST слой (searchStream, mutate, грешки)
  src/apply.js          guardrails → снимка → mutate → лог
  src/guardrails.js     предпазни правила
  src/changelog.js      change log и undo
  src/tools/            read.js · write.js · ops.js
  bin/oauth.js          еднократен OAuth flow
  bin/doctor.js         диагностика от терминала
  test/smoke.mjs        offline тест

~/.google-ads.env       креденшъли (chmod 600)
~/.google-ads-mcp/      guardrails.json · changes.jsonl

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选