Les prompts dans MCP définissent un ensemble de messages utilisateur et assistant qui peuvent être utilisés par le client. Ces prompts doivent être de haute qualité, bien testés et pertinents par rapport à l'objectif global du serveur MCP.

Implémentation de List Prompts
La première étape consiste à implémenter la méthode list_prompts dans votre client MCP. Cette méthode récupère tous les prompts disponibles depuis le serveur :
async def list_prompts(self) -> list[types.Prompt]:
result = await self.session().list_prompts()
return result.promptsCette implémentation simple appelle la méthode list_prompts de la session et renvoie le tableau de prompts issu du résultat.
Récupération de prompts individuels
La méthode get_prompt récupère un prompt spécifique avec des arguments interpolés dans celui-ci. Lorsque vous demandez un prompt, vous fournissez des arguments qui sont transmis à la fonction de prompt en tant qu'arguments nommés :
async def get_prompt(self, prompt_name, args: dict[str, str]):
result = await self.session().get_prompt(prompt_name, args)
return result.messagesLa méthode renvoie les messages issus du résultat, qui forment une conversation pouvant être directement transmise à Claude.
Comment fonctionnent les arguments de prompt
Lorsque vous définissez une fonction de prompt côté serveur, elle peut accepter des paramètres. Par exemple, un prompt de formatage de document pourrait attendre un paramètre doc_id :
def format_document(doc_id: str):
# The doc_id gets interpolated into the promptLorsque le client appelle get_prompt, le dictionnaire d'arguments doit contenir les clés attendues. Le serveur MCP transmettra celles-ci en tant qu'arguments nommés à la fonction de prompt, permettant d'insérer du contenu dynamique dans le modèle de prompt.
Test des prompts dans la CLI
Une fois implémentés, vous pouvez tester les prompts via l'interface en ligne de commande. Lorsque vous tapez une barre oblique, les prompts disponibles apparaissent comme des commandes. La sélection d'un prompt peut vous inviter à choisir parmi les options disponibles (comme des identifiants de document), puis le prompt complet est envoyé à Claude.

Le flux de travail se déroule ainsi :
- L'utilisateur sélectionne un prompt (comme « format »)
- Le système demande les arguments requis (comme le document à formater)
- Le prompt est envoyé à Claude avec les valeurs interpolées
- Claude peut alors utiliser des outils pour récupérer des données supplémentaires et accomplir la tâche

Bonnes pratiques pour les prompts
Lors de la création de prompts pour votre serveur MCP :
- Rendez-les pertinents par rapport à l'objectif de votre serveur
- Testez-les minutieusement avant le déploiement
- Utilisez des instructions claires et précises
- Concevez-les pour qu'ils fonctionnent bien avec vos outils disponibles
- Réfléchissez aux arguments que les utilisateurs devront fournir
Les prompts comblent l'écart entre les fonctionnalités prédéfinies et les besoins dynamiques des utilisateurs, offrant à Claude des points de départ structurés pour des tâches complexes tout en conservant de la flexibilité grâce à la paramétrisation.