# 🤖 Workflow N8N - Tech News to Memento ## 📋 Description Ce workflow automatise la veille technologique en : 1. **Lisant** un flux RSS TechCrunch (ou autre source tech) 2. **Analysant** les articles avec GPT-4o-mini 3. **Sélectionnant** les 2 actualités les plus pertinentes 4. **Créant** automatiquement 2 notes dans Memento via MCP ## 🔧 Architecture du Workflow ### 1. **Schedule Trigger** ⏰ - Exécution automatique toutes les **6 heures** - Configurable selon vos besoins ### 2. **RSS Feed Reader** 📰 - Source par défaut : TechCrunch Feed - Alternatives possibles : - Hacker News: `https://news.ycombinator.com/rss` - The Verge: `https://www.theverge.com/rss/index.xml` - Ars Technica: `https://feeds.arstechnica.com/arstechnica/index` - MIT Technology Review: `https://www.technologyreview.com/feed/` ### 3. **Prepare AI Analysis** 🧮 - Formate les articles pour l'analyse IA - Crée un prompt système optimisé - Structure les données pour OpenAI ### 4. **OpenAI Agent** 🤖 **Modèle :** GPT-4o-mini **Temperature :** 0.3 (réponses cohérentes) **Max Tokens :** 500 **Prompt Système :** ``` Tu es un expert en analyse d'actualités technologiques. Ta mission est de sélectionner les 2 articles les plus pertinents et importants parmi une liste d'actualités. Tu dois être objectif, privilégier l'innovation et l'impact réel. Réponds UNIQUEMENT en JSON valide, sans markdown ni texte supplémentaire. ``` **Critères de sélection :** - ✅ Innovation majeure ou rupture technologique - ✅ Impact significatif sur l'industrie tech - ✅ Actualité récente et importante - ❌ Éviter articles marketing/promotionnels - ✅ Privilégier annonces concrètes ### 5. **Parse Selection** 🔍 - Parse la réponse JSON de l'IA - Gère les formats markdown et JSON brut - Fallback sur les 2 premiers articles en cas d'erreur ### 6. **Format Note** 📝 Crée une note structurée avec : - 📰 Titre de l'article - 🔍 Raison de la sélection (par l'IA) - 📝 Résumé/description - 🔗 Lien vers l'article complet - 📅 Date de publication - 🏷️ Catégories/tags **Couleur :** Bleu (tech) **Labels :** `Tech News`, `Auto-Generated`, + catégories de l'article ### 7. **MCP - Create Note** 💾 - Appelle le MCP server sur `http://localhost:3001/sse` - Utilise le tool `create_note` - Format JSON-RPC 2.0 **Payload exemple :** ```json { "jsonrpc": "2.0", "id": 1704380400, "method": "tools/call", "params": { "name": "create_note", "arguments": { "title": "📰 Major AI Breakthrough Announced...", "content": "📰 **Full Title**\n\n🔍 **Pourquoi cet article ?**\n...", "color": "blue", "type": "text", "labels": ["Tech News", "Auto-Generated", "AI"] } } } ``` ### 8. **Extract Result & Summary** ✅ - Extrait l'ID et le titre des notes créées - Crée un résumé d'exécution - Status de succès/échec ## 🚀 Installation ### Prérequis 1. **N8N** installé et opérationnel 2. **MCP Server** tournant sur port 3001 3. **Clé API OpenAI** configurée 4. **Memento** accessible sur localhost:3000 ### Étapes 1. **Démarrer le MCP Server** ```powershell cd d:\dev_new_pc\Keep\mcp-server node index-sse.js ``` 2. **Vérifier que Memento tourne** ```powershell cd d:\dev_new_pc\Keep\keep-notes npm run dev ``` 3. **Importer le workflow dans N8N** - Ouvrir N8N (http://localhost:5678) - Cliquer "Import from File" - Sélectionner `n8n-tech-news-workflow.json` 4. **Configurer les credentials OpenAI** - Node "OpenAI - Select Best Articles" - Ajouter votre clé API OpenAI - Tester la connexion 5. **Activer le workflow** - Cliquer sur "Active" en haut à droite - Le workflow s'exécutera toutes les 6 heures ## 🧪 Test Manuel 1. Ouvrir le workflow dans N8N 2. Cliquer sur "Execute Workflow" (éclair ⚡) 3. Vérifier les résultats : - RSS feed récupéré ✅ - IA sélectionné 2 articles ✅ - 2 notes créées dans Memento ✅ ## 📊 Monitoring ### Vérifier les notes créées **Via l'interface Memento :** - Ouvrir http://localhost:3000 - Chercher les notes avec label "Tech News" - Notes en bleu avec icône 📰 **Via MCP :** ```bash curl -X POST http://localhost:3001/sse \ -H "Content-Type: application/json" \ -d '{ "jsonrpc": "2.0", "id": 1, "method": "tools/call", "params": { "name": "get_notes", "arguments": { "search": "Tech News" } } }' ``` ## 🎯 Personnalisation ### Changer la source RSS Dans le node "RSS Feed - Tech News" : ```javascript // Remplacer l'URL par : "https://feeds.feedburner.com/venturebeat/SZYF" // VentureBeat "https://www.wired.com/feed/rss" // Wired "https://techcrunch.com/feed/" // TechCrunch Alt ``` ### Modifier les critères de sélection Dans le node "Prepare AI Analysis", modifier le prompt : ```javascript Critères de sélection : - Focus sur [IA / Blockchain / Cloud / DevOps / ...] - Articles en français uniquement - Durée de lecture < 10 min - etc. ``` ### Changer la fréquence Dans le node "Schedule - Every 6 hours" : - **Toutes les 3h** : `hoursInterval: 3` - **Tous les jours à 9h** : `cronExpression: "0 9 * * *"` - **Du lundi au vendredi** : `cronExpression: "0 9 * * 1-5"` ### Modifier le nombre d'articles Dans "Prepare AI Analysis" : ```javascript // Passer de 2 à 3 articles "sélectionnez les 3 articles les PLUS PERTINENTS" // Adapter la structure JSON { "selected": [ { "index": 1, "reason": "..." }, { "index": 2, "reason": "..." }, { "index": 3, "reason": "..." } ] } ``` ### Changer la couleur/labels Dans le node "Format Note" : ```javascript color: 'orange', // ou red, green, purple, etc. labels: ['AI News', 'Breaking', 'Important'] ``` ## 🐛 Troubleshooting ### Erreur "MCP Server not responding" ```bash # Vérifier que le MCP server tourne curl http://localhost:3001/sse # Redémarrer si nécessaire cd d:\dev_new_pc\Keep\mcp-server node index-sse.js ``` ### Erreur OpenAI "Rate limit exceeded" - Attendre quelques minutes - Réduire la fréquence du workflow - Upgrader votre plan OpenAI ### Pas d'articles sélectionnés - Vérifier le flux RSS (URL valide ?) - Tester le prompt OpenAI manuellement - Vérifier les logs N8N ### Notes non créées ```javascript // Vérifier le payload MCP dans le node "MCP - Create Note" console.log($json); // Tester directement avec curl curl -X POST http://localhost:3001/sse \ -H "Content-Type: application/json" \ -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"create_note","arguments":{"title":"Test","content":"Test"}}}' ``` ## 📈 Optimisations Possibles 1. **Multi-sources RSS** - Ajouter plusieurs nodes RSS - Merger les résultats - Augmenter à 5-10 articles sélectionnés 2. **Filtering avancé** - Ajouter des keywords à exclure - Filtrer par date (dernières 24h uniquement) - Éliminer les doublons 3. **Enrichissement** - Scraper le contenu complet de l'article - Générer un résumé avec GPT - Ajouter des images via API 4. **Notifications** - Envoyer email avec les articles sélectionnés - Notification Slack/Discord - Push notification mobile 5. **Analytics** - Logger les articles sélectionnés - Stats sur les sources les plus utilisées - Tendances des sujets tech ## 🔐 Sécurité - ⚠️ Ne pas exposer le MCP server sur internet - ⚠️ Sécuriser la clé API OpenAI - ✅ Utiliser variables d'environnement pour secrets - ✅ Limiter rate limiting sur le RSS ## 📚 Ressources - [N8N Documentation](https://docs.n8n.io/) - [MCP Protocol Spec](https://modelcontextprotocol.io/) - [OpenAI API](https://platform.openai.com/docs) - [RSS Feeds Tech](https://github.com/awesome-rss/awesome-rss) ## 🎉 Résultat Attendu Toutes les 6 heures, vous aurez automatiquement : - ✅ **2 notes** dans Memento - 📰 Sur les **actualités tech les plus importantes** - 🤖 **Sélectionnées par IA** - 🏷️ **Labellisées** et organisées - 🔗 Avec **liens** vers articles complets **Gain de temps :** ~30 min de veille manuelle par jour = **3.5h par semaine** ! 🚀