MCP là gì? “Cổng USB-C” nối AI với database, GitHub, Slack…
Tóm tắt
MCP (Model Context Protocol) là giao thức mở giúp ứng dụng AI kết nối với công cụ và dữ liệu bên ngoài theo một chuẩn chung. Một MCP server (vd. GitHub, Postgres) viết một lần có thể dùng với mọi client hỗ trợ MCP như Claude, Claude Code, Cursor.
Trước đây, mỗi ứng dụng AI muốn kết nối với GitHub, database hay Slack đều phải viết tích hợp riêng — N ứng dụng nhân M hệ thống ra N×M bộ kết nối. MCP (Model Context Protocol) là giao thức mở giải quyết bằng một chuẩn chung, thường được ví như “cổng USB-C” cho AI: một MCP server (ví dụ GitHub, Postgres) viết một lần có thể dùng với mọi client hỗ trợ MCP như Claude, Claude Code hay Cursor.
Ba vai trò
| Thành phần | Vai trò | Ví dụ |
|---|---|---|
| Host | Ứng dụng người dùng tương tác | Claude Desktop, Claude Code, IDE |
| Client | Kết nối 1-1 tới một server, nằm trong host | Tự động tạo khi bạn thêm server |
| Server | Cung cấp khả năng cho AI | GitHub, filesystem, Postgres, Slack |
Giao tiếp giữa client và server dùng JSON-RPC; server có thể chạy cục bộ (qua stdio) hoặc từ xa (qua HTTP).
Server cung cấp gì?
- Tools: hành động AI có thể gọi (tạo issue, chạy query, gửi tin nhắn).
- Resources: dữ liệu để đọc (file, bản ghi, tài liệu).
- Prompts: mẫu prompt dựng sẵn, gọi như lệnh.
Ví dụ cấu hình
{
"mcpServers": {
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": { "GITHUB_PERSONAL_ACCESS_TOKEN": "<token quyền tối thiểu>" }
}
}
}
Tên gói và tham số thay đổi theo từng server; đọc tài liệu của server bạn dùng. Điểm quan trọng: token chỉ nên có quyền tối thiểu cần thiết.
Rủi ro bảo mật
- Server chạy với quyền của bạn. Chỉ cài từ nguồn tin cậy và đọc mã nguồn khi có thể.
- Quyền tối thiểu: dùng token phạm vi hẹp; ưu tiên quyền chỉ đọc cho database production.
- Prompt injection: dữ liệu server trả về (một issue, một email) có thể chứa chỉ dẫn độc hại. Tránh kết hợp quyền đọc dữ liệu không tin cậy, quyền đọc dữ liệu nhạy cảm và quyền gửi ra ngoài trong cùng một phiên.
- Xác nhận hành động ghi: giữ chế độ hỏi quyền cho các tool thay đổi dữ liệu.
Chi phí ngữ cảnh
Mỗi server thêm định nghĩa các tool vào ngữ cảnh. Cài nhiều server cùng lúc làm phình ngữ cảnh, tăng chi phí và làm agent dễ chọn nhầm tool. Tắt những server không dùng trong phiên hiện tại.
MCP hay skill?
| Cần | Chọn |
|---|---|
| Kết nối hệ thống bên ngoài, dùng chung giữa nhiều ứng dụng | MCP server |
| Quy trình/hướng dẫn cho một agent, ít phụ thuộc hệ thống ngoài | Skill (đơn giản hơn) |
| Gọi API đơn giản một lần | Có thể chỉ cần script hoặc lệnh CLI |
Áp dụng thế nào?
- Dev: bắt đầu nhỏ — filesystem hoặc GitHub MCP là đủ thấy giá trị.
- Tech Lead: lập danh sách server được phép dùng và quy ước về quyền token; review như review dependency.
- PM: MCP là nền tảng để AI làm việc với Jira, tài liệu, dữ liệu nội bộ — nhưng cần chính sách bảo mật trước khi mở rộng.
Nguồn & tham khảo
- Architecture overview — Model Context Protocol