Extension Chrome relie Google Messages à Claude Code via MCP

Intégration directe sans Docker ni serveurs cloud
Un développeur a créé une extension Chrome qui s'injecte dans les sessions Google Messages Web et les relie à Claude Code via le Model Context Protocol (MCP). L'architecture utilise un transport stdio entre Claude Code et un serveur MCP Node.js, qui communique avec l'extension Chrome via WebSocket sur localhost:7008.
Ce qui fonctionne vs les solutions existantes
Le développeur a d'abord essayé deux approches existantes :
- OpenMessage : Conteneur Docker utilisant le protocole libgm avec des sessions SSE qui expirent après quelques minutes d'inactivité, provoquant des erreurs "ID de session invalide". Il nécessite de redémarrer le conteneur Docker pour synchroniser les nouveaux messages et utilise 7 outils MCP (~1 500 jetons par conversation).
- TextBee : Application passerelle SMS Android qui route tous les messages SMS privés via des serveurs cloud (SMS uniquement, pas de RCS). Nécessite un serveur webhook plus un tunnel Tailscale/ngrok, totalisant cinq composants mobiles pour un simple envoi de textos.
La nouvelle approche par extension Chrome dispose de trois outils MCP fonctionnels avec une surcharge d'environ 300 jetons :
list_chats– Renvoie toutes les conversations avec noms, extraits et horodatagesread_messages– Fournit l'historique complet des messages avec direction envoyé/reçusend_message– Remplit le texte mais n'envoie pas réellement (fonctionne actuellement comme un outil de brouillon)
Le problème d'isolation d'Angular
Google Messages Web est une application Angular où les scripts de contenu de l'extension Chrome s'exécutent dans un "monde isolé" – un contexte JavaScript séparé de la page. Le zone.js d'Angular ne corrige que les écouteurs d'événements dans le monde principal, donc lorsque l'extension définit la valeur de la zone de texte et clique sur Envoyer :
- Le texte apparaît dans le champ ✓
- Le bouton d'envoi est cliqué ✓
- Le contrôle de formulaire d'Angular ne détecte pas le changement de valeur, donc le gestionnaire de clic pense que le champ est vide ✗
Solutions tentées
Le développeur a essayé plusieurs approches :
- Définition de valeur native + événements d'entrée
document.execCommand('insertText')- Séquence complète d'événements de souris (pointerdown/mousedown/mouseup/click)
- Simulation de touche Entrée
- Script de contenu Manifest V3
world: "MAIN"(s'approche le plus mais n'envoie toujours pas)
La sortie de débogage du script du monde principal montre : {"valueSet": true, "btnLabel": "Send end-to-end encrypted RCS message", "clicked": true, "inputAfter": "text still here...", "sentVia": "none"}
Solutions potentielles à explorer
Le développeur envisage :
- API
chrome.debuggerpour des événements d'entrée fiables - Accès à NgZone d'Angular via
__ngContext__sur les éléments DOM - CDP (Chrome DevTools Protocol) pour
Input.dispatchKeyEvent
Le projet est open source avec le dépôt à https://github.com/GURSEWAKSINGHSANDHU/google-messages-mcp et le suivi des problèmes à https://github.com/GURSEWAKSINGHSANDHU/google-messages-mcp/issues/1.
📖 Lire la source complète : r/ClaudeAI
👀 See Also

TradesMCP : Serveur MCP Open Source pour la Vérification des Licences de Contractants et les Données de Construction
TradesMCP est un serveur Model Context Protocol open source qui fournit à Claude un accès à des données réelles de licences d'entrepreneurs, de permis de construire, de prix des matériaux et de taux de main-d'œuvre. L'outil a correctement vérifié une licence d'entrepreneur active en Californie, là où ChatGPT a renvoyé des informations incorrectes.

PTC construit par l'utilisateur pour Claude Code montre 40 à 65 % d'économie de tokens sur les tâches d'analyse, pas sur l'écriture de code.
Un développeur a créé une implémentation locale de PTC appelée Thalamus pour Claude Code et a analysé 79 sessions réelles, constatant des économies de 40 à 65 % de tokens sur les tâches d'analyse mais des économies quasi nulles sur les tâches d'écriture de code. L'agent a principalement utilisé execute() pour des calculs Python généraux plutôt que pour regrouper des appels d'outils.
CTOP : Interface terminal pour surveiller les sessions Claude Code, zéro dépendance
CTOP est une interface utilisateur TUI Node.js sans dépendances qui affiche le CPU, la mémoire, la saturation de la fenêtre de contexte, la répartition des tokens et les estimations de coût pour toutes les sessions Claude Code et Codex en cours.

Claude Code ajoute un système de révision par équipe d'agents en prévisualisation de recherche
Claude Code intègre désormais un système complet de revue de code inspiré du processus interne d'Anthropic, utilisant des équipes d'agents. Cette fonctionnalité est disponible en version de recherche.