Resources opvragen vanuit de client
Je server is geschreven naar het bestand currency_server.py en is nu klaar om verbinding mee te maken! Begin met het maken van een client die de beschikbare resources op deze server kan tonen.
Deze oefening maakt deel uit van de cursus
Introductie tot Model Context Protocol (MCP)
Oefeninstructies
- Haal binnen de server-sessiecontext de beschikbare resources op.
- Loop door
response.resourcesen print de URI, naam en beschrijving van elke resource via hun attributen.
Interactieve oefening met praktijkervaring
Probeer deze oefening door deze voorbeeldcode aan te vullen.
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())