Sunucu Araçlarını Çağırma
Şimdi istemcinden sunucudaki araç çağrılarını tetikleme zamanı! Yine, diğer işlemler tamamlanırken hiçbir şeyin bozulmaması veya donmaması için eşzamanlı olmayan (asenkron) işlemler kullanacaksın.
Bu egzersiz, kursun bir parçasıdır
Model Context Protocol (MCP) Giriş
Egzersiz talimatları
- Kullanıcının belirttiği
tool_nameveargumentsparametreleriyle aracı çağır; uygun Python anahtar sözcüğünü kullanarak çağrının sunucu yanıtını beklemek için duraklamasını sağla. - Sunucu yanıtının metin içeriğini çıkar ve yazdır.
"convert_currency"aracını geçerli bir parametre kümesiyle çalıştır (burada istediğin değerleri ve para birimlerini kullanabilirsin).
Uygulamalı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
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"})
)