開始使用免費開始

從用戶端列出 Prompts

你的 currency 伺服器已寫在 currency_server.py,其中包含一個工具(tool)、一個資源(resource),以及一個提示(prompt)。請建立一個用戶端,列出此伺服器可用的 prompts,讓你能看出 LLM 可以使用哪些提示樣板。

本練習屬於課程

Model Context Protocol(MCP)入門

檢視課程

練習說明

  • 連線至 MCP 伺服器、初始化 session,並呼叫可列出可用 prompts 的方法,將結果指定給一個變數。
  • 印出每個 prompt 的名稱(來自伺服器的函式名稱,而不是標題)。

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

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())
編輯並執行程式碼