Answer-first: Series MCP Engineering In Production cung cấp cẩm nang toàn diện xây dựng hạ tầng Model Context Protocol (MCP) bằng Go: từ giao thức JSON-RPC stateless, kiến trúc MCP Gateway tập trung, xác thực định danh OAuth 2.1 + CIMD, đến phòng vệ OWASP MCP Top 10 và truy vết OpenTelemetry.

Chào mừng bạn đến với Series MCP Engineering In Production: Từ Protocol Đến Enterprise Infrastructure - tài liệu kỹ thuật chuyên sâu dành cho Senior Backend Engineer, System Architect và Security Engineer.

Đến giữa năm 2026, Model Context Protocol (MCP) đã vượt ra khỏi giới hạn của một công cụ hỗ trợ cho các code editor (như Cursor hay Claude Code) để trở thành “USB-C cho AI” - một chuẩn mực giao tiếp bắt buộc cho các Agentic Workflows. Đặc biệt sau khi được quyên góp cho Agentic AI Foundation (AAIF) vào cuối 2025 và chuyển sang kiến trúc hoàn toàn stateless vào giữa 2026, MCP đã sẵn sàng cho quy mô lớn. Tuy nhiên, việc đưa MCP từ môi trường local (stdio) lên hệ thống production ở quy mô Enterprise lại là một bài toán hoàn toàn khác, tiềm ẩn nhiều rủi ro về bảo mật, định danh, và quản trị.

Series này được thiết kế để giải quyết khoảng trống đó. Chúng ta sẽ không chỉ dừng lại ở việc tạo ra các “tools” đơn giản. Chúng ta sẽ xây dựng các MCP Server bằng Go (github.com/modelcontextprotocol/go-sdk), triển khai gateway architecture, áp dụng chuẩn định danh OAuth 2.1 với CIMD, và thiết lập các rào chắn bảo mật chống lại Tool Poisoning hay Prompt Injection dựa trên OWASP MCP Top 10 (Beta).


📚 Mục Lục Series (Chapter Roadmap)


❓ Câu Hỏi Thường Gặp (FAQ)

Tại sao kiến trúc MCP Stateless over HTTP lại quan trọng đối với môi trường Enterprise?

Ban đầu MCP sử dụng kết nối stateful qua stdio (chạy local subprocess) hoặc SSE duy trì kết nối lâu. Khi triển khai lên cụm Kubernetes hoặc Cloudflare Edge, kết nối stateful gây khó khăn cho việc cân bằng tải (Load Balancing), auto-scaling và khôi phục sự cố. Kiến trúc Stateless over HTTP cho phép đóng gói MCP Server thành các microservices không trạng thái độc lập, scale tự động và dễ dàng tích hợp qua API Gateway.

Lỗ hổng 'Confused Deputy Attack' trong MCP diễn ra như thế nào và cách phòng chống?

Confused Deputy xảy ra khi AI Agent có quyền truy cập vào một tool đặc quyền cao (ví dụ: exec_sql_query), và kẻ tấn công gửi một prompt injection lừa Agent thực thi câu lệnh SQL nguy hiểm nhân danh quyền của Agent. Để phòng chống, hệ thống bắt buộc phải áp dụng Downscoping Tokens (mỗi tool invocation chỉ mang token có quyền tối thiểu cho tác vụ đó) kết hợp với Human-in-the-loop confirmation cho các write actions.

Làm thế nào để tránh việc cập nhật Tool Schema làm gãy (breaking change) các Agents đang hoạt động?

Chúng tôi thực thi quy tắc Semantic Versioning nghiêm ngặt cho Tool Schemas: (1) Nghiêm cấm thay đổi kiểu dữ liệu hoặc xóa trường bắt buộc trên schema hiện tại, (2) Thêm trường mới phải luôn là optional với giá trị mặc định, (3) Khi có thay đổi lớn, phát hành tool name với suffix version mới (ví dụ: query_inventory_v2) và duy trì v1 trong thời gian deprecation window.

🔗 Series Liên Quan & Hệ Sinh Thái AI-Native