Update a contact
contacts_updateUpdate an existing Google contact by replacing specific fields like emails, phones, or name. Read the contact first with contacts_get to send complete field lists and prevent accidental data loss.
Instructions
Change an existing contact. ⚠️ Each field you name is REPLACED, not merged: passing "emails" with one address removes every other address that contact had. Fields you do not name are left alone. Read the contact first with contacts_get and send back the full list of whichever field you are editing. The current version is re-read before writing, so a change made elsewhere in the meantime cannot be silently overwritten.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"account": "<account>",
"resource_name": "<resource_name>"
},
"name": "contacts_update"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| notes | No | Free-text note stored on the contact. | |
| emails | No | Email addresses, in full. On update this REPLACES the existing list. | |
| phones | No | Phone numbers, in full. On update this REPLACES the existing list. | |
| account | Yes | Configured account: the email address, or the alias given at setup. | |
| job_title | No | Role within that organisation. | |
| given_name | No | First name. | |
| family_name | No | Surname. | |
| organization | No | Company or organisation. | |
| resource_name | Yes | Contact id as returned by contacts_search or contacts_list, e.g. "people/c123456". |