📇 MCP Google 通讯录服务器
提供 Google 通讯录功能的机器对话协议 (MCP) 服务器,允许 AI 助手管理联系人、搜索您组织的目录以及与 Google Workspace 交互。
✨ 特点
- 列出并搜索 Google 通讯录
- 创建、更新和删除联系人
- 搜索 Google Workspace 目录
- 查看“其他联系人”(与您互动过但尚未添加的人)
- 访问您单位中的 Google Workspace 用户
🚀 安装
📋 先决条件
- Python 3.12 或更高版本
- 具有联系人访问权限的 Google 帐户
- 启用 People API 的 Google Cloud 项目
- 用于访问 Google API 的 OAuth 2.0 凭据
🧪 使用 uv(推荐)
- 如果尚未安装 uv,请安装它:
- 克隆存储库:
- 创建虚拟环境并安装依赖项:
📦使用 pip
- 克隆存储库:
- 安装依赖项:
🔑 身份验证设置
服务器需要 Google API 凭据才能访问您的联系人。您有以下几种选择:
🔐 选项 1:使用 credentials.json 文件
- 创建 Google Cloud 项目并启用 People API
- 创建 OAuth 2.0 凭据(桌面应用程序类型)
- 下载 credentials.json 文件
- 将其放置在以下位置之一:
- 本项目的根目录
- 您的主目录(~/google-contacts-credentials.json)
- 使用
--credentials-file
参数指定其位置
🔐 选项 2:使用环境变量
设置以下环境变量:
GOOGLE_CLIENT_ID
:您的 Google OAuth 客户端 IDGOOGLE_CLIENT_SECRET
:您的 Google OAuth 客户端密钥GOOGLE_REFRESH_TOKEN
:您帐户的有效刷新令牌
🛠️ 使用方法
🏃♂️ 基本启动
这将使用默认的 stdio 传输启动服务器。
⚙️ 命令行参数
争论 | 描述 | 默认值 |
---|---|---|
--transport | 要使用的传输协议( stdio 或http ) | stdio |
--host | HTTP 传输的主机 | localhost |
--port | HTTP 传输端口 | 8000 |
--client-id | Google OAuth 客户端 ID(覆盖环境变量) | - |
--client-secret | Google OAuth 客户端密钥(覆盖环境变量) | - |
--refresh-token | Google OAuth 刷新令牌(覆盖环境变量) | - |
--credentials-file | Google OAuth credentials.json 文件的路径 | - |
📝 示例
从 HTTP 传输开始:
使用特定的凭证文件:
直接提供凭证:
🔌 与 MCP 客户端集成
要将此服务器与 MCP 客户端(如 Anthropic 的 Claude 和 Cline)一起使用,请将其添加到您的 MCP 配置中:
🧰 可用工具
该 MCP 服务器提供以下工具:
工具 | 描述 |
---|---|
list_contacts | 列出所有联系人或按姓名过滤 |
get_contact | 通过资源名称或电子邮件获取联系人 |
create_contact | 创建新联系人 |
update_contact | 更新现有联系人 |
delete_contact | 按资源名称删除联系人 |
search_contacts | 按姓名、电子邮件或电话号码搜索联系人 |
list_workspace_users | 列出您组织目录中的 Google Workspace 用户 |
search_directory | 在 Google Workspace 目录中搜索人员 |
get_other_contacts | 从“其他联系人”部分检索联系人 |
🔍 详细工具描述
📋 list_contacts
列出您的所有 Google 联系人或按姓名过滤。
参数:
name_filter
(可选):按名称过滤联系人的字符串max_results
(可选):返回的最大联系人数量(默认值:100)
例子:
👤 get_contact
检索有关特定联系人的详细信息。
参数:
identifier
:资源名称(people/*)或联系人的电子邮件地址
例子:
➕ create_contact
在您的 Google 通讯录中创建新联系人。
参数:
given_name
:联系人的名字family_name
(可选):联系人的姓氏email
(可选):联系人的电子邮件地址phone
(可选):联系人的电话号码
例子:
✏️ update_contact
使用新信息更新现有联系人。
参数:
resource_name
:联系资源名称(people/*)given_name
(可选):更新后的名字family_name
(可选):更新后的姓氏email
(可选):更新后的电子邮件地址phone
(可选):更新后的电话号码
例子:
🗑️ delete_contact
从您的 Google 通讯录中删除联系人。
参数:
resource_name
:要删除的联系人资源名称 (people/*)
例子:
🔍 search_contacts
按姓名、电子邮件或电话号码搜索您的联系人。
参数:
query
:在联系人中查找的搜索词max_results
(可选):返回的最大结果数(默认值:10)
例子:
🏢 list_workspace_users
列出您组织目录中的 Google Workspace 用户。
参数:
query
(可选):用于查找特定用户的搜索词max_results
(可选):返回的最大结果数(默认值:50)
例子:
🔭 search_directory
对您组织的 Google Workspace 目录执行有针对性的搜索。
参数:
query
:搜索词以查找特定目录成员max_results
(可选):返回的最大结果数(默认值:20)
例子:
👥 get_other_contacts
从“其他联系人”部分检索联系人 - 与您互动但尚未添加到联系人中的人。
参数:
max_results
(可选):返回的最大结果数(默认值:50)
例子:
🔒 权限
首次运行服务器时,您需要通过 Google 进行身份验证并授予访问联系人所需的权限。身份验证流程将引导您完成此过程。
❓ 故障排除
- 🔐 身份验证问题:确保您的凭据有效并具有必要的范围
- ⚠️ API 限制:请注意 Google People API 配额限制
- 📝 日志:检查控制台输出中的错误消息和调试信息
👥 贡献
欢迎贡献代码!欢迎提交 Pull 请求。
📄 许可证
该项目根据 MIT 许可证获得许可 - 有关详细信息,请参阅 LICENSE 文件。
This server cannot be installed
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
机器对话协议服务器,使 AI 助手能够管理 Google 通讯录和搜索 Google Workspace 目录,提供列出、创建、更新和删除 Google 帐户中的联系人的工具。
Related MCP Servers
- -securityFlicense-qualityA Model Context Protocol server that enables AI assistants to interact with Gmail services, supporting email operations, draft management, and calendar functionality through Google API integration.Last updated -TypeScript
- AsecurityAlicenseAqualityA Model Context Protocol server that enables AI assistants like Claude to interact with Google Cloud Platform environments through natural language, allowing users to query and manage GCP resources during conversations.Last updated -910262TypeScriptMIT License
- -security-license-qualityA server that provides a Machine Control Protocol (MCP) interface to search, access, and interact with Google Drive files and folders, enabling AI assistants to work with Google Drive content.Last updated -PythonMIT License
- AsecurityAlicenseAqualityA Model Context Protocol server that enables AI agents to interact with Google Workspace services including Drive, Docs, and Sheets through natural language commands.Last updated -8PythonMIT License