/ Annuaire / Playground / google_workspace_mcp
● Communauté taylorwilsdon ⚡ Instantané

google_workspace_mcp

par taylorwilsdon · taylorwilsdon/google_workspace_mcp

Un serveur MCP unique pour Gmail, Drive, Calendar, Docs, Sheets, Slides, Chat, Forms, Tasks, Contacts, Apps Script — avec un chargement d'outils en tiers pour garder le contexte compact.

taylorwilsdon/google_workspace_mcp est un MCP Python qui enveloppe les APIs Google Workspace derrière environ 100 outils. OAuth 2.0 via votre propre projet Google Cloud. Choisissez un tier d'outils (core / extended / complete) pour contrôler combien d'outils apparaissent dans votre client MCP.

Pourquoi l'utiliser

Fonctionnalités clés

Démo en direct

Aperçu en pratique

google-workspace.replay ▶ prêt
0/0

Installer

Choisissez votre client

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "google-workspace": {
      "command": "uvx",
      "args": [
        "google_workspace_mcp"
      ],
      "_inferred": true
    }
  }
}

Ouvrez Claude Desktop → Settings → Developer → Edit Config. Redémarrez après avoir enregistré.

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "google-workspace": {
      "command": "uvx",
      "args": [
        "google_workspace_mcp"
      ],
      "_inferred": true
    }
  }
}

Cursor utilise le même schéma mcpServers que Claude Desktop. La config projet l'emporte sur la globale.

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "google-workspace": {
      "command": "uvx",
      "args": [
        "google_workspace_mcp"
      ],
      "_inferred": true
    }
  }
}

Cliquez sur l'icône MCP Servers dans la barre latérale Cline, puis "Edit Configuration".

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "google-workspace": {
      "command": "uvx",
      "args": [
        "google_workspace_mcp"
      ],
      "_inferred": true
    }
  }
}

Même format que Claude Desktop. Redémarrez Windsurf pour appliquer.

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "google-workspace",
      "command": "uvx",
      "args": [
        "google_workspace_mcp"
      ]
    }
  ]
}

Continue utilise un tableau d'objets serveur plutôt qu'une map.

~/.config/zed/settings.json
{
  "context_servers": {
    "google-workspace": {
      "command": {
        "path": "uvx",
        "args": [
          "google_workspace_mcp"
        ]
      }
    }
  }
}

Ajoutez dans context_servers. Zed recharge à chaud à la sauvegarde.

claude mcp add google-workspace -- uvx google_workspace_mcp

Une seule ligne. Vérifiez avec claude mcp list. Supprimez avec claude mcp remove.

Cas d'usage

Usages concrets : google_workspace_mcp

Comment traiter votre boîte de réception à zéro avec des étiquettes IA et des brouillons

👤 Travailleurs du savoir, cadres dirigeants ⏱ ~20 min intermediate

Quand l'utiliser : Le matin du lundi ou après les vacances quand votre boîte de réception est une zone de guerre.

Prérequis
  • Projet Google Cloud avec l'API Gmail activée — console.cloud.google.com > APIs > Gmail API > Activer
  • Identifiants OAuth 2.0 Desktop — Credentials > Create OAuth client > Desktop. Définissez les variables d'environnement GOOGLE_OAUTH_CLIENT_ID et _SECRET
Déroulement
  1. Extraire la dernière semaine de non-lus
    Recherchez dans Gmail les messages non-lus des 7 derniers jours. Groupez par catégorie d'expéditeur (équipe, externe, fournisseur, infolettre).✓ Copié
    → Comptes groupés + lignes d'aperçu
  2. Étiquetage automatique + archivage des infolettres
    Pour le groupe infolettre, étiquetez-les « infolettre » et archivez.✓ Copié
    → Compter archivé, identifiants de fil
  3. Rédigez des réponses aux 5 premiers vrais fils de discussion
    Pour les 5 fils les plus importants (demande client, bloquant, décision nécessaire), rédigez une réponse concise. N'envoyez pas — faites juste un brouillon.✓ Copié
    → 5 brouillons visibles dans Gmail

