LoslegenKostenlos starten

Server-Tools aufrufen

Jetzt löst du Toolaufrufe im Server von deinem Client aus! Auch hier nutzt du asynchrone Operationen, damit nichts hängt oder einfriert, während andere Aufgaben noch laufen.

Diese Übung ist Teil des Kurses

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

Übungsanweisungen

  • Rufe das Tool mit den vom Benutzer angegebenen Parametern tool_name und arguments auf; achte darauf, dass der Aufruf mit dem passenden Python-Schlüsselwort pausiert, bis der Server antwortet.
  • Extrahiere und gib den Textinhalt der Serverantwort aus.
  • Führe das Tool "convert_currency" mit einem Satz gültiger Parameter aus (verwende hier beliebige Werte und Währungen).

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 call_mcp_tool(tool_name: str, arguments: dict) -> str:
    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()

            # Call the currency conversion tool
            result = ____ ____(tool_name, arguments)

            # Extract and print the text content of the server response
            text_content = result.____[0].____

            print(f"Conversion Result: {text_content}")
            return text_content

# Run the "convert_currency" tool
asyncio.run(
    call_mcp_tool("convert_currency",
                  {"amount": 250.0, "from_currency": "USD", "to_currency": "EUR"})
)
Code bearbeiten und ausführen