Servidor de contactos de Google MCP
Un servidor de Protocolo de conversación de máquina (MCP) que proporciona la funcionalidad de Contactos de Google, lo que permite a los asistentes de IA administrar contactos, buscar en el directorio de su organización e interactuar con Google Workspace.
✨ Características
Listado y búsqueda de contactos de Google
Crear, actualizar y eliminar contactos
Buscar en el directorio de Google Workspace
Ver "Otros contactos" (personas con las que has interactuado pero que no has agregado)
Acceda a los usuarios de Google Workspace en su organización
Related MCP server: Google Drive MCP Server
🚀 Instalación
📋 Requisitos previos
Python 3.12 o superior
Cuenta de Google con acceso a contactos
Proyecto de Google Cloud con People API habilitada
Credenciales OAuth 2.0 para el acceso a la API de Google
🧪 Uso de uv (Recomendado)
Instala uv si aún no lo tienes:
pip install uvClonar el repositorio:
git clone https://github.com/rayanzaki/mcp-google-contacts-server.git cd mcp-google-contacts-serverCree un entorno virtual e instale dependencias:
uv venv source .venv/bin/activate uv pip install -r requirements.txt
📦 Usando pip
Clonar el repositorio:
git clone https://github.com/rayanzaki/mcp-google-contacts-server.git cd mcp-google-contacts-serverInstalar dependencias:
pip install -r requirements.txt
🔑 Configuración de autenticación
El servidor requiere las credenciales de la API de Google para acceder a tus contactos. Tienes varias opciones:
🔐 Opción 1: Usar un archivo credentials.json
Cree un proyecto de Google Cloud y habilite la API People
Crear credenciales OAuth 2.0 (tipo de aplicación de escritorio)
Descargue el archivo credentials.json
Colóquelo en uno de estos lugares:
El directorio raíz de este proyecto
Su directorio de inicio (~/google-contacts-credentials.json)
Especifique su ubicación con el argumento
--credentials-file
🔐 Opción 2: Uso de variables de entorno
Establezca las siguientes variables de entorno:
GOOGLE_CLIENT_ID: Su ID de cliente de Google OAuthGOOGLE_CLIENT_SECRET: Su secreto de cliente de Google OAuthGOOGLE_REFRESH_TOKEN: Un token de actualización válido para su cuenta
🛠️ Uso
🏃♂️ Inicio básico
Esto inicia el servidor con el transporte stdio predeterminado.
⚙️ Argumentos de la línea de comandos
Argumento | Descripción | Valor predeterminado |
| Protocolo de transporte a utilizar ( |
|
| Host para transporte HTTP |
|
| Puerto para transporte HTTP |
|
| ID de cliente de Google OAuth (anula la variable de entorno) | - |
| Secreto de cliente de Google OAuth (anula la variable de entorno) | - |
| Token de actualización de Google OAuth (anula la variable de entorno) | - |
| Ruta al archivo credentials.json de Google OAuth | - |
📝 Ejemplos
Comience con el transporte HTTP:
Utilice un archivo de credenciales específico:
Proporcione las credenciales directamente:
🔌 Integración con clientes MCP
Para utilizar este servidor con clientes MCP (como Claude de Anthropic con Cline), agréguelo a su configuración de MCP:
🧰 Herramientas disponibles
Este servidor MCP proporciona las siguientes herramientas:
Herramienta | Descripción |
| Listar todos los contactos o filtrar por nombre |
| Obtenga un contacto por nombre del recurso o correo electrónico |
| Crear un nuevo contacto |
| Actualizar un contacto existente |
| Eliminar un contacto por nombre de recurso |
| Buscar contactos por nombre, correo electrónico o número de teléfono |
| Incluir usuarios de Google Workspace en el directorio de su organización |
| Buscar personas en el directorio de Google Workspace |
| Recuperar contactos de la sección 'Otros contactos' |
🔍 Descripciones detalladas de herramientas
📋 list_contacts
Enumera todos tus contactos de Google o los filtra por nombre.
Parámetros:
name_filter(opcional): cadena para filtrar contactos por nombremax_results(opcional): Número máximo de contactos a devolver (predeterminado: 100)
Ejemplo:
👤 get_contact
Recupera información detallada sobre un contacto específico.
Parámetros:
identifier: Nombre del recurso (personas/*) o dirección de correo electrónico del contacto
Ejemplo:
➕ create_contact
Crea un nuevo contacto en tus Contactos de Google.
Parámetros:
given_name: Nombre del contactofamily_name(opcional): Apellido del contactoemail(opcional): Dirección de correo electrónico del contactophone(opcional): Número de teléfono del contacto
Ejemplo:
✏️ update_contact
Actualiza un contacto existente con nueva información.
Parámetros:
resource_name: Nombre del recurso de contacto (personas/*)given_name(opcional): Nombre actualizadofamily_name(opcional): Apellido actualizadoemail(opcional): Dirección de correo electrónico actualizadaphone(opcional): Número de teléfono actualizado
Ejemplo:
🗑️ delete_contact
Elimina un contacto de tus Contactos de Google.
Parámetros:
resource_name: Nombre del recurso de contacto (personas/*) para eliminar
Ejemplo:
🔍 search_contacts
Busca tus contactos por nombre, correo electrónico o número de teléfono.
Parámetros:
query: Término de búsqueda para encontrar en contactosmax_results(opcional): Número máximo de resultados a devolver (predeterminado: 10)
Ejemplo:
🏢 list_workspace_users
Enumera los usuarios de Google Workspace en el directorio de tu organización.
Parámetros:
query(opcional): término de búsqueda para encontrar usuarios específicosmax_results(opcional): Número máximo de resultados a devolver (predeterminado: 50)
Ejemplo:
🔭 search_directory
Realiza una búsqueda específica en el directorio de Google Workspace de su organización.
Parámetros:
query: término de búsqueda para encontrar miembros específicos del directoriomax_results(opcional): Número máximo de resultados a devolver (predeterminado: 20)
Ejemplo:
👥 get_other_contacts
Recupera contactos de la sección “Otros contactos”: personas con las que has interactuado pero que no has agregado a tus contactos.
Parámetros:
max_results(opcional): Número máximo de resultados a devolver (predeterminado: 50)
Ejemplo:
🔒 Permisos
Al ejecutar el servidor por primera vez, deberá autenticarse con Google y otorgar los permisos necesarios para acceder a sus contactos. El proceso de autenticación le guiará.
❓ Solución de problemas
🔐 Problemas de autenticación : asegúrese de que sus credenciales sean válidas y tengan los alcances necesarios
⚠️ Límites de API : tenga en cuenta los límites de cuota de la API de Google People
📝 Registros : Verifique la salida de la consola en busca de mensajes de error e información de depuración
👥 Contribuyendo
¡Agradecemos sus contribuciones! No dude en enviar una solicitud de incorporación de cambios.
📄 Licencia
Este proyecto está licenciado bajo la licencia MIT: consulte el archivo de LICENCIA para obtener más detalles.