Quotidien Shaarli
June 12, 2025
L'auteur utilise une histoire pour rappeler que les migrations Doctrine sont à privilégier, même et surtout pour les insertions manuelles.
Le Model Context Protocol (MCP) est un protocole standardisé qui permet aux modèles de langage d'accéder en temps réel au contexte spécifique des utilisateurs à partir de diverses sources de données. Ce protocole a été rapidement adopté par des entreprises majeures comme OpenAI, Google et Microsoft, démontrant son importance croissante dans l'industrie. Le MCP facilite l'intégration des modèles de langage avec des sources de données externes, telles que les outils de développement et les systèmes CRM, en s'appuyant sur les fondations du Language Server Protocol (LSP). Il résout un problème fondamental des modèles de langage en leur permettant d'accéder à des données privées ou spécifiques à une organisation, offrant ainsi des intégrations plus profondes et des réponses plus pertinentes.
L'article présente une implémentation d'un serveur MCP en utilisant TypeScript et le SDK officiel @modelcontextprotocol/sdk
. L'exemple illustre un système de classement spatial avec des astronautes et des planètes. Voici les points clés de cette implémentation :
-
Structure du Serveur : La classe principale du serveur MCP est créée en héritant de la classe
Server
du SDK MCP. Elle est configurée avec des capacités pour les outils, les ressources et les prompts. -
Outils (Tools) : Les outils permettent aux modèles de langage d'effectuer des actions spécifiques. Dans cet exemple, des outils sont définis pour rechercher un astronaute, ajouter des points à un astronaute, et obtenir le classement des planètes. Chaque outil est décrit avec un schéma de validation utilisant Zod pour garantir la robustesse des entrées.
-
Ressources (Resources) : Les ressources fournissent un accès structuré à des données statiques ou de référence. Dans cet exemple, une ressource est définie pour accéder aux règles du système de classement spatial.
-
Prompts : Les prompts sont des templates de conversation réutilisables qui peuvent être paramétrés dynamiquement. Un exemple de prompt est fourni pour générer un rapport hebdomadaire des performances.
-
Transport : Le serveur MCP peut utiliser différents types de transport pour communiquer avec les clients, tels que STDIO pour les applications desktop et SSE pour les applications web.
-
Test et Débogage : L'article utilise l'inspecteur MCP pour tester et déboguer le serveur. Cet outil permet d'explorer et de tester les outils, les ressources et les prompts de manière interactive.
-
Intégration avec Claude Desktop : Enfin, l'article montre comment intégrer le serveur MCP avec Claude Desktop, un client MCP populaire, pour permettre des interactions enrichies et contextualisées.
Cette implémentation illustre comment créer un serveur MCP fonctionnel et l'intégrer dans un environnement de développement pour enrichir les interactions avec les modèles de langage.
Le travail occupe une grande partie de notre vie, influençant non seulement nos finances, mais aussi notre communauté et notre identité. Bien que l'argent soit important, il ne garantit pas le bonheur et doit être considéré parmi d'autres facteurs. Choisir une carrière basée uniquement sur ses talents peut être trompeur, car ils ne correspondent pas toujours à des emplois viables. Les premiers emplois devraient être choisis pour leur potentiel d'apprentissage plutôt que pour le salaire, et il est crucial de rester ouvert et flexible face aux opportunités. Enfin, le réseautage et le choix du lieu de travail jouent un rôle clé dans le succès et la satisfaction professionnelle.
Le développement de l'application PeerTube a conduit à l'adoption de Flutter pour le développement multiplateforme, permettant une seule base de code pour Android et iOS, réduisant ainsi les coûts et les efforts de maintenance. L'équipe a dû se former à Flutter et à Dart, en utilisant diverses ressources pour maîtriser ces technologies. Une architecture "feature-first" a été choisie pour organiser le code par fonctionnalité, favorisant la modularité et la clarté du projet. Plusieurs dépendances ont été soigneusement sélectionnées, comme Riverpod pour la gestion d'état et GoRouter pour la navigation, tout en rencontrant des défis avec certaines bibliothèques comme Chewie pour la lecture vidéo.
À force de chercher des textes générés par l'IA, on finit par trouver plein de faux positifs... Là, c'est le Hollandais Volant qui en est victime, tout ça parce qu'il utilise correctement la typographie. Comme il l'explique lui-même dans son article, ça peut poser de vrais problèmes pour certains : thésards accusés injustement, etc.
L'article rappelle l'intérêt des connexions SSH sans mot de passe. Il détaille ensuite, étape par étape, comment générer une clé SSH et configurer l'accès sans mot de passe. Il donne quelques conseils pour renforcer la sécurité, et répond à quelques questions courantes. Enfin, il présente les bonnes pratiques : renouvellement périodique des clés, etc.