Claude Code hỗ trợ MCP (Model Context Protocol) đầy đủ ở cả bản CLI (dòng lệnh) và extension VS Code, với cơ chế permission rõ ràng cho từng tool call — điều rất quan trọng khi bạn cho agent quyền đọc dữ liệu từ Google Drive của công ty. Bài này hướng dẫn cài đặt cụ thể, cách viết prompt để tìm và trích xuất requirement từ Docs/PDF, cách biến tài liệu business thành spec kỹ thuật có cấu trúc, và các pattern prompt hiệu quả khi cần tổng hợp từ nhiều tài liệu cùng lúc.
Nếu bạn chưa đọc bài "Google Drive MCP Là Gì?" ở đầu module, nên đọc trước — bài đó giải thích các tool cốt lõi (gdrive_search, gdrive_read_file) và ba hướng xác thực (OAuth cá nhân, scope, service account). Bài này không lặp lại phần nền tảng đó mà đi thẳng vào thực hành với Claude Code.
Cài Đặt Và Kết Nối Google Drive MCP Vào Claude Code
Claude Code đọc cấu hình MCP server từ file .mcp.json ở root project (project-scoped), hoặc bạn có thể đăng ký global qua lệnh claude mcp add. Với Google Drive, bước đầu tiên luôn là tạo OAuth Client ID trong Google Cloud Console (loại "Desktop app"), bật Google Drive API cho project đó, rồi tải file credentials.json.
Thêm server vào scope local (chỉ máy bạn):
claude mcp add gdrive --scope local -- npx -y @isaacphi/mcp-gdrive
Nếu muốn cả team dùng chung cấu hình (không chứa secret tĩnh vì auth là OAuth flow, mỗi người tự đăng nhập tài khoản riêng), dùng --scope project để ghi vào .mcp.json và commit file đó:
claude mcp add gdrive --scope project -- npx -y @isaacphi/mcp-gdrive
File .mcp.json sinh ra, sau khi thêm biến môi trường cần thiết:
{
"mcpServers": {
"gdrive": {
"command": "npx",
"args": ["-y", "@isaacphi/mcp-gdrive"],
"env": {
"CLIENT_ID": "${GDRIVE_OAUTH_CLIENT_ID}",
"CLIENT_SECRET": "${GDRIVE_OAUTH_CLIENT_SECRET}",
"GDRIVE_CREDS_DIR": "${HOME}/.config/gdrive-mcp"
}
}
}
}
Set biến môi trường tương ứng trong shell profile hoặc file .env (không commit):
export GDRIVE_OAUTH_CLIENT_ID="1234567890-abc.apps.googleusercontent.com"
export GDRIVE_OAUTH_CLIENT_SECRET="GOCSPX-xxxxxxxxxxxxxxxxxxxx"
Lần đầu Claude Code gọi một tool từ server gdrive, server sẽ in ra một URL consent screen — mở URL đó trong browser, đăng nhập, đồng ý cấp quyền theo scope đã khai báo (mặc định nên là drive.readonly). Token refresh sau đó lưu trong GDRIVE_CREDS_DIR, bạn không cần đăng nhập lại ở các phiên sau.
Kiểm tra kết nối:
claude mcp list
Nếu status hiện ✓ connected cạnh gdrive, mọi thứ đã sẵn sàng. Nếu báo lỗi, chạy claude mcp get gdrive để xem log chi tiết — lỗi phổ biến nhất là quên bật Google Drive API trong Cloud Console (API bị disable mặc định trên project mới), hoặc OAuth Client ID tạo sai loại (chọn "Web application" thay vì "Desktop app" sẽ không hoạt động với flow local này).
Mẹo: Dùng
claude mcp add --scope projectkhi setup cho team, nhưng luôn double-check.mcp.jsontrước khi commit — file này chỉ nên chứa tham chiếu${VAR}, không bao giờ chứaCLIENT_SECRETdạng cứng. Thêm mọi file cache token (GDRIVE_CREDS_DIR) vào.gitignorengay từ đầu, vì đó là nơi lưu refresh token thật.
Tìm Kiếm Trên Drive Và Trích Xuất Requirement Từ Docs, PDF
Sau khi kết nối, bạn tương tác hoàn toàn bằng ngôn ngữ tự nhiên trong REPL của Claude Code. Chạy claude để vào interactive session, thử một prompt tìm kiếm trước:
Tìm trong Google Drive các file có chữ "onboarding flow" hoặc
"user activation", liệt kê tên file, mimeType và ngày sửa gần nhất
của top 8 kết quả, sắp xếp theo modifiedTime giảm dần.
Claude Code sẽ gọi gdrive_search — đây là tool read-only nên theo mặc định chạy luôn không cần bạn confirm (trừ khi bạn set permission mode nghiêm hơn trong settings.json). Sau khi có danh sách, yêu cầu đọc chi tiết một file cụ thể:
Đọc nội dung file "PRD - User Onboarding v3" (dùng fileId ở kết quả
trên), trích xuất toàn bộ requirement dạng bullet, kèm trích dẫn
câu gốc trong tài liệu cho mỗi requirement.
Với PDF (ví dụ hợp đồng, tài liệu scan từ đối tác), gdrive_read_file trả về text đã được Drive trích xuất — độ chính xác phụ thuộc nhiều vào chất lượng bản scan gốc. Với file PDF dạng scan ảnh (không có text layer), kết quả trích xuất có thể thiếu hoặc sai một số đoạn, nên luôn yêu cầu agent đánh dấu rõ đoạn nào nó "không chắc chắn":
Đọc file PDF "Vendor Contract - Q3.pdf", trích xuất các điều khoản
về SLA (Service Level Agreement) và penalty. Với đoạn nào text bị
lỗi hoặc không rõ nghĩa do lỗi OCR, đánh dấu rõ [UNCLEAR] thay vì
tự đoán nội dung.
Mẹo: Luôn yêu cầu agent trích dẫn nguyên văn câu gốc bên cạnh mỗi requirement nó rút ra, đặc biệt với tài liệu dài trên 10 trang. Đây là cách rẻ nhất để bạn phát hiện agent có đang "diễn giải quá tay" hay không, trước khi requirement đó được đưa vào spec kỹ thuật chính thức.
Chuyển Đổi Tài Liệu Business Thành Technical Spec Có Cấu Trúc
Đây là giá trị lớn nhất của Google Drive MCP với Claude Code: biến một PRD viết theo văn phong tự do thành spec kỹ thuật có cấu trúc rõ ràng, sẵn sàng làm input cho việc code.
Đọc file "PRD - Checkout Redesign" trên Drive. Dựa vào nội dung đó,
viết một technical spec theo cấu trúc:
1. Overview (2-3 câu)
2. Functional Requirements (dạng bullet, mỗi bullet có ID dạng FR-01, FR-02...)
3. Non-Functional Requirements (performance, security nếu có nhắc tới)
4. API Endpoints cần tạo mới (nếu PRD có gợi ý về hành vi backend)
5. Open Questions — những điểm PRD chưa rõ, cần hỏi lại product owner
Lưu kết quả vào file specs/checkout-redesign.md trong repo hiện tại.
Claude Code sẽ đọc file qua gdrive_read_file, phân tích nội dung, và ghi kết quả ra file local bằng tool Write sẵn có — kết hợp cả hai loại tool (MCP tool đọc Drive + tool file-system built-in) trong cùng một luồng suy luận là điểm mạnh cốt lõi của MCP so với việc bạn tự copy-paste tay.
Với tài liệu có bảng biểu (ví dụ bảng so sánh các option thiết kế), yêu cầu agent giữ nguyên cấu trúc bảng khi chuyển sang markdown:
Đọc phần bảng so sánh 3 phương án xử lý retry payment trong file
"Payment Retry - Design Options". Giữ nguyên cấu trúc bảng (các cột:
Phương án, Ưu điểm, Nhược điểm, Effort ước tính) khi đưa vào spec,
và thêm một cột "Khuyến nghị" dựa trên phân tích của bạn.
Mẹo: Luôn chỉ định rõ đường dẫn file output (ví dụ
specs/checkout-redesign.md) trong prompt, đừng để agent tự chọn tên file — trong một phiên dài xử lý nhiều PRD, agent có thể đặt tên file trùng hoặc quá chung (spec.md) khiến bạn mất công dò lại file nào ứng với PRD nào.
Các Pattern Prompt Để Tổng Hợp Nhiều Tài Liệu Cùng Lúc
Khi một tính năng có nhiều tài liệu liên quan rải rác (PRD chính, biên bản họp bổ sung, feedback từ user research), giá trị thực sự nằm ở khả năng agent đọc và tổng hợp chéo nhiều nguồn cùng lúc — việc con người làm rất chậm vì phải mở qua mở lại nhiều tab.
Pattern 1 — tổng hợp theo chủ đề:
Tìm tất cả tài liệu trên Drive có liên quan tới "search relevance"
(có thể là PRD, meeting note, hoặc research report), đọc từng file,
rồi tổng hợp thành một báo cáo duy nhất với 3 phần: Bối cảnh vấn đề,
Các giải pháp đã được đề xuất (kèm nguồn file), Điểm còn mâu thuẫn
giữa các tài liệu (nếu có).
Pattern 2 — phát hiện mâu thuẫn giữa các phiên bản:
So sánh nội dung của "PRD v1 - Search Feature" và "PRD v2 - Search
Feature (updated)". Liệt kê rõ những requirement đã bị thay đổi,
thêm mới, hoặc bị xoá giữa hai phiên bản, trình bày dạng bảng
before/after.
Pattern 3 — trích xuất action item từ nhiều meeting note theo tuần:
Đọc tất cả file Google Docs trong folder "Meeting Notes - Search
Team" có tên chứa "Weekly Sync", được tạo trong tháng 6/2026. Tổng
hợp toàn bộ action item chưa hoàn thành, kèm người chịu trách nhiệm
và deadline nếu note có ghi rõ, loại bỏ các action item trùng lặp
xuất hiện ở nhiều tuần.
Một nguyên tắc chung: với prompt tổng hợp nhiều tài liệu, luôn giới hạn phạm vi rõ ràng (theo folder, theo khoảng thời gian, theo từ khoá cụ thể) — nếu để agent tự quyết định phạm vi "tất cả tài liệu liên quan", nó có thể bỏ sót hoặc kéo vào những file không liên quan, tốn context window (cửa sổ ngữ cảnh) một cách không cần thiết.
Mẹo: Với tài liệu số lượng lớn (trên 10-15 file), chia prompt thành hai bước: bước 1 chỉ search và liệt kê danh sách file để bạn duyệt qua, bước 2 mới yêu cầu đọc và tổng hợp trên danh sách đã được lọc. Điều này tránh agent đốt hết context window vào việc đọc những file không thực sự liên quan.
Mẹo Và Lưu Ý Thực Chiến
Vài điều rút ra sau khi chạy Google Drive MCP với Claude Code cho vài team product/engineering:
- Extension VS Code dùng chung
.mcp.jsonvới bản CLI — nếu bạn đã setup ở terminal trong cùng project, mở VS Code lên nó tự nhận diện, không cần cấu hình lại. Điểm khác biệt là VS Code hiện permission request dưới dạng panel bên phải với nút "Allow"/"Deny" trực quan hơn, và render markdown output ngay trong sidebar — dễ đọc spec dài hơn nhiều so với terminal thô. - Với tài liệu tiếng Việt có dấu, một vài phiên bản export của Drive API có thể gặp lỗi encoding nhẹ ở ký tự đặc biệt — luôn kiểm tra lại phần trích dẫn quan trọng (số liệu, tên riêng) sau khi agent trích xuất.
- Trong một phiên dài xử lý nhiều PRD liên tiếp, agent có thể "nhớ" nhầm context từ PRD trước sang PRD sau. Nếu thấy kết quả lẫn lộn, mở phiên mới (
claudemới) cho mỗi tài liệu độc lập thay vì dồn hết vào một session dài.
Mẹo: Tạo một script wrapper (ví dụ
scripts/prd-to-spec.sh) gọiclaude -p "<prompt cố định>" --mcp-config .mcp.jsonđể chạy chuyển đổi PRD → spec theo batch, thay vì luôn phải mở terminal gõ tay từng prompt — hữu ích khi bạn cần xử lý nhiều PRD tồn đọng cùng lúc trong một buổi refinement.