📖 Nội dung bài học
Tóm tắt
Tài nguyên trong MCP cho phép server của bạn cung cấp dữ liệu có thể được đưa trực tiếp vào prompt, thay vì yêu cầu tool call để truy cập thông tin. Điều này tạo ra cách hiệu quả hơn để cung cấp ngữ cảnh cho các mô hình AI như Claude.
Hiểu luồng tài nguyên

Khi người dùng muốn truy cập nội dung tài nguyên, luồng hoạt động như sau:
- Người dùng yêu cầu thông tin về một tài nguyên (ví dụ: "@report.pdf")
- Code của bạn cần một danh sách tên tài liệu để tự động hoàn thành
- MCP Client gửi yêu cầu ReadResourceRequest đến MCP Server
- Server phản hồi với ReadResourceResult chứa dữ liệu tài nguyên
- Code của bạn sau đó có thể đưa dữ liệu này trực tiếp vào prompt
Triển khai đọc tài nguyên
Để đọc tài nguyên từ MCP client của bạn, bạn cần triển khai hàm read_resource. Đầu tiên, thêm các import cần thiết:
import json
from pydantic import AnyUrl
Hàm cốt lõi thực hiện yêu cầu đến MCP session của bạn và xử lý phản hồi:
async def read_resource(self, uri: str) -> Any:
result = await self.session().read_resource(AnyUrl(uri))
resource = result.contents[0]
Xử lý các loại tài nguyên khác nhau
Tài nguyên có thể trả về các loại nội dung khác nhau, vì vậy bạn cần kiểm tra kiểu MIME và phân tích cú pháp cho phù hợp:
if isinstance(resource, types.TextResourceContents):
if resource.mimeType == "application/json":
return json.loads(resource.text)
return resource.text
Cách tiếp cận này xử lý hai trường hợp chính:
- Tài nguyên JSON cần phân tích cú pháp
- Tài nguyên văn bản thuần túy có thể được trả về nguyên trạng
Kiểm tra truy cập tài nguyên

Bạn có thể xác minh việc triển khai tài nguyên của mình hoạt động bằng cách kiểm tra nó trong ứng dụng của bạn. Khi bạn gõ "@" theo sau là tên tài nguyên, bạn sẽ thấy danh sách tự động hoàn thành các tài nguyên có sẵn. Chọn một tài nguyên sẽ đưa nội dung của nó trực tiếp vào prompt của bạn.
Ưu điểm chính của cách tiếp cận này là hiệu quả - Claude nhận được nội dung tài liệu ngay lập tức mà không cần thực hiện thêm tool call để truy cập thông tin.
Tài nguyên so với Sử dụng công cụ
Tài nguyên đặc biệt hữu ích khi:
- Bạn có nội dung tĩnh hoặc bán tĩnh được tham chiếu thường xuyên
- Bạn muốn giảm số lượng API call
- Nội dung nên có sẵn ngay lập tức trong ngữ cảnh prompt
Điều này khác với các công cụ, vốn phù hợp hơn cho các hoạt động động hoặc khi bạn cần AI quyết định có nên truy cập thông tin nào đó dựa trên ngữ cảnh cuộc trò chuyện hay không.
🔁 Bài học liên quan
- Bài tiếp: Defining prompts
- Bài trước: Defining resources
- 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/289247
- © 2025 Anthropic. Chỉ dùng cho mục đích giáo dục, fair-use.
- Crawl: 2026-04-23 · Chuẩn hoá: 2026-05-01