Bài này tóm lược những ý chính của Unit 1 để bạn ôn lại trước khi sang phần thực hành.
Model Context Protocol (MCP)
MCP là một giao thức chuẩn hoá, được thiết kế để kết nối model AI với các tool, nguồn dữ liệu và môi trường bên ngoài. Nó khắc phục hạn chế của các hệ thống AI hiện có bằng cách mang lại khả năng tương tác (interoperability) và quyền truy cập thông tin theo thời gian thực.
Khái niệm chính
Kiến trúc client-server
MCP theo mô hình client-server, trong đó client quản lý giao tiếp giữa người dùng và server. Kiến trúc này đề cao tính module, cho phép dễ dàng thêm server mới mà không cần thay đổi các host hiện có.
Thành phần
Host
Ứng dụng AI hướng tới người dùng, đóng vai trò giao diện cho người dùng cuối.
Client
Thành phần bên trong ứng dụng host, chịu trách nhiệm quản lý giao tiếp với một MCP server cụ thể. Mỗi client duy trì kết nối 1:1 với một server và xử lý các chi tiết ở tầng giao thức.
Server
Chương trình hoặc dịch vụ bên ngoài, cung cấp quyền truy cập tới tool, nguồn dữ liệu hoặc dịch vụ thông qua giao thức MCP. Server đóng vai trò lớp bọc gọn nhẹ quanh các chức năng sẵn có.
Khả năng (capability)
Tools
Các hàm có thể thực thi để thực hiện hành động (ví dụ gửi tin nhắn, truy vấn API). Tool thường do model điều khiển và cần người dùng phê duyệt, vì chúng có thể thực hiện hành động gây tác động phụ (side effect).
Resources
Nguồn dữ liệu chỉ đọc để lấy ngữ cảnh, không cần tính toán đáng kể. Resource do ứng dụng điều khiển và được thiết kế để lấy dữ liệu, tương tự endpoint GET trong REST API.
Prompts
Các mẫu hoặc quy trình (workflow) định sẵn, dẫn dắt tương tác giữa người dùng, model AI và các khả năng sẵn có. Prompt do người dùng điều khiển và thiết lập ngữ cảnh cho tương tác.
Sampling
Yêu cầu do server khởi tạo để nhờ LLM xử lý, cho phép các hành vi kiểu agent do server dẫn dắt, có thể là tương tác đệ quy hoặc nhiều bước. Thao tác sampling thường cần người dùng phê duyệt.
Giao thức giao tiếp
Giao thức MCP dùng JSON-RPC 2.0 làm định dạng thông điệp giữa client và server. Có hai cơ chế truyền tải (transport) chính được hỗ trợ: stdio (cho giao tiếp cục bộ) và HTTP+SSE (cho giao tiếp từ xa). Thông điệp gồm yêu cầu (request), phản hồi (response) và thông báo (notification).
Quá trình khám phá
MCP cho phép client tự động khám phá các tool, resource và prompt có sẵn thông qua các phương thức liệt kê (ví dụ tools/list). Cơ chế khám phá động này giúp client thích ứng với khả năng riêng của từng server mà không cần biết trước (hardcode) chức năng của server.
MCP SDK
Có các SDK chính thức cho nhiều ngôn ngữ lập trình để hiện thực MCP client và server. Các SDK này lo phần giao tiếp ở tầng giao thức, đăng ký khả năng và xử lý lỗi, giúp việc phát triển đơn giản hơn.
Tích hợp Gradio
Gradio cho phép dễ dàng tạo giao diện web cung cấp các khả năng qua giao thức MCP, giúp cả con người lẫn model AI đều dùng được. Tích hợp này mang lại giao diện thân thiện với con người song song với các tool mà AI truy cập được, chỉ với rất ít code.
Cải tiến MCP của Hugging Face
- MCP Server được host sẵn nay tích hợp với nhiều client hơn (VS Code, Cursor, Zed, Claude Desktop).
- Các tool có sẵn được chọn lọc để tìm kiếm model, dataset, Space và paper.
- Đoạn cấu hình một chạm tại
https://huggingface.co/settings/mcp. - Thêm Gradio Space hỗ trợ MCP qua phần cài đặt và dùng chúng trực tiếp từ trợ lý của bạn.
Nguồn
- Dịch và biên tập từ huggingface/mcp-course · units/en/unit1/unit1-recap.mdx, giấy phép Apache-2.0.