Communitygithub.com

agencelutie/LP-lutie

Guide pour créer des serveurs MCP (Model Context Protocol) de haute qualité permettant aux LLM d'interagir avec des services externes via des outils bien conçus. À utiliser lors de la création de serveurs MCP pour intégrer des API ou services externes, en Python (FastMCP) ou Node/TypeScript (MCP SDK).

Qu'est-ce que LP-lutie ?

Ce guide fournit une méthodologie complète pour développer des serveurs MCP (Model Context Protocol) robustes et efficaces. Il détaille quatre phases principales : recherche et planification, implémentation, test et révision, puis création d'évaluations. Le guide met l'accent sur l'utilisation de TypeScript (recommandé) ou Python, et couvre les aspects cruciaux comme la couverture d'API complète, la découverte des outils, la gestion du contexte, les messages d'erreur exploitables, et l'utilisation de schémas d'entrée/sortie avec Zod ou Pydantic. Il inclut des conseils sur les transports (streamable HTTP pour les serveurs distants, stdio pour les serveurs locaux) et propose des références vers la documentation officielle du protocole MCP, celle des SDK, ainsi que des guides d'implémentation spécifiques à chaque langage. Enfin, il guide l'utilisateur dans la création d'évaluations pour vérifier l'efficacité du serveur MCP avec des questions réalistes et complexes.

Compatible avec~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/agencelutie/LP-lutie/tree/main/skills-export/examples/mcp-builder

Demander à votre IA préférée

Ouvre une nouvelle conversation avec cette compétence d'agent déjà préchargée.

Documentation

Guide de développement de serveurs MCP

Aperçu

Créez des serveurs MCP (Model Context Protocol) qui permettent aux LLM d'interagir avec des services externes grâce à des outils bien conçus. La qualité d'un serveur MCP se mesure à sa capacité à permettre aux LLM d'accomplir des tâches concrètes.


Processus

🚀 Flux de travail de haut niveau

La création d'un serveur MCP de haute qualité comporte quatre phases principales :

Phase 1 : Recherche et planification approfondies

1.1 Comprendre la conception MCP moderne

Couverture d'API vs. Outils de workflow : Trouvez un équilibre entre la couverture complète des points d'API et les outils de workflow spécialisés. Les outils de workflow peuvent être plus pratiques pour des tâches spécifiques, tandis qu'une couverture complète donne aux agents la flexibilité de composer des opérations. Les performances varient selon le client – certains clients bénéficient de l'exécution de code qui combine des outils de base, tandis que d'autres fonctionnent mieux avec des workflows de plus haut niveau. En cas de doute, privilégiez une couverture d'API complète.

Nommage et découvrabilité des outils : Des noms d'outils clairs et descriptifs aident les agents à trouver rapidement les bons outils. Utilisez des préfixes cohérents (par exemple, github_create_issue, github_list_repos) et un nommage orienté action.

Gestion du contexte : Les agents bénéficient de descriptions d'outils concises et de la capacité de filtrer/paginer les résultats. Concevez des outils qui renvoient des données pertinentes et ciblées. Certains clients prennent en charge l'exécution de code, ce qui peut aider les agents à filtrer et traiter les données efficacement.

Messages d'erreur exploitables : Les messages d'erreur doivent guider les agents vers des solutions avec des suggestions spécifiques et des étapes suivantes.

1.2 Étudier la documentation du protocole MCP

Naviguer dans la spécification MCP :

Commencez par le plan du site pour trouver les pages pertinentes : https://modelcontextprotocol.io/sitemap.xml