Résultat : Boîte de réception de moins de 20, brouillons prêts à examiner + envoyer.

Pièges
  • L'IA envoie des réponses au lieu de faire des brouillons — Dites toujours « brouillon uniquement » dans le prompt ; désactivez send_gmail_message pour les sessions non fiables
Combiner avec : notion

Comment vous préparer pour chaque réunion de demain à partir de votre calendrier

👤 Quiconque a des réunions consécutives ⏱ ~15 min beginner

Quand l'utiliser : Fin de journée avant une journée chargée.

Déroulement
  1. Lister les événements de demain
    Obtenez mes événements de calendrier pour demain. Pour chacun, affichez les participants et le titre de la réunion.✓ Copié
    → Chronologie des événements
  2. Pour chaque réunion, trouvez le document lié et les e-mails récents
    Pour chaque réunion avec un lien d'agenda, ouvrez le document et résumez. Pour chaque participant, affichez le dernier fil d'e-mail avec lui.✓ Copié
    → Briefing par réunion
  3. Verser dans un document
    Créez un document « Prep 2026-04-15 » avec une section par réunion.✓ Copié
    → URL du document retournée

Résultat : Un document de préparation unique que vous pouvez parcourir en buvant un café.

Pièges
  • Les e-mails des participants externes contiennent des informations personnelles — ils vont à votre fournisseur LLM — Réduisez aux noms uniquement dans les invites si vous en tenez compte
Combiner avec : notion

Comment transformer une feuille Google en source de données en lecture/écriture pour les agents

👤 Les gens des opérations qui exécutent des processus métier sur les feuilles ⏱ ~15 min intermediate

Quand l'utiliser : Vous ne voulez pas encore migrer vers une vraie base de données mais vous voulez que l'IA réponde aux questions + enregistre les événements.

Déroulement
  1. Décrivez la mise en page de la feuille
    Lisez l'onglet « Orders » dans la feuille de calcul 1AbC... — dites-moi le schéma.✓ Copié
    → Liste des colonnes avec les types
  2. Répondre à une question
    En utilisant read_sheet_values, combien de commandes en mars étaient supérieures à 1000 $ ?✓ Copié
    → Réponse numérique + cellules consultées
  3. Ajouter une ligne
    Ajoutez une nouvelle ligne : la date d'aujourd'hui, customer=acme, amount=1200, status=pending.✓ Copié
    → Index de ligne ajoutée

Résultat : Analyse ad-hoc + enregistrement sans quitter le chat.

Pièges
  • Les formules se recalculent lors de l'écriture et peuvent écraser les cellules qui vous intéressent — Utilisez append_table_rows, pas les écritures de plage, lors de l'ajout de données
Combiner avec : filesystem

Comment générer un Google Doc à partir d'un modèle markdown

👤 Quiconque génère des propositions, des rapports ou des documents modélisés ⏱ ~10 min beginner

Quand l'utiliser : Vous voulez une sortie riche de Docs (tableaux, en-têtes) sans apprendre l'API de Google.

Déroulement
  1. Brouillon en markdown
    Rédigez une proposition de client pour ACME basée sur [brief]. Sortie en markdown.✓ Copié
    → Brouillon markdown
  2. Convertir en document
    Créez un nouveau Google Doc intitulé « ACME Proposal 2026-04 » avec ce contenu. Utilisez create_doc puis batch_update_doc pour préserver la mise en forme.✓ Copié
    → URL du document

Résultat : Un document correctement formaté que vous pouvez partager.

Pièges
  • create_doc n'accepte que du texte brut — le formatage nécessite une mise à jour par lot suivante — Utilisez toujours le flux en deux étapes pour les documents enrichis

Combinaisons

Associez-le à d'autres MCPs pour un effet X10

google-workspace + notion

Mettre en miroir les documents de préparation des réunions dans Notion pour la visibilité de l'équipe

Pour chaque réunion aujourd'hui, copiez l'agenda Google Doc dans une nouvelle page Notion sous « Meeting Notes » avec la date comme titre.✓ Copié
google-workspace + filesystem

Exporter un dossier Drive vers le disque local en tant que sauvegarde

Téléchargez tous les fichiers du dossier Drive « Client Contracts 2025 » vers /backups/drive/contracts-2025/.✓ Copié
google-workspace + github

Faire des références croisées entre les problèmes GitHub et les réunions d'équipe du calendrier

Avant ma réunion d'équipe de 10h, énumérez les problèmes GitHub ouverts qui m'ont été assignés et joignez le résumé à la description de l'événement de réunion d'équipe d'aujourd'hui.✓ Copié

Outils

Ce que ce MCP expose

OutilEntréesQuand appelerCoût
search_gmail_messages query: str, max_results?: int Trouvez les messages par expéditeur, objet, date 1 appel à l'API Gmail
draft_gmail_message to, subject, body, thread_id? Préférez le brouillon à l'envoi pour les flux de travail IA 1 appel à l'API
send_gmail_message to, subject, body Uniquement quand l'utilisateur demande explicitement d'envoyer 1 appel à l'API (irréversible)
get_events calendar_id?, time_min, time_max Extraire les événements dans une fenêtre 1 appel à l'API Calendar
manage_event action, event_id?, summary?, attendees?, time? Créer/mettre à jour/supprimer les événements 1 appel à l'API
read_sheet_values spreadsheet_id, range Lire une plage de cellules 1 appel à l'API Sheets
append_table_rows spreadsheet_id, table_id, rows Ajout sûr sans écraser les formules 1 appel à l'API Sheets
create_doc title, content? Démarrer un nouveau document 1 appel à l'API Docs
batch_update_doc doc_id, requests[] Appliquer la mise en forme après create_doc 1 appel à l'API Docs (par lot)
search_drive_files query, max_results? Localiser un fichier par nom/propriétaire 1 appel à l'API Drive

Coût et limites

Coût d'exécution

Quota d'API
Gmail : 250 unités de quota/utilisateur/seconde. Sheets : 300 lectures/min/utilisateur. Drive : 1000 requêtes/100s/utilisateur.
Tokens par appel
La liste des outils au niveau « complete » est énorme (environ 100 outils) ; utilisez le niveau « core » pour rester bon marché
Monétaire
Gratuit avec un compte Google
Astuce
Exécutez avec --tool-tier core et basculez vers extended uniquement quand vous avez réellement besoin de Slides/Forms/Script.

Sécurité

Permissions, secrets, portée

Portées minimales : N'accordez que les étendues pour les services que vous utilisez réellement (par exemple gmail.readonly, calendar.readonly)
Stockage des identifiants : GOOGLE_OAUTH_CLIENT_ID/_SECRET dans l'env ; jetons d'actualisation persistés sur le disque
Sortie de données : Le contenu de vos documents/e-mails passe par le serveur MCP vers votre fournisseur LLM choisi
Ne jamais accorder : gmail.send si vous n'avez pas besoin d'envoyer drive (full) si drive.file suffit étendues admin

Dépannage

Erreurs courantes et correctifs

invalid_grant / le jeton a expiré ou a été révoqué

Supprimez le fichier token mis en cache et réexécutez le flux d'authentification.

Vérifier : ls ~/.config/google_workspace_mcp/tokens
403 permission insuffisante

Consentez à nouveau avec l'étendue nécessaire — le jeton stocké ne l'a pas encore.

API non activée

Activez l'API spécifique (par exemple, API Docs) dans la console Google Cloud pour votre projet.

Quota dépassé pour l'utilisateur

Gmail et Sheets ont des limites par minute. Lectures par lot ; réduisez avec une nouvelle tentative exponentielle.

Alternatives

google_workspace_mcp vs autres

AlternativeQuand l'utiliserCompromis
MCP Gmail officiel (distant Anthropic)Vous voulez OAuth hébergé par Anthropic sans configurationGmail uniquement ; pas de Drive/Docs/Sheets
MCP zapierVous payez déjà pour Zapier et vous voulez zéro configCoûte de l'argent par appel ; latence plus élevée

Plus

Ressources

📖 Lire le README officiel sur GitHub

🐙 Voir les issues ouvertes

🔍 Parcourir les 400+ serveurs MCP et Skills