LoslegenKostenlos starten

Einen Prompt über den Client abrufen

Rufe nun einen bestimmten Prompt vom Currency-Server mit einer Nutzereingabe ab, damit die Vorlage und die Anfrage zusammengeführt werden. Das würdest du an ein LLM übergeben, bevor es entscheidet, ob es das Conversion-Tool aufruft.

Diese Übung ist Teil des Kurses

<Kurs>Einführung in das Model Context Protocol (MCP)</Kurs>
Kurs ansehen

Übungsanweisungen

  • Rufe nach dem Initialisieren der Session die Methode auf, um einen Prompt per Namen zu holen. Übergebe den Prompt-Namen und ein arguments-Dict mit der Eingabe der Nutzerin bzw. des Nutzers.
  • Extrahiere und gib den Textinhalt der ersten Nachricht im Prompt-Ergebnis aus.

Interaktive praktische Übung

Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.

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?"))
Code bearbeiten und ausführen