Automating Gmail and Google Calendar with PHP Agents ?⚡
le 11 mai 2025
Vous souhaitez consulter vos e-mails Gmail non lus et réserver un créneau pour y répondre, tout en codant ? Dans cet article, je vous explique comment j'ai automatisé l'ensemble de ce processus grâce à un serveur MCP personnalisé en PHP, connecté à Gmail et Google Agenda via Composio, et finalisé le tout avec un agent d'IA utilisant Uniflow et Neuron AI.
Plongeons-nous dans la pile complète !
Créer un serveur MCP PHP
J'ai d'abord créé un serveur MCP avec l'excellent package php-mcp/server. J'ai ainsi obtenu une configuration flexible et prête pour la production, avec prise en charge des annotations, de l'injection de dépendances, des transports personnalisés (HTTP, STDIO, etc.) et de la journalisation avancée.
composer create-project symfony/skeleton
composer require php-mcp/server
J'ai ensuite ajouté un outil basique (par exemple, Adder
) pour tester les interactions avec les clients MCP comme Cursor ou LangChain.
Configurer Nix au lieu de Docker
Pour garantir un environnement propre et reproductible, j'ai utilisé Nix au lieu de Docker. Avec le modèle nix-chain, j'ai préconfiguré PHP, Composer, Symfony CLI, PHPStan, PHPUnit et bien plus encore.
make nix
Mon environnement reste ainsi déclaratif et léger, idéal pour le partage ou l'intégration.
Connectez Gmail et Google Agenda via Composio 📧📅
Composio est comme Zapier pour les développeurs. Je l'ai connecté à mon serveur MCP à l'aide de leur SDK PHP (inspiré du SDK JS officiel) et j'ai ajouté des outils tels que :
GMAIL_FETCH_EMAILS
GMAIL_SEND_EMAIL
GOOGLECALENDAR_CREATE_EVENT
GOOGLECALENDAR_FIND_FREE_SLOTS
En utilisant l'interface de ligne de commande :
php bin/console app:generate-tools \
--entityId default \
--action GMAIL_FETCH_EMAILS \
--action GOOGLECALENDAR_FIND_FREE_SLOTS \
...
Mon serveur PHP peut désormais récupérer dynamiquement des actions en fonction des clés API et des identifiants d'entité.
Créer un agent IA avec Neuron AI 🧠
J'ai ensuite connecté le tout à Neuron AI, qui permet de créer des agents IA capables d'appeler directement les outils MCP. Mon agent reçoit une invite du type :
« Veuillez trouver mes e-mails importants non lus et planifier un créneau horaire pour y répondre.»
… et déclenche automatiquement les outils Gmail et Agenda.
Exécuter le workflow avec Uniflow 🛠️
Pour finaliser le workflow, j'ai utilisé Uniflow et son client PHP pour exécuter la logique de l'agent :
- Lire les e-mails importants
- Les résumer
- Réserver un créneau horaire gratuit sur Google Agenda
Le SDK PHP d'Uniflow facilite l'intégration à un système d'automatisation plus vaste ou à un SaaS.
Pourquoi PHP ? 💡 Alors que la plupart des outils Composio et LLM sont centrés sur JS ou Python, je voulais prouver qu'il est possible d'automatiser entièrement les processus à l'aide d'agents en PHP, et cela fonctionne à merveille !
Le résultat : un agent IA qui lit votre boîte de réception, priorise ce qui compte et vous fait gagner du temps.
Conseils et ressources bonus
- Utilisez
.cursor/mcp.json
pour déclarer vos outils MCP projet par projet - Passez de Docker à Nix pour une reproductibilité à l'échelle du système d'exploitation
- Explorez les astuces de codage Vibe de Langflow pour créer des workflows plus intelligents
- Observez votre agent via inspector.dev pour le débogage
🧪 Checkout the source code
You can checkout the source code of this article on Github here
Prêt à automatiser vos workflows ?
Si cet article vous a inspiré et que vous souhaitez de l'aide pour automatiser vos propres processus (e-mails, marketing, planification, scraping…), j'ai quelque chose pour vous !
Cliquez ici pour obtenir mon aide personnelle — et commençons à construire ensemble.
Ressources
- Top 10 des CONSEILS DE CODAGE VIBE pour les workflows pilotés par agents ? https://www.youtube.com/watch?v=L4Pe8MMhgsg
- js2php : https://github.com/jakubkulhan/js2php
- crédit fond Nastuh Abootalebi : https://unsplash.com/fr/photos/couloir-entre-les-portes-a-panneaux-de-verre-yWwob8kwOCk