什么是 Google Contacts?
允许AI系统通过Google Contacts列出、搜索并管理联系人信息。
README
google-contacts-mcp
MCP server for Google Contacts - list, search, and manage contacts.
Use Cases
Email lookup: "See the latest JIRA ticket that's come in. Can we email Sarah from the security team to get their input?" → finds Sarah's email and drafts the message.
Business card capture: After a networking event, snap photos of business cards → your assistant extracts the details and adds them as contacts with a note about where you met.
Find connections: "Who do I know at Google?" or "I'm visiting London next week - who should I catch up with?" → search your personal network.
Call reminder: "Remind me to call Mike at 3pm" → creates a calendar event with Mike's phone number attached so you can dial straight from the reminder.
Contact updates: You receive an out-of-office saying someone left their company with a new personal email → your assistant updates their contact automatically.
(These are just examples - any workflow that needs contact lookup or management can use this.)
Setup
1. Create Google OAuth credentials
- Go to Google Cloud Console
- Create a new project (or use existing)
- Enable the People API
- Go to APIs & Services → OAuth consent screen, set up consent screen
- Go to APIs & Services → Credentials → Create Credentials → OAuth client ID
- Choose Web application
- Add
http://localhost:3000/callbackto Authorized redirect URIs - Note your Client ID and Client Secret
2. Run the server
GOOGLE_CLIENT_ID='your-client-id' \
GOOGLE_CLIENT_SECRET='your-client-secret' \
MCP_TRANSPORT=http \
npm start
The server runs on http://localhost:3000 by default. Change with PORT=3001.
3. Add to your MCP client
With the server running, follow the instructions on install-mcp, which generates the right config for your MCP client (Claude Code, Claude Desktop, Cursor, Cline, VS Code, and more).
Architecture
This server acts as an OAuth proxy to Google:
graph LR
A[MCP client] <--> B[google-contacts-mcp] <--> C[Google OAuth/API]
- Server advertises itself as an OAuth authorization server via
/.well-known/oauth-authorization-server /registerreturns the Google OAuth client credentials/authorizeredirects to Google, encoding the client's callback URL in state/callbackreceives the code from Google and forwards to the client's callback/tokenproxies token requests to Google, injecting client credentials/mcphandles MCP requests, using the bearer token to call People API
The server holds no tokens or state - it just proxies OAuth to Google.
Tools
| Tool | Description |
|---|---|
contacts_list | List contacts with names, emails, phones, organizations, birthdays, events, URLs, addresses, nicknames, relations, IM usernames, genders, external IDs, client data, and custom fields |
contacts_search | Search contacts by name, email, or phone |
directory_search | Search organization directory for coworkers |
contact_get | Get detailed info for a single contact |
contact_create | Create a new contact |
contact_update | Update an existing contact |
contact_delete | Permanently delete a contact |
contact_photo_update | Set or replace a contact's photo |
contact_photo_delete | Remove a contact's photo |
contact_groups_list | List contact groups (labels) |
contact_group_get | Get a contact group, including its members |
contact_group_create | Create a new contact group |
contact_group_update | Rename a contact group |
contact_group_delete | Permanently delete a contact group |
contact_group_members_modify | Add or remove contacts from a contact group |
Contributing
Pull requests are welcomed on GitHub! To get started:
- Install Git and Node.js
- Clone the repository
- Install dependencies with
npm install - Run
npm run testto run tests - Build with
npm run build
Releases
Versions follow the semantic versioning spec.
To release:
- Use
npm version <major | minor | patch>to bump the version - Run
git push --follow-tagsto push with tags - Wait for GitHub Actions to publish to the NPM registry.
常见问题
Google Contacts 是什么?
允许AI系统通过Google Contacts列出、搜索并管理联系人信息。
相关 MCP Server
Puppeteer 浏览器控制
编辑精选by Anthropic
Puppeteer 是让 Claude 自动操作浏览器进行网页抓取和测试的 MCP 服务器。
✎ 这个服务器解决了手动编写 Puppeteer 脚本的繁琐问题,适合需要自动化网页交互的开发者,比如抓取动态内容或做端到端测试。不过,作为参考实现,它可能缺少生产级的安全防护,建议在可控环境中使用。
Brave 搜索
编辑精选by Anthropic
Brave Search 是让 Claude 直接调用 Brave 搜索 API 获取实时网络信息的 MCP 服务器。
✎ 如果你想让 AI 助手帮你搜索最新资讯或技术文档,这个工具能绕过传统搜索的限制,直接返回结构化数据。特别适合需要实时信息的开发者,比如查 API 更新或竞品动态。不过它依赖 Brave 的 API 配额,高频使用可能受限。
网页抓取
编辑精选by Anthropic
Fetch 是 MCP 官方参考服务器,让 AI 能抓取网页并转为 Markdown 格式。
✎ 这个服务器解决了 AI 直接处理网页内容时格式混乱的问题,适合需要让 Claude 分析在线文档或新闻的开发者。不过作为参考实现,它缺乏生产级的安全配置,你得自己处理反爬虫和隐私风险。