Wyświetlanie zasobów po stronie klienta
Kod serwera został zapisany do pliku currency_server.py i jest gotowy do połączenia. Na początek utwórz klienta, który wyświetli zasoby dostępne na tym serwerze.
To ćwiczenie jest częścią kursu
Wprowadzenie do Model Context Protocol (MCP)
Instrukcje do ćwiczenia
- Wewnątrz kontekstu sesji serwera pobierz dostępne zasoby.
- Przejdź w pętli przez
response.resourcesi wypisz identyfikator URI, nazwę oraz opis każdego zasobu, korzystając z ich atrybutów.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
from mcp import ClientSession, StdioServerParameters
from mcp.client.stdio import stdio_client
async def list_resources():
"""List all available resources from the MCP server."""
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()
# Get the list of resources
response = ____ ____()
print("Available resources:")
# Print each resource's URI, name, and description
for resource in response.____:
print(f" - {resource.____}")
print(f" Name: {resource.____}")
print(f" Description: {resource.____}")
return response.resources
asyncio.run(list_resources())