Bắt đầu ngayBắt đầu miễn phí

Gọi công cụ trên máy chủ

Giờ hãy kích hoạt các lệnh gọi tool trên máy chủ từ client của bạn! Một lần nữa, bạn sẽ dùng thao tác bất đồng bộ để đảm bảo mọi thứ không bị lỗi hay treo trong lúc chờ các thao tác khác hoàn tất.

Bài tập này là một phần của khóa học

Giới thiệu về Model Context Protocol (MCP)

Xem khóa học

Hướng dẫn bài tập

  • Gọi tool với tham số tool_namearguments do người dùng chỉ định; đảm bảo lệnh gọi tạm dừng để chờ máy chủ phản hồi bằng từ khóa Python phù hợp.
  • Trích xuất và in ra nội dung văn bản từ phản hồi của máy chủ.
  • Chạy tool "convert_currency" với một bộ tham số hợp lệ (bạn có thể dùng bất kỳ giá trị và loại tiền tệ nào tại đây).

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

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"})
)
Chỉnh sửa và Chạy Mã