/ Annuaire / Playground / Google Workspace MCP
● Communauté taylorwilsdon ⚡ Instantané

Google Workspace MCP

par taylorwilsdon · taylorwilsdon/google_workspace_mcp

Un seul flux OAuth donne à Claude accès complet en lecture/écriture sur Gmail, Drive, Calendar, Docs, Sheets, Slides, Forms, Tasks et Chat — sans plomberie par service.

google_workspace_mcp connecte 12 services Google Workspace derrière un unique serveur MCP. Trois niveaux d'outils progressifs (core / extended / complete) permettent de délimiter les accès sans ré-authentification. Supporte le mode stateless pour containers, OAuth 2.1 multi-utilisateurs avec bearer tokens, cache de tokens sur GCS, et installation en un clic via .dxt pour Claude Desktop.

Pourquoi l'utiliser

Fonctionnalités clés

Démo en direct

Aperçu en pratique

google-workspace-mcp.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-mcp": {
      "command": "uvx",
      "args": [
        "workspace-mcp",
        "--tool-tier",
        "core"
      ]
    }
  }
}

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

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "google-workspace-mcp": {
      "command": "uvx",
      "args": [
        "workspace-mcp",
        "--tool-tier",
        "core"
      ]
    }
  }
}

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-mcp": {
      "command": "uvx",
      "args": [
        "workspace-mcp",
        "--tool-tier",
        "core"
      ]
    }
  }
}

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

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "google-workspace-mcp": {
      "command": "uvx",
      "args": [
        "workspace-mcp",
        "--tool-tier",
        "core"
      ]
    }
  }
}

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

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

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

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

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

claude mcp add google-workspace-mcp -- uvx workspace-mcp --tool-tier core

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

Cas d'usage

Usages concrets : Google Workspace MCP

Trier la boîte Gmail jusqu'au zéro non-lu avec Claude comme assistant

👤 Toute personne avec plus de 200 emails non lus ⏱ ~25 min beginner

Quand l'utiliser : Lundi matin et la boîte de réception est un mur.

Prérequis
  • Client OAuth Google Cloud — Créer des credentials OAuth 2.0 sur console.cloud.google.com, télécharger client_secret.json
  • Serveur installé — uvx workspace-mcp --tool-tier core (le premier appel ouvre un navigateur pour OAuth)
Déroulement
  1. Catégoriser la boîte
    Use google-workspace-mcp. List unread mail from the last 7 days. Bucket into: action-required, FYI, newsletters, automated.✓ Copié
    → Nombre par catégorie et exemples d'objets
  2. Auto-archiver les catégories à faible valeur
    Archive everything in newsletters + automated. Don't touch action-required.✓ Copié
    → N archivés, 0 action-required affecté
  3. Rédiger les réponses
    For each action-required email, draft a 2-line reply in my voice. Save as drafts, don't send.✓ Copié
    → Brouillons visibles dans Gmail ; vous peaufinez puis envoyez

Résultat : Boîte réduite à moins de 20 emails, réponses rédigées mais non envoyées — la revue humaine reste entre vos mains.

Pièges
  • Accordé la portée Gmail complète et regretter — Utiliser --tool-tier core — pas d'outil send_email tant que vous n'activez pas extended
Combiner avec : filesystem

Générer un rapport hebdomadaire à partir de Calendar + activité Docs

👤 Développeurs et managers qui rédigent des bilans hebdomadaires ⏱ ~10 min beginner

Quand l'utiliser : Vendredi après-midi, vous avez oublié ce que vous avez fait cette semaine.

Déroulement
  1. Récupérer le calendrier
    Use google-workspace-mcp. List meetings I attended Mon–Fri this week (skip declined). For each, give 1-line context.✓ Copié
    → Liste chronologique avec contexte bref par réunion
  2. Récupérer l'activité des docs
    List Drive docs I edited or commented on this week. Group by project.✓ Copié
    → Liste de docs regroupés avec nombre d'éditions/commentaires
  3. Rédiger le bilan
    Combine into a 6-bullet weekly update — what I shipped, what's blocked, what's next.✓ Copié
    → Brouillon prêt pour Slack/email

Résultat : Un bilan hebdomadaire en 3 minutes au lieu de 30, ancré dans des livrables réels.

Pièges
  • Le calendrier plein de 1:1 récurrents encombre le rapport — Filtrer par motifs de titre d'événement ou nombre de participants — demander à Claude d'ignorer les 1:1 récurrents par défaut

Extraire des données structurées de Sheets désordonnées et réécrire les résultats

👤 Ops, finances, toute personne vivant dans des tableurs ⏱ ~20 min intermediate

Quand l'utiliser : Vous avez un classeur avec 1000 lignes de descriptions en texte libre à catégoriser.

Déroulement
  1. Lire la plage
    Use google-workspace-mcp. Read column B from Sheet 'Q4 expenses' — 1000 rows of vendor descriptions.✓ Copié
    → Lignes chargées ; échantillon affiché
  2. Catégoriser
    Categorize each row into: SaaS, hardware, travel, services, other. Show distribution first.✓ Copié
    → Tableau de distribution ; exemples de vérification
  3. Réécrire
    Write categories into column F. Add a header. Don't touch other columns.✓ Copié
    → Classeur mis à jour ; vous vérifiez manuellement un échantillon

