google_ ads_ upload_ customer_ match
Add or remove Customer Match members on a CONTACT_INFO user list of the selected customer, through one OfflineUserDataJob (create, add operations, run).
View as MarkdownAdd or remove Customer Match members on a CONTACT_INFO user list of the selected customer, through one OfflineUserDataJob (create, add operations, run). Emails and international phones are normalized and SHA-256 hashed by the server as Google documents; the preview and the answer carry counts, never the values. Google processes the job asynchronously: read offline_user_data_job.status, then user_list.size_range_for_search, with google_ads_run_gaql. Google requires the account's Customer Match terms and policy eligibility, and since 1 April 2026 refuses this API for developer tokens without earlier Customer Match uploads (Data Manager API instead). Preview returns planHash; confirm requires the matching expectedPlanHash. No automatic retry.
- Source
- Google Ads
- Kind
- Write
- Discovery
- Reachable through
search_toolsandrun_tool - Account parameter
customerId- Endpoint
- https:/
/ mcp. getmcpads. com/ google-ads/ mcp
Parameters
| Name | Type | Required | Notes |
|---|---|---|---|
customerId | string | Required | Selected Google Ads customer ID, not the manager account. |
currency | string | Required | Actual account currency as a three-letter ISO code; verified natively before writes. |
loginCustomerId | string | Optional | Optional MCC ID; defaults to the selected account's inferred manager. |
testAccountOnly | boolean | Optional | Require customer.test_account=true before writing. |
confirm | boolean | Optional | Apply only when true and expectedPlanHash matches the exact preview. |
expectedPlanHash | string | Optional | SHA-256 planHash from the preview of this exact request, required for application. |
userListId | string | Required | Numeric ID of a CONTACT_INFO Customer Match list owned by this customer. |
operation | string | Optional | add uploads members; remove takes them off the list. One of: add, remove. Default: "add". |
members | array | Required | People who agreed to it: an email and/or an international phone each. The server normalizes and hashes them with SHA-256; raw values are never sent to Google, returned or logged. |
consent | object | Required | Consent of the uploaded people, required by Google for EEA users. DENIED means Google does not use them. |
Calling it
{
"name": "run_tool",
"arguments": {
"name": "google_ads_upload_customer_match",
"args": {
"customerId": "<string>",
"currency": "<string>",
"userListId": "<string>",
"members": "<array>",
"consent": "<object>"
}
}
}Manage your ads from your AI assistant
Free with 1 ad account, no card. Pro is free for 7 days.