Ensuite, récupérez des pages spécifiques avec le suffixe .md pour le format markdown (par exemple, https://modelcontextprotocol.io/specification/draft.md).

Pages clés à consulter :

  • Aperçu et architecture de la spécification
  • Mécanismes de transport (HTTP streamable, stdio)
  • Définitions des outils, ressources et prompts

1.3 Étudier la documentation du framework

Stack recommandé :

  • Langage : TypeScript (support SDK de haute qualité et bonne compatibilité dans de nombreux environnements d'exécution, par exemple MCPB. De plus, les modèles d'IA sont doués pour générer du code TypeScript, bénéficiant de son utilisation répandue, de son typage statique et de ses bons outils de linting)
  • Transport : HTTP streamable pour les serveurs distants, utilisant du JSON sans état (plus simple à mettre à l'échelle et à maintenir, par opposition aux sessions avec état et aux réponses en streaming). stdio pour les serveurs locaux.

Charger la documentation du framework :

Pour TypeScript (recommandé) :

  • SDK TypeScript : Utilisez WebFetch pour charger https://raw.githubusercontent.com/modelcontextprotocol/typescript-sdk/main/README.md
  • ⚡ Guide TypeScript - Modèles et exemples TypeScript

Pour Python :

  • SDK Python : Utilisez WebFetch pour charger https://raw.githubusercontent.com/modelcontextprotocol/python-sdk/main/README.md
  • 🐍 Guide Python - Modèles et exemples Python

1.4 Planifier votre implémentation

Comprendre l'API : Consultez la documentation de l'API du service pour identifier les points d'API clés, les exigences d'authentification et les modèles de données. Utilisez la recherche Web et WebFetch si nécessaire.

Sélection des outils : Privilégiez une couverture d'API complète. Listez les points d'API à implémenter, en commençant par les opérations les plus courantes.


Phase 2 : Implémentation

2.1 Configurer la structure du projet

Consultez les guides spécifiques aux langages pour la configuration du projet :

2.2 Implémenter l'infrastructure de base

Créez des utilitaires partagés :

  • Client API avec authentification
  • Aides à la gestion des erreurs
  • Mise en forme des réponses (JSON/Markdown)
  • Support de la pagination

2.3 Implémenter les outils

Pour chaque outil :

Schéma d'entrée :

  • Utilisez Zod (TypeScript) ou Pydantic (Python)
  • Incluez des contraintes et des descriptions claires
  • Ajoutez des exemples dans les descriptions des champs

Schéma de sortie :

  • Définissez outputSchema lorsque c'est possible pour les données structurées
  • Utilisez structuredContent dans les réponses des outils (fonctionnalité du SDK TypeScript)
  • Aide les clients à comprendre et à traiter les sorties des outils

Description de l'outil :

  • Résumé concis des fonctionnalités
  • Descriptions des paramètres
  • Schéma du type de retour

Implémentation :

  • Async/await pour les opérations d'E/S
  • Gestion des erreurs appropriée avec des messages exploitables
  • Prise en charge de la pagination le cas échéant
  • Renvoyez à la fois le contenu textuel et les données structurées lors de l'utilisation des SDK modernes

Annotations :

  • readOnlyHint : true/false
  • destructiveHint : true/false
  • idempotentHint : true/false
  • openWorldHint : true/false

Phase 3 : Révision et test

3.1 Qualité du code

Vérifiez :

  • Absence de code dupliqué (principe DRY)
  • Gestion cohérente des erreurs
  • Couverture complète des types
  • Descriptions d'outils claires

3.2 Construction et test

TypeScript :

  • Exécutez npm run build pour vérifier la compilation
  • Testez avec MCP Inspector : npx @modelcontextprotocol/inspector

Python :

  • Vérifiez la syntaxe : python -m py_compile votre_serveur.py
  • Testez avec MCP Inspector

Consultez les guides spécifiques aux langages pour des approches de test détaillées et des listes de contrôle qualité.


Phase 4 : Créer des évaluations

Après avoir implémenté votre serveur MCP, créez des évaluations complètes pour tester son efficacité.

Chargez ✅ Guide d'évaluation pour des directives d'évaluation complètes.

4.1 Comprendre l'objectif de l'évaluation

Utilisez les évaluations pour tester si les LLM peuvent utiliser efficacement votre serveur MCP pour répondre à des questions réalistes et complexes.

4.2 Créer 10 questions d'évaluation

Pour créer des évaluations efficaces, suivez le processus décrit dans le guide d'évaluation :

  1. Inspection des outils : Listez les outils disponibles et comprenez leurs capacités
  2. Exploration du contenu : Utilisez des opérations READ-ONLY pour explorer les données disponibles
  3. Génération de questions : Créez 10 questions complexes et réalistes
  4. Vérification des réponses : Résolvez chaque question vous-même pour vérifier les réponses

4.3 Exigences d'évaluation

Assurez-vous que chaque question :

  • Indépendante : Ne dépend pas d'autres questions
  • Lecture seule : Nécessite uniquement des opérations non destructives
  • Complexe : Nécessite plusieurs appels d'outils et une exploration approfondie
  • Réaliste : Basée sur des cas d'utilisation réels que les humains trouveraient pertinents
  • Vérifiable : Réponse unique et claire pouvant être vérifiée par comparaison de chaînes
  • Stable : La réponse ne change pas avec le temps

4.4 Format de sortie

Créez un fichier XML avec cette structure :

<evaluation>
  <qa_pair>
    <question>Trouvez des discussions sur les lancements de modèles d'IA avec des noms de code d'animaux. Un modèle avait besoin d'une désignation de sécurité spécifique qui utilise le format ASL-X. Quel nombre X était déterminé pour le modèle nommé d'après un chat sauvage tacheté ?</question>
    <answer>3</answer>
  </qa_pair>
<!-- Plus de qa_pairs... -->
</evaluation>

Fichiers de référence

📚 Bibliothèque de documentation

Chargez ces ressources selon les besoins pendant le développement :

Documentation MCP de base (à charger en premier)

  • Protocole MCP : Commencez par le plan du site à https://modelcontextprotocol.io/sitemap.xml, puis récupérez des pages spécifiques avec le suffixe .md
  • 📋 Meilleures pratiques MCP - Directives MCP universelles incluant :
    • Conventions de nommage des serveurs et outils
    • Directives de format de réponse (JSON vs Markdown)
    • Meilleures pratiques de pagination
    • Sélection du transport (HTTP streamable vs stdio)
    • Normes de sécurité et de gestion des erreurs

Documentation SDK (à charger pendant la phase 1/2)

  • SDK Python : Récupérez depuis https://raw.githubusercontent.com/modelcontextprotocol/python-sdk/main/README.md
  • SDK TypeScript : Récupérez depuis https://raw.githubusercontent.com/modelcontextprotocol/typescript-sdk/main/README.md

Guides d'implémentation spécifiques aux langages (à charger pendant la phase 2)

  • 🐍 Guide d'implémentation Python - Guide Python/FastMCP complet avec :

    • Modèles d'initialisation du serveur
    • Exemples de modèles Pydantic
    • Enregistrement des outils avec @mcp.tool
    • Exemples fonctionnels complets
    • Liste de contrôle qualité
  • ⚡ Guide d'implémentation TypeScript - Guide TypeScript complet avec :

    • Structure du projet
    • Modèles de schémas Zod
    • Enregistrement des outils avec server.registerTool
    • Exemples fonctionnels complets
    • Liste de contrôle qualité

Guide d'évaluation (à charger pendant la phase 4)

  • ✅ Guide d'évaluation - Guide complet de création d'évaluations avec :
    • Directives de création de questions
    • Stratégies de vérification des réponses
    • Spécifications du format XML
    • Exemples de questions et réponses
    • Exécution d'une évaluation avec les scripts fournis

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

agencelutie/LP-lutie

Creating algorithmic art using p5.js with seeded randomness and interactive parameter exploration. Use this when users request creating art using code, generative art, algorithmic art, flow fields, or particle systems. Create original algorithmic art rather than copying existing artists' work to avoid copyright violations.

agencelutie/LP-lutie

Submit expense reimbursements through Benepass (app.getbenepass.com). For users whose employer uses Benepass as their benefits platform. Handles login, benefit selection, form filling, receipt upload, and submission. Requires browser/computer-use capabilities.

agencelutie/LP-lutie

Applies Anthropic's official brand colors and typography to any sort of artifact that may benefit from having Anthropic's look-and-feel. Use it when brand colors or style guidelines, visual formatting, or company design standards apply.

agencelutie/LP-lutie

Make a phone call to book an appointment or reservation. Checks calendar first, gets explicit consent before dialing, discloses AI identity on the call, and adds the booking to calendar when done.

agencelutie/LP-lutie

Cancel a subscription or unsubscribe from a service. Works from a description, a pasted charge line, a URL, or a photo/screenshot. Can also audit a full statement for recurring charges and cancel several at once. Finds the right contact method and handles the cancellation — including phone calls.

agencelutie/LP-lutie

Create beautiful visual art in .png and .pdf documents using design philosophy. You should use this skill when the user asks to create a poster, piece of art, design, or other static piece. Create original visual designs, never copying existing artists' work to avoid copyright violations.

agencelutie/LP-lutie

Guide users through a structured workflow for co-authoring documentation. Use when user wants to write documentation, proposals, technical specs, decision docs, or similar structured content. This workflow helps users efficiently transfer context, refine content through iteration, and verify the doc works for readers. Trigger when user mentions writing docs, creating proposals, drafting specs, or similar documentation tasks.

agencelutie/LP-lutie

Help plan an event — from a birthday dinner to a wedding. Scales to the size of the occasion. Handles venue research, guest lists, timelines, vendors, and budgets.

agencelutie/LP-lutie

Help submit an expense or reimbursement on any platform. Detects the right tool (Benepass, Brex, Concur, Expensify, etc.), finds receipts, checks for duplicates, and walks through submission.

agencelutie/LP-lutie

Handle small bureaucratic tasks — jury duty responses, parking tickets, passport renewals, DMV forms, permit applications, and other government or administrative paperwork.

agencelutie/LP-lutie

Run financial calculations and scenario comparisons — tax estimates, loan comparisons, retirement projections, rent vs. buy, investment scenarios, and more. Pure math, no accounts or logins needed.

agencelutie/LP-lutie

Help order groceries for delivery. Concierge-style flow — store selection, occasion-based list building, budget tracking, and cart assembly.

agencelutie/LP-lutie

Help find and book a service provider for a task — cleaning, handyman, moving, assembly, yard work, errands, etc. Searches TaskRabbit, Handy, Thumbtack, and similar platforms.

agencelutie/LP-lutie

A set of resources to help me write all kinds of internal communications, using the formats that my company likes to use. Claude should use this skill whenever asked to write some sort of internal communications (status reports, leadership updates, 3P updates, company newsletters, FAQs, incident reports, project updates, etc.).

agencelutie/LP-lutie

Help order food timed to arrive at a specific time. Works backward from target arrival, suggests restaurants, builds cart, and monitors delivery.

agencelutie/LP-lutie

Refill a prescription at a pharmacy. Works from a medication name, an Rx number, a photo of the bottle, or just "I'm running low." Confirms exactly what's being requested, gathers everything the pharmacy will ask for up front, and handles the refill online or by phone — whichever is fastest.

agencelutie/LP-lutie

Help return an item or request a refund from any retailer. Identifies the item, finds the return policy, navigates the process, and handles shipping labels or phone calls.

agencelutie/LP-lutie

Create distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, artifacts, posters, or applications (examples include websites, landing pages, dashboards, React components, HTML/CSS layouts, or when styling/beautifying any web UI). Generates creative, polished code and UI design that avoids generic AI aesthetics.

agencelutie/LP-lutie

Landing page quality assessment for paid advertising campaigns. Evaluates message match, page speed, mobile experience, trust signals, form optimization, and conversion rate potential. Use when user says "landing page", "post-click experience", "landing page audit", "conversion rate", or "landing page optimization".

agencelutie/LP-lutie

Generate structured landing page copy with hero, body, proof, and CTA sections. Framework-agnostic - adapts approach based on awareness level and offer type.

Skills associés