Résultat : Données catégorisées dans le classeur, piste d'audit dans le chat.

Pièges
  • Claude écrase une colonne qui vous importait — Toujours spécifier explicitement la colonne cible ; vérifier quelques cellules avant l'écriture en masse

Générer automatiquement des docs de préparation de réunion depuis les invitations Calendar

👤 Toute personne avec des réunions dos à dos ⏱ ~15 min intermediate

Quand l'utiliser : Vous avez 5 réunions demain et aucun contexte.

Déroulement
  1. Scanner demain
    Use google-workspace-mcp. List tomorrow's meetings with attendees and any attached docs.✓ Copié
    → Bloc par réunion avec participants + docs liés
  2. Générer les fiches
    For each, create a Doc 'Prep — <meeting title>' summarizing attached docs + suggesting 3 questions to ask.✓ Copié
    → N Docs créés dans le dossier /Meeting prep/

Résultat : Entrer dans chaque réunion préparé, pas à l'improviste.

Pièges
  • Les participants externes ne peuvent pas voir votre doc de préparation, mais un titre partagé pourrait révéler des intentions — Utiliser un dossier de préparation privé ; titres comme «Prép — <sujet>» et non «<nom de deal sensible>»

Combinaisons

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

google-workspace-mcp + filesystem

Synchroniser les docs Drive en local pour l'édition hors ligne ou le suivi git

Pull all docs in /weekly-updates/ from Drive into ./drive-mirror/ as markdown.✓ Copié
google-workspace-mcp + github

Synchroniser les notes de version entre GitHub et un Doc

Take the latest GitHub release notes and append them to the 'Release log' Google Doc.✓ Copié

Outils

Ce que ce MCP expose

OutilEntréesQuand appelerCoût
search_gmail query: str (syntaxe Gmail), max_results? Trouver des emails correspondant à des critères en langage naturel 1 appel API Gmail
send_email to, subject, body, cc?, bcc? Uniquement en niveau extended/complete — ne jamais envoyer automatiquement sans confirmation 1 appel API
list_calendar_events calendar_id, time_min, time_max Récupérer une plage d'événements 1 appel API Calendar
read_sheet_range spreadsheet_id, range (notation A1) Récupérer des cellules d'un classeur 1 appel API Sheets
write_sheet_values spreadsheet_id, range, values[][] Mettre à jour des plages de classeur avec des données calculées 1 appel API
create_doc title, content (markdown) Générer de nouveaux docs depuis la sortie du chat 1 appel API Docs
search_drive query, mime_type? Localiser des fichiers par nom/contenu 1 appel API Drive

Coût et limites

Coût d'exécution

Quota d'API
Gmail : 250 unités de quota/utilisateur/sec ; Calendar : 500 req/100sec ; Sheets : 300 req/min/utilisateur
Tokens par appel
200–4000 selon l'appel (corps d'email complet vs métadonnées)
Monétaire
Gratuit pour les comptes Google personnels ; les organisations Workspace peuvent avoir des restrictions administrateur
Astuce
Utiliser --tool-tier core sauf si vous avez besoin de Forms/Slides/Apps-Script — moins d'outils = system prompt plus court

Sécurité

Permissions, secrets, portée

Portées minimales : gmail.readonly calendar.readonly drive.readonly
Stockage des identifiants : Cache de tokens local chiffré par défaut ; optionnel sur GCS pour l'hébergement
Sortie de données : Direct vers googleapis.com — pas de relais tiers
Ne jamais accorder : gmail.send (tant que vous n'avez pas compris le risque d'envoi automatique) drive (lecture/écriture complète partout)

Dépannage

Erreurs courantes et correctifs

Le callback OAuth échoue / le navigateur ne s'ouvre pas

Définir OAUTH_REDIRECT_PORT sur un port libre et relancer ; sur les machines sans tête, utiliser le mode device-flow

Vérifier : lsof -i :8080 pour confirmer que le port est libre
403 insufficient_permissions

Ré-authentifier avec la portée manquante ; vérifier que votre client OAuth l'autorise dans la Google Cloud Console

Vérifier : Décoder le token sur oauth2.googleapis.com/tokeninfo pour voir les portées accordées
L'administrateur Workspace bloque le client OAuth

Demander à l'administrateur d'ajouter votre client ID à la liste des applications de confiance, ou utiliser un compte Google personnel pour les tests

Quota dépassé lors d'opérations en masse

Ajouter un backoff ; le serveur respecte les en-têtes Retry-After mais les boucles en masse peuvent quand même dépasser les limites par seconde

Vérifier : Surveiller les HTTP 429 dans les logs

Alternatives

Google Workspace MCP vs autres

AlternativeQuand l'utiliserCompromis
Pipedream MCPVous voulez un OAuth géré + des intégrations Google prêtes à l'emploi sans auto-hébergementPayant à grande échelle ; les données transitent par Pipedream
Serveurs MCP par service (gmail-mcp, drive-mcp)Vous n'avez besoin que d'un seul service Google et souhaitez une surface de portée minimalePlusieurs flux OAuth + caches de tokens à gérer

Plus

Ressources

📖 Lire le README officiel sur GitHub

🐙 Voir les issues ouvertes

🔍 Parcourir les 400+ serveurs MCP et Skills