Inizia subitoInizia gratis

Recuperare un prompt dal client

Ora recupera un prompt specifico dal server delle valute con l'input dell'utente, così il template e la richiesta dell'utente vengono combinati. Questo è ciò che passeresti a un LLM prima che decida se chiamare lo strumento di conversione.

Questo esercizio fa parte del corso

Introduzione al Model Context Protocol (MCP)

Visualizza corso

Istruzioni dell'esercizio

  • Dopo aver inizializzato la sessione, chiama il metodo per ottenere un prompt per nome, passando il nome del prompt e un dizionario arguments con l'input dell'utente.
  • Estrai e stampa il contenuto testuale del primo messaggio nel risultato del prompt.

esercizio interattivo pratico

Prova questo esercizio completando questo codice di esempio.

from mcp import ClientSession, StdioServerParameters
from mcp.client.stdio import stdio_client

async def read_prompt(user_input: str = "How much is 50 GBP in euros?", prompt_name: str = "convert_currency_prompt") -> str:
    """Retrieve a prompt from the MCP server with user input."""
    params = StdioServerParameters(command=sys.executable, args=["currency_server.py"])

    async with stdio_client(params) as (reader, writer):
        async with ClientSession(reader, writer) as session:
            await session.initialize()

            # Retrieve the prompt with the user's input
            prompt = await session.____(prompt_name, arguments={"currency_request": user_input})

            # Print the full prompt text (template + user request)
            text = prompt.____[0].____.____
            print(text)
            return text

asyncio.run(read_prompt(user_input="How much is 50 GBP in euros?"))
Modifica ed esegui il codice