Definindo recursos em servidores MCP
Você está expandindo seu servidor MCP para conversão de moedas para dar a ele acesso à lista de moedas compatíveis com a API que você está usando. O Banco Central Europeu publica uma lista de códigos de moeda em um arquivo chamado currencies.txt, disponível no diretório do seu servidor. Isso pode ser usado pelo cliente para garantir que o LLM esteja passando os valores corretos de argumentos para as funções de ferramenta.
Sua tarefa é definir um recurso MCP chamado get_currencies() que leia o conteúdo de currencies.txt.
Este exercicio faz parte do curso
Introdução ao Model Context Protocol (MCP)
Instruções do exercicio
- Use o decorador correto e a URI
"file://currencies.txt"para transformar a funçãoget_currencies()em um recurso. - Complete a função
get_currencies()para abrir e ler o conteúdo do arquivocurrencies.txt. - Imprima o resultado da chamada
get_currencies()para verificar se o recurso funciona corretamente.
exercicio interativo prático
Tente este exercicio completando este código de exemplo.
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(____)