Google Contacts Skill
Manage Google Contacts - create, list, and search contacts.
Tool: google_contacts
Consolidated Google Contacts tool with operation parameter.
Operations
| Operation | Description | Required Fields |
|---|---|---|
create | Create a new contact | first_name |
list | List contacts | (none) |
search | Search contacts by query | query |
get | Get contact details | resource_name |
update | Update existing contact | resource_name |
delete | Delete a contact | resource_name |
create - Create a new contact
| Field | Type | Required | Description |
|---|---|---|---|
| operation | string | Yes | Must be "create" |
| first_name | string | Yes | Contact's first name |
| last_name | string | No | Contact's last name |
| string | No | Email address | |
| phone | string | No | Phone number |
| company | string | No | Company/organization name |
| job_title | string | No | Job title |
| notes | string | No | Notes about contact |
Example - Basic contact:
json{ "operation": "create", "first_name": "John", "last_name": "Smith", "email": "john.smith@example.com", "phone": "+1-555-123-4567" }
Example - Full contact:
json{ "operation": "create", "first_name": "Jane", "last_name": "Doe", "email": "jane.doe@company.com", "phone": "+1-555-987-6543", "company": "Acme Corporation", "job_title": "Senior Engineer", "notes": "Met at tech conference 2024" }
list - List contacts
| Field | Type | Required | Description |
|---|---|---|---|
| operation | string | Yes | Must be "list" |
| page_size | integer | No | Results per page (default: 20, max: 100) |
| page_token | string | No | Token for next page |
| sort_order | string | No | LAST_MODIFIED_ASCENDING, LAST_MODIFIED_DESCENDING, FIRST_NAME_ASCENDING, LAST_NAME_ASCENDING |
Example:
json{ "operation": "list", "page_size": 50, "sort_order": "FIRST_NAME_ASCENDING" }
search - Search contacts
| Field | Type | Required | Description |
|---|---|---|---|
| operation | string | Yes | Must be "search" |
| query | string | Yes | Search query (name or email) |
| page_size | integer | No | Results per page (default: 10, max: 30) |
Example - Search by name:
json{ "operation": "search", "query": "John" }
Example - Search by email domain:
json{ "operation": "search", "query": "@company.com" }
get - Get contact details
| Field | Type | Required | Description |
|---|---|---|---|
| operation | string | Yes | Must be "get" |
| resource_name | string | Yes | Contact resource name (e.g., "people/c1234567890") |
Example:
json{ "operation": "get", "resource_name": "people/c1234567890" }
update - Update a contact
| Field | Type | Required | Description |
|---|---|---|---|
| operation | string | Yes | Must be "update" |
| resource_name | string | Yes | Contact resource name |
| update_first_name | string | No | New first name |
| update_last_name | string | No | New last name |
| update_email | string | No | New email |
| update_phone | string | No | New phone |
| update_company | string | No | New company |
| update_job_title | string | No | New job title |
Example:
json{ "operation": "update", "resource_name": "people/c1234567890", "update_email": "new.email@example.com", "update_job_title": "Director of Engineering" }
delete - Delete a contact
| Field | Type | Required | Description |
|---|---|---|---|
| operation | string | Yes | Must be "delete" |
| resource_name | string | Yes | Contact resource name |
Example:
json{ "operation": "delete", "resource_name": "people/c1234567890" }
Contact Fields
| Field | Description |
|---|---|
resource_name | Unique identifier (people/cXXX) |
display_name | Full formatted name |
first_name | Given name |
last_name | Family name |
email | Primary email address |
phone | Primary phone number |
company | Organization name |
job_title | Position/title |
notes | Free-form notes |
Phone Number Formats
Accepted formats:
+1-555-123-4567(international)(555) 123-4567(US format)555-123-4567(simple)5551234567(digits only)
Common Workflows
- Add new contact: Create with basic info after meeting someone
- Find contact: Search by name to get their details
- Build mailing list: List contacts, filter by company
- Update CRM: Export contacts for business use
Tips
- Search is case-insensitive
- Partial matches work for names
- Email search matches any part of address
- Use page_token for pagination through large lists
Setup Requirements
- Connect Contacts node to AI Agent's
input-toolshandle - Authenticate with Google Workspace in Credentials Modal
- Ensure People API (Contacts) scopes are authorized

