CommencerCommencez gratuitement

Définir des ressources de serveur MCP

Vous étendez votre serveur MCP pour la conversion de devises afin de lui donner accès à la liste des devises prises en charge par l'API que vous utilisez. La Banque centrale européenne publie une liste de codes de devises dans un fichier nommé currencies.txt, disponible dans le répertoire de votre serveur. Le client pourra s'en servir pour garantir que le LLM transmet les bonnes valeurs d'arguments aux fonctions d'outil.

Votre tâche est de définir une ressource MCP appelée get_currencies() qui lit le contenu de currencies.txt.

Cet exercice fait partie du cours

<cours>Introduction au Model Context Protocol (MCP)</cours>
Voir le cours

Instructions de l’exercice

  • Utilisez le bon décorateur et l'URI "file://currencies.txt" pour transformer la fonction get_currencies() en ressource.
  • Complétez la fonction get_currencies() pour ouvrir et lire le contenu du fichier currencies.txt.
  • Affichez le résultat de l'appel à get_currencies() pour vérifier que la ressource fonctionne correctement.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

from mcp.server.fastmcp import FastMCP

mcp = FastMCP("Currency Converter")

# Define a resource for the currencies file
____
def get_currencies() -> str:
    """
    Get the list of currency names published by the European Central Bank for currency conversion.

    Returns:
        Contents of the currencies.txt file with currency names
    """
    # Open currencies.txt and read the data
    try:
        with open('____', 'r') as f:
            content = f.____
        return content
    except FileNotFoundError:
        return "currencies.txt file not found"

# Test the resource function
print(____)
Modifier et exécuter le code