クライアントからプロンプトを一覧表示する
通貨サーバーは、ツール、リソース、およびプロンプトを含む currency_server.py として作成済みです。このサーバーで利用可能なプロンプトを一覧表示するクライアントを作成し、LLM が使用できるプロンプトテンプレートを確認しましょう。
この演習はコースの一部です
Model Context Protocol(MCP)入門
演習の手順
- MCP サーバーに接続してセッションを初期化し、利用可能なプロンプトを一覧表示するメソッドを呼び出して、結果を変数に代入します。
- 各プロンプトの名前(タイトルではなく、サーバー上の関数名)を出力します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
from mcp import ClientSession, StdioServerParameters
from mcp.client.stdio import stdio_client
async def list_prompts():
"""List all available prompts 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()
# List available prompts
prompts = await session.____()
print(f"Available prompts: {[p.____ for p in prompts.prompts]}")
return prompts.prompts
asyncio.run(list_prompts())