Googlecontacts
Access and manage Google Contacts data via the Google People API
Verdict
Common use cases
- Create contacts from meeting transcripts
- Batch update phone numbers after office move
- Pull client details into proposal drafts
- Organize contacts into groups by project
- Copy suggested contacts to permanent list
Integration
- Vendor
- Googlecontacts
- Category
- productivity
- Auth
- OAUTH2
- Tools
- 24
- Composio slug
googlecontacts
Tools
- Batch create contacts
Create a batch of new contacts in Google Contacts. This action creates up to 200 contacts in a single API call and returns the PersonResponses for the newly created contacts. Use this action when you need to create multiple contacts at once
- Batch Delete Google Contactsdestructive
Delete a batch of contacts from Google Contacts. Any non-contact data will not be deleted. Use this action when you need to permanently remove multiple contacts from the user's Google Contacts list at once. This action is irreversible — the
- Batch get contact groups
Get a list of contact groups owned by the authenticated user by specifying a list of contact group resource names. Use when you need to retrieve details for specific contact groups, such as getting group metadata, member counts, or group na
- Batch get people
Batch retrieves information about multiple people from Google Contacts. Use this action when you need to fetch contact information for several people in a single API call rather than making individual requests per person. This improves effi
- Batch Update Google Contacts
Update a batch of contacts in Google Contacts and return the updated contact data. Use this action when you need to modify multiple contacts at once, such as: - Updating names, phone numbers, or email addresses for several contacts - Making
- Copy Other Contact to My Contacts
Copies an Other contact to a new contact in the user's myContacts group. Use this action when you need to save an existing "Other contact" (from Google's contact suggestions) to your permanent contacts in the myContacts group. Mutate reques
- Create Contact
Create a new contact in Google Contacts and return the person resource for that contact. Use when you need to add a new person to the authenticated user's Google Contacts. The request returns a 400 error if more than one field is specified
- Create Contact Group
Create a new contact group owned by the authenticated user. The group name must be unique among the user's contact groups. Use this action when you need to create a new contact group to organize the user's Google Contacts. Attempting to cre
- Delete contact groupdestructive
Deletes an existing contact group owned by the authenticated user by specifying the contact group resource name. This action is irreversible — once deleted, the contact group cannot be recovered. Use this action when you need to remove a co
- Delete Contact Photodestructive
Delete a contact's photo from Google Contacts. Use when you need to remove a profile picture from a specific contact. This action is irreversible — once the photo is deleted, it cannot be recovered. Mutate requests for the same user should
- Delete Google Contactdestructive
Delete a contact person from Google Contacts. Any non-contact data will not be deleted. Use this action when you need to permanently remove a contact from the user's Google Contacts list. This action is irreversible — the contact cannot be
- Get Contact Group
Retrieves a specific contact group owned by the authenticated user by specifying the contact group resource name. Use when you need to get details about a specific contact group, including its name, member count, and metadata. This is a rea
- Get Person
Provides information about a person by specifying a resource name. Use when you need to retrieve detailed information about a specific person, including their names, email addresses, phone numbers, organizations, and other profile data. Use
- List Connections
Lists the connections (contacts) for the authenticated user. Use when you need to retrieve a paginated list of all contacts with optional sorting, filtering, and incremental sync support. Sync tokens expire 7 days after a full sync — reques
- List Contact Groups
List all contact groups owned by the authenticated user. Use when you need to retrieve all contact groups (e.g., "My Contacts", "Starred", custom groups) for organizing or managing contacts. Members of the contact groups are not populated i
- List Directory People
Lists domain profiles and domain contacts in the authenticated user's domain directory. Use when you need to retrieve directory information for all users in a Google Workspace domain, including their contact details like names, emails, and
- List Other Contacts
Lists "Other contacts" from Google People API. Other contacts are contacts that are not in a contact group, typically auto-created from interactions like emails sent or received. Use this action when you need to retrieve contacts that exist
- Modify Contact Group Members
Modifies the members of a contact group by adding or removing contact resource names. Only system contact groups 'contactGroups/myContacts' and 'contactGroups/starred' can have members added. Other system contact groups are deprecated and c
- Search Contacts
Searches the authenticated user's contacts for matches against the provided query. The query matches against names, nicknames, email addresses, phone numbers, and organizations. Use this action when you need to find specific contacts in the
- Search Domain Directory People
Search domain directory people in Google Contacts. Provides a list of domain profiles and domain contacts in the authenticated user's domain directory that match the search query. Use this action when you need to find people within your org
- Search Other Contacts
Searches other contacts from Google People API that match a query string. Other contacts are contacts not in any contact group, typically auto-created from interactions like emails sent or received. This action searches across names, email
- Update Contact Group
Update the name of an existing contact group owned by the authenticated user. Use this action when you need to rename a contact group or update its metadata. Attempting to create a group with a duplicate name will return an HTTP 409 error.
- Update Contact Photo
Update a contact's photo. Use when you need to change or set the profile picture for an existing Google Contact. Mutate requests for the same user should be sent sequentially to avoid increased latency and failures. The photo should be prov
- Update Google Contact
Update contact data for an existing contact person. Any non-contact data will not be modified. Use this action when you need to update information (such as name, email, phone) for an existing contact in Google Contacts. Important notes: - A
Setup
Setup guide
- 11. Inside any Switchy Space, click the '+' icon in the sidebar and choose 'Add Integration'. 2. Search for 'Google Contacts' and click 'Connect'. 3. You'll be redirected to Google's OAuth consent screen — sign in with the Google account that owns the contacts you want to access. 4. Google will ask you to grant 'See, edit, download, and permanently delete your contacts' scope; click 'Allow'. 5. Switchy redirects you back and confirms the connection is live. 6. Return to your Space and type '@Googlecontacts list my contact groups' to verify the MCP responds with your actual groups. 7. From now on, @mention Googlecontacts in any message to invoke its tools — the AI will route your request to the appropriate Google Contacts API endpoint and return the result inline.
What teammates see: by default, memories from Googlecontacts are scoped to the Space (PROJECT visibility) - you can mark any memory PRIVATE or share it ORG-wide.
Works well with
Top models
Compatibility data appears once enough Spaces have used this MCP together with a given model.
How Switchy teams use it
Starter prompts
Create Contact from Notes
@Googlecontacts create a new contact for Jane Doe, email jane.doe@example.com, mobile +1-555-0199, works at Acme Corp as VP of Sales.Open in a Space →
List All Contact Groups
@Googlecontacts show me all my contact groups with their names and member counts.Open in a Space →
Batch Update Area Codes
@Googlecontacts find all contacts with phone numbers starting +1-415 and update them to +1-628, then confirm how many were changed.Open in a Space →
Fetch Client Details
@Googlecontacts get the full contact card for Michael Chen including all phone numbers, email addresses, and company details.Open in a Space →
Create Project Contact Group
@Googlecontacts create a contact group called 'Q1 Launch Team' and add sarah@example.com, tom@example.com, and priya@example.com to it.Open in a Space →
Example outputs
Illustrative - representative of the model's voice and quality, not literal recordings.
@googlecontacts find all contacts with 'acme' in their company name and show me their names, emails, and phone numbers
I searched your Google Contacts for anyone associated with 'acme' and found 7 matches: 1. Sarah Chen (sarah.chen@acme.com, +1-555-0142) — VP of Engineering 2. Marcus Williams (m.williams@acme.com, +1-555-0198) — Product Manager 3. Jennifer Park (jpark@acme.com) — no phone listed 4. David Kumar (david.k@acme.com, +1-555-0203) — Sales Director 5. Lisa Thompson (lisa@acme.com, +1-555-0176) 6. Robert Chen (robert@acmecorp.com) — different domain, verify this is the right company 7. Emily Rodriguez (emily.r@acme.com, +1-555-0211) — Customer Success This is an illustrative example based on typical contact data structure.
This example uses batch retrieval to efficiently fetch multiple contacts matching search criteria. Requires the 'contacts.readonly' OAuth scope. Search behavior depends on how contact data is structured in your Google account — partial matches work for organization fields, but exact email domain searches are more reliable than fuzzy company name matching.
@googlecontacts create a new contact for Jamie Sullivan, email jamie.sullivan@techstart.io, mobile +1-555-0299, and add them to my 'Investors' group
I've created a new contact for Jamie Sullivan in your Google Contacts: - Name: Jamie Sullivan - Email: jamie.sullivan@techstart.io - Mobile: +1-555-0299 - Added to group: Investors The contact is now saved and synced across your Google account. You can find Jamie in your Contacts app or by searching in Gmail. This is an illustrative example — the actual response includes the full person resource with a unique resourceName identifier.
This example demonstrates contact creation with group assignment in a single operation. Requires 'contacts' OAuth scope (read/write). The 'Investors' group must already exist in your account — if it doesn't, you'll need to create the group first using the create contact group tool. Changes sync immediately across all Google services.
@googlecontacts review all contacts I haven't interacted with in over a year and draft a list of who I should archive versus keep active
I retrieved your contact interaction data and found 43 contacts with no recorded activity in the past 12+ months. Here's my recommended segmentation: **Archive (28 contacts):** People with incomplete data (missing email/phone), duplicate entries, or contacts from closed projects. Examples: 'John D' (no contact info), 'Conference Booth Lead' (generic placeholder), 'Old Vendor Support' (company no longer used). **Keep Active (15 contacts):** Former colleagues at companies you still work with, investors, advisors, or people in your industry who may be relevant for future networking even without recent contact. Examples: Sarah Kim (ex-colleague now at partner company), Michael Torres (industry conference organizer). This is an illustrative analysis based on typical contact metadata patterns.
This example combines batch contact retrieval with AI reasoning to analyze contact utility. Google Contacts API doesn't directly expose 'last interaction' timestamps — the AI infers staleness from metadata completeness, group membership, and notes fields. Requires 'contacts.readonly' scope. The analysis is subjective and should be reviewed before taking bulk deletion actions.
Use-case deep-dives
When Google Contacts beats a full CRM for early-stage teams
A 6-person sales team closing 3-5 deals a month doesn't need Salesforce's overhead. They need contact data in Google Workspace where they already live. This MCP wins when your deal flow is under 20 active prospects and your reps spend more time in Gmail than in a CRM dashboard. The batch create and batch update tools let you push lead lists from a spreadsheet or Slack thread into Contacts in one shot, then tag them with contact groups for pipeline stages. The OAuth2 flow means each rep controls their own contact list—no shared database to maintain. If you're closing more than 10 deals a month or need deal history beyond email threads, you've outgrown this and need a real CRM. For teams still in the 'spreadsheet + Gmail' phase, this MCP keeps you there longer without the chaos.
How this MCP handles post-event follow-up at conference scale
A 3-person event ops team runs quarterly meetups with 80-120 attendees. After each event, they need to move badge-scan data into Google Contacts so the founder can send personalized follow-ups from Gmail. This MCP's batch create tool takes a CSV export from the badge scanner and pushes all 100+ contacts in a single call, then uses contact groups to tag them by session attendance or interest area. The copy-other-contact tool is useful when attendees are already in Google's suggestions but not saved—common with repeat guests. The limit is the 200-contact batch ceiling: if your event tops 200 people, you'll need to chunk the import or script it. For quarterly events under 150 attendees where follow-up happens in Gmail (not a marketing automation tool), this MCP closes the loop without adding another SaaS login.
Why solo consultants use this MCP for client contact hygiene
A solo consultant juggles 12-15 active clients and twice that many past clients who refer new work. Keeping Google Contacts current matters because every intro email and calendar invite pulls from it. This MCP's batch update tool lets you refresh phone numbers, add LinkedIn URLs, or fix misspelled names across a dozen contacts in one Switchy prompt—no clicking through Google's web UI. The contact group tools organize clients by project status (active, paused, alumni) so you can filter your contact list when you need to send a quarterly check-in. The batch delete tool cleans out outdated leads without the tedium of one-by-one confirmation. If you're managing more than 50 active client relationships or need CRM features like deal tracking, this won't scale. For freelancers who live in Gmail and just need their contact list to stay accurate, this MCP is the lowest-friction fix.
Frequently asked
What does the Google Contacts MCP do in Switchy?
It lets your AI agents read, create, update, and delete contacts in your Google Contacts account. Agents can batch-create up to 200 contacts at once, organize contacts into groups, copy suggested contacts into your permanent list, and retrieve contact details by name or email. All changes sync immediately to your Google account.
Which OAuth scopes does the Google Contacts MCP request?
It requests write access to your Google Contacts, which includes reading, creating, updating, and deleting contacts and contact groups. You'll see a Google consent screen asking for permission to manage your contacts. Any Google Workspace account can grant this — you don't need admin rights unless your organization restricts third-party app access.
Can the MCP access contacts shared with me by other people?
No. It only accesses contacts you own in your personal Google Contacts account. Shared contacts from Google Workspace directory or contacts another user shared via a group aren't exposed through the Google People API this MCP uses. For directory access, you'd need a separate Google Workspace Admin integration.
How does this compare to just using Google Contacts directly?
Use the MCP when you want an AI agent to automate contact management — like syncing leads from a spreadsheet, deduplicating entries, or tagging contacts based on email content. For one-off edits or browsing, the Google Contacts web app is faster. The MCP shines in workflows where contact updates are a side effect of another task.
Who on my team should connect the Google Contacts MCP?
Whoever owns the contact list you want agents to manage. Each connection is scoped to one Google account's contacts. If your team shares a contacts@company.com account, connect that. If contacts are personal, each person connects their own. One connection per Google account — it doesn't count against Switchy seat limits.