📖 Nội dung bài học
Tóm tắt
Bước cuối cùng trong việc xây dựng client MCP của bạn là triển khai chức năng prompt. Việc này cho phép bạn liệt kê tất cả các prompt có sẵn từ server và truy xuất các prompt cụ thể với các biến được nội suy vào chúng.
Triển khai List Prompts
Phương thức list_prompts rất đơn giản. Bạn gọi phương thức list prompts của session và trả về các prompt:
async def list_prompts(self) -> list[types.Prompt]:
result = await self.session().list_prompts()
return result.prompts
Lấy Individual Prompts
Phương thức get_prompt thú vị hơn vì nó xử lý việc nội suy đối số. Khi bạn yêu cầu một prompt cụ thể, bạn truyền các đối số được chèn vào hàm prompt. Ví dụ, nếu server của bạn có một prompt "format" mong đợi một tham số doc_id, bạn cung cấp giá trị đó trong từ điển đối số:
async def get_prompt(self, prompt_name, args: dict[str, str]):
result = await self.session().get_prompt(prompt_name, args)
return result.messages
Phương thức trả về các message tạo thành một cuộc trò chuyện, sẵn sàng được đưa trực tiếp vào Claude.
Cách hoạt động của Prompt Arguments
Khi bạn định nghĩa một hàm prompt trong server MCP của bạn, bất kỳ tham số nào cũng trở thành biến nội suy khả dụng. Từ điển đối số bạn truyền cho get_prompt cung cấp các giá trị cho các tham số này. Sau đó, server tạo ra prompt hoàn chỉnh với các giá trị của bạn được thay thế ở những nơi thích hợp.

Kiểm tra việc triển khai
Sau khi triển khai, bạn có thể kiểm tra prompt thông qua CLI. Khi bạn gõ dấu gạch chéo, các prompt khả dụng sẽ xuất hiện dưới dạng lệnh. Việc chọn một prompt như "format" sẽ nhắc bạn chọn các giá trị cho bất kỳ đối số bắt buộc nào (ví dụ: chọn một tài liệu để định dạng). Sau đó, hệ thống:
- Truy xuất
promptvới các đối số của bạn được nội suy - Gửi
prompthoàn chỉnh đến Claude - Claude thực thi bất kỳ
tool callcần thiết nào để đáp ứng yêu cầu - Trả về kết quả đã định dạng

Prompts trong thực tế
Prompt định nghĩa các bộ message người dùng và trợ lý có thể tái sử dụng mà client có thể gọi. Chúng phải có chất lượng cao, được kiểm tra kỹ lưỡng và phù hợp với mục đích của server MCP của bạn. Hãy coi chúng như các quy trình công việc được xây dựng sẵn, kết hợp các tool và resource của server của bạn để hoàn thành các tác vụ cụ thể.
Hệ thống prompt tạo ra sự phân tách rõ ràng giữa logic prompt (được định nghĩa trên server) và việc thực thi (được xử lý bởi client và Claude). Điều này giúp dễ dàng tạo ra các quy trình công việc đa bước tinh vi mà người dùng có thể kích hoạt bằng các lệnh đơn giản.
🔁 Bài học liên quan
- Bài tiếp: MCP review
- Bài trước: Defining prompts
- Cùng section: Making a request · Multi-turn conversations · Chat exercise
- Thuộc lộ trình: Path C
- Docs tham khảo: Glossary · Skills atlas · By use-case
📚 Nguồn & ghi nhận
- Bài học gốc Anthropic Academy: https://anthropic.skilljar.com/claude-with-google-vertex/289209
- © 2025 Anthropic. Chỉ dùng cho mục đích giáo dục, fair-use.
- Crawl: — · Chuẩn hoá: 2026-05-01