MCP: Hệ thống plugin phổ dụng (một cách tình cờ)
(worksonmymachine.substack.com)- USB-C có giá trị không chỉ vì dùng để sạc và truyền tệp, mà còn ở tính phổ dụng có thể mở rộng sang nhiều mục đích khác nhau
- MCP(Model Context Protocol) ban đầu được thiết kế cho trợ lý AI, nhưng trên thực tế có thể trở thành một hệ thống plugin phổ dụng kết nối mọi nguồn dữ liệu và công cụ
- Giống như trường hợp NFT Base64, giao thức có thể mở rộng vượt ra ngoài mục đích ban đầu để trực tiếp lưu trữ và khai thác dữ liệu trong thế giới thực
- Càng có nhiều máy chủ MCP, mỗi ứng dụng càng có thể dễ dàng mang về nhiều chức năng đa dạng mà không cần tích hợp riêng
- Giống như USB-C, MCP cũng sẽ trở thành một 'không gian khả năng nơi có thể kết nối mọi thứ', làm nền tảng cho những đổi mới không ngờ tới
MCP: An (Accidentally) Universal Plugin System (Or: The Day My Toaster Started Taking Phone Calls)
USB-C và tính phổ dụng ngoài dự kiến
- Ai cũng nghĩ USB-C chỉ dùng để sạc hoặc truyền tệp, nhưng nhờ chính cấu trúc của nó, nó có thể mở rộng sang nhiều mục đích khác nhau
- Câu chuyện người bạn Rex của tác giả nối máy nướng bánh mì với màn hình, khiến máy nướng bánh có đầu ra HDMI, cho thấy khả năng vô hạn của USB-C
- Đó là vì USB-C có cấu trúc cho phép kết nối bất cứ thứ gì miễn là đầu cắm khớp nhau, mà không cần quá bận tâm tới chuẩn điện năng và dữ liệu
Nguyên lý của ổ châm thuốc trên ô tô
- Ổ châm thuốc trên ô tô ban đầu dùng để châm thuốc lá, nhưng giờ đã trở thành một cổng cấp nguồn phổ dụng cho nhiều mục đích khác nhau
- Giống như ổ châm thuốc, giao thức không giới hạn lựa chọn của người dùng mà cho phép nhiều cách sử dụng đa dạng
- MCP cũng có khả năng mở rộng tương tự
Tái khám phá MCP: vô tình trở thành hệ thống plugin phổ dụng
- Thông thường, MCP(Model Context Protocol) được biết đến là công cụ giúp các trợ lý AI (ví dụ: Claude) sử dụng dữ liệu
- Tài liệu chính thức cũng nêu rõ rằng nó "kết nối các mô hình AI với nhiều nguồn dữ liệu và công cụ theo cách tiêu chuẩn hóa"
- Nhưng nếu loại bỏ yếu tố AI, MCP sẽ trở thành cách để "bất cứ thứ gì" kết nối với các nguồn dữ liệu và công cụ khác nhau
- Điều này khiến nó, bất kể mục đích ban đầu, trở thành một giao thức kết nối phổ dụng
Sự khai sáng từ NFT Base64
- NFT ban đầu được dùng để tham chiếu tới hình ảnh, nhưng đến một lúc nào đó, chính phần tham chiếu lại trở thành dữ liệu
- Khi tinh thần ban đầu của giao thức thay đổi, thẻ thư viện bắt đầu đóng vai trò của chính cuốn sách
- Nó biến thành một công cụ trực tiếp xử lý dữ liệu thực tế rộng hơn rất nhiều so với ý định ban đầu
Hiệu ứng mạng mà không ai ngờ tới
- Càng có nhiều máy chủ MCP cho AI xuất hiện, sẽ càng xảy ra hiệu ứng là mọi ứng dụng đều có được chức năng mới mà không cần phát triển riêng
- Ví dụ, nếu ai đó tạo ra máy chủ MCP cho Spotify, một ứng dụng luyện tập có thể tự động tạo playlist thông qua MCP
- Một hiệu ứng mạng sẽ xuất hiện, nơi các nhà phát triển và ứng dụng vốn không hề biết nhau vẫn tự nhiên kết nối và cùng có lợi
- Mỗi máy chủ MCP đều có thể được tái sử dụng như một plugin phổ dụng
- Không ai thiết kế ra điều đó, nhưng một hệ sinh thái plugin phổ dụng đã hình thành một cách tình cờ
Ý nghĩa của USB-C và triết lý của MCP
- MCP thường được ví là USB-C của AI, và điều khiến USB-C trở nên đặc biệt không phải chỉ là một cổng kết nối đơn thuần, mà là một không gian khả năng nơi có thể kết nối mọi thứ
- Giống như USB-C chấp nhận điện năng, dữ liệu, video và những chức năng chưa biết khác, MCP cũng không chỉ là thứ 'dành cho AI' mà đóng vai trò như 'một lỗ cắm được thiết kế tốt cho chức năng', để bất kỳ ai cũng có thể kết nối bất kỳ chức năng nào
Đoạn tôi nói với bạn rằng tôi đang xây một thứ gì đó
- Tác giả đang phát triển một ứng dụng quản lý công việc tên là APM(Actions Per Minute)
- APM hoạt động như một hệ thống plugin nhưng chỉ dùng máy chủ MCP
- Mỗi khi muốn thêm chức năng, người dùng chỉ cần kết nối máy chủ MCP (ví dụ: kiểm tra chính tả, tự động gọi cà phê, phản ứng của nhân vật game, v.v.)
- Đây là một cấu trúc cho phép chính ứng dụng biến đổi linh hoạt thành nhiều hình thái khác nhau
Nguyên lý Giao thức Máy nướng bánh mì
- Mọi giao thức vĩ đại đều tạo ra đổi mới bằng cách được dùng vào những mục đích không ngờ tới, khác với ý định ban đầu
- HTTP: dùng cho bài báo học thuật → hạ tầng của nền văn minh
- Bluetooth: hands-free → mở khóa cửa trước, v.v.
- USB: thiết bị nhập liệu → sạc quạt cầm tay, v.v.
- MCP cũng vậy: ban đầu là để truyền ngữ cảnh cho AI, nhưng về bản chất là một giao thức kết nối mọi thứ với mọi thứ
- Tác giả nhấn mạnh rằng đây là nền tảng cho một hệ sinh thái plugin tạo ra những đổi mới khó lường
- Dù hoàn toàn không được định sẵn, đây lại là cách làm cực kỳ hợp với thời đại nối máy nướng bánh với màn hình bằng HDMI
Kết
- PS: Nếu bạn tạo được một chiếc máy tính tỏa ra mùi bánh mì mới nướng bằng máy chủ MCP, hãy nhớ liên hệ nhé
- PPS: APM Early Access đã được mở, và tác giả khuyến khích những thử nghiệm táo bạo cùng thực nghiệm sáng tạo
- (Ở đâu đó, vẫn có những giao thức đang được dùng đúng với mục đích ban đầu của chúng. Điều này rất đáng ngờ)
4 bình luận
Phản hồi của máy chủ MCP nhiều khả năng là ngôn ngữ tự nhiên, không có schema cố định.
Sẽ khó xử lý phản hồi ngôn ngữ tự nhiên này theo kiểu lập trình mà không dùng LLM.
Xin nói thêm, trong đặc tả mcp 2025-06-18 mới được bổ sung structured tool output, nên giờ đã có thể mô tả response schema. Các công cụ mcp đã được triển khai trước đây phần lớn đúng như bạn nói là unstructured, nhưng có vẻ các công cụ mcp sắp tới sẽ đáng để kỳ vọng hơn.
Lại gặp anh Winter ở đây nữa rồi haha
Mình đã không theo dõi được bản đặc tả 250618. Cảm ơn bạn!
Ý kiến Hacker News
Tôi thực sự thích bài viết này và cả giao thức MCP. Nhưng nhìn MCP lại khiến tôi liên tưởng đến microservices và SOA. Tôi lo rằng đây có thể là cơn ác mộng lặp lại của việc tạo ra những điểm lỗi mới. Mặt khác, cũng có cảm giác kỳ vọng rằng nhờ việc đưa agent vào, chuyện cải thiện độ tin cậy có thể diễn ra tự nhiên hơn
Tôi đồng tình với tư tưởng của bài viết, và thấy rất thú vị khi tác giả dùng MCP theo một cách hơi lệch khỏi mục đích ban đầu. Điểm mấu chốt thực sự ở đây không phải là sự xuất hiện của một giao thức cho phép làm những việc hoàn toàn mới chưa từng có. Thực ra, như các bình luận khác cũng nói, bản thân MCP không phải là ý tưởng gì đặc biệt mới mẻ hay thú vị. Điều thực sự đáng chú ý là nhờ làn sóng AI agent, tính tương tác liên vận (interoperability) đang được chú ý, còn vấn đề vendor lock-in thì bị xem như thứ đã lỗi thời. Không biết hiện tượng này sẽ kéo dài bao lâu, nhưng hiện tại vẫn là một diễn biến đáng mừng
Tác giả đặt nhiều kỳ vọng vào tính phổ dụng của MCP, nhưng thành thật mà nói tôi vẫn tự hỏi nó khác khái niệm API ở điểm nào. Nếu thay MCP bằng REST thì nội dung bài viết có thay đổi nhiều không? API hệ điều hành, POSIX hay Unix pipes cũng có nét tương đồng. Dĩ nhiên MCP đơn giản và phổ dụng hơn tất cả những thứ đó rất nhiều. Nhưng có lẽ lời giải thật sự không phải là cứ tạo thêm abstraction mới mỗi lần, mà là quay về làm phần mềm cơ bản thật tốt và thật đơn giản
list-tools. REST API có nhiều cách để liệt kê tài nguyên, còn MCP chỉ cung cấp một cách tiêu chuẩn hóa duy nhấtNhiều người nói MCP rất ghê gớm, nhưng tôi chưa thấy nhiều ví dụ thực sự làm ra thứ gì ấn tượng. Cảm giác khá giống thời blockchain bùng nổ. Cuối cùng tôi nghĩ MCP cũng chỉ là giải pháp tạm thời cho đến khi AI thông minh hơn. Khoảng 2 năm nữa, có lẽ thay vì MCP, người ta sẽ chỉ nạp nguyên tài liệu công cụ hoặc OpenAPI vào, rồi AI tự tiêu hóa toàn bộ context theo cách tự nhiên hơn
Tôi nghĩ chiến lược "Embrace, Expand, Extinguish" mà Microsoft vẫn luôn dùng cũng đang được áp dụng ở đây. Lý do là nếu để agent tự động khám phá công cụ một cách không kiểm soát thì sẽ làm tăng nguy cơ xung đột, xét về độ ổn định hệ thống và bảo mật. Có các lựa chọn thay thế như PydanitcAI, nhưng cuối cùng Microsoft đang chính thức đẩy MCP tại 'Build 2025' và dẫn dắt ngành theo nhịp của riêng họ. Anthropic đã tung ra tiêu chuẩn trong tình trạng công cụ còn yếu và governance thì thiếu, nên Microsoft rất dễ chiếm lĩnh. Bước tiếp theo có thể là Microsoft biến registry của mình thành chuẩn thực tế của ngành, rồi kết hợp với các lệnh chuyên biệt cho Windows. Cuối cùng, họ sẽ xoay chuyển tiêu chí “bảo mật” theo hướng có lợi cho mình để gạt đối thủ ra ngoài
Nếu bỏ hẳn yếu tố AI thì sao? Có lo ngại rằng nếu phụ thuộc trực tiếp vào MCP server mà không có middleware AI, ta sẽ ngay lập tức đụng phải vấn đề tương thích ngược. Bởi vì các MCP server được xây trên giả định rằng bên gọi là một thuật toán AI, nên các thay đổi phá vỡ tương thích đối với công cụ hoặc schema input/output có thể xảy ra bất kỳ lúc nào
Tôi cũng từng nghĩ tương tự, nhưng rồi lại thấy rằng phần lớn MCP server thực chất chỉ là client mới của các API sẵn có. Ví dụ, MCP server của Kagi chỉ đơn giản gọi Kagi API. Nếu vậy thì chẳng phải dùng trực tiếp API sẽ tốt hơn sao? Ngoài ra, hệ thống rồi sẽ ngày càng có thêm nhiều Python interpreter tương ứng với số MCP server, nên tôi cũng tò mò liệu sau này có xuất hiện một dịch vụ “hosting” để gom tất cả lại và bridge một lần hay không
/list-toolsvào API hiện có. Tất cả client trước tiên sẽ truy cập/list-toolsđể lấy danh sách công cụ khả dụng, sau đó mới gọi các API tương ứngcurlvào các route API có sẵn. Nếu OpenAPI spec đã đủ tốt thì MCP có thể không thực sự cần thiết. Dĩ nhiên, nếu chưa có API sẵn thì có vẻ hướng phát triển là để chính MCP server thực hiện luôn phần hành vi cốt lõiTôi thấy khá đồng cảm với nhiều ý kiến hoài nghi trong phần bình luận. Tuần trước tôi đã tự triển khai MCP server, và thành thật mà nói tôi cho rằng khen nó là “được thiết kế tốt” thì hơi quá. Một trong các mục tiêu của MCP là “để người ta có thể làm nó một cách đơn giản”, nhưng thực tế làm rồi thì không hề dễ đến thế. Dẫu vậy, điều quan trọng là hiện tại ánh nhìn của vô số developer đang đổ dồn về cùng một hướng. Trong kiểu momentum như thế này, tốc độ giải quyết vấn đề có thể tăng lên rất nhanh. Và hệ sinh thái cũng cần đạt một khối lượng phê bình đủ lớn mới hình thành được; tôi có cảm giác chính điểm bẻ đó đang thực sự đến. Chúc mọi người có đủ kiên nhẫn và may mắn
Tôi muốn nhấn mạnh rằng trong suốt lịch sử, việc hạ thấp rào cản tiếp cận đã luôn đóng vai trò quan trọng trong việc công nghệ được chấp nhận và lan rộng. MCP cũng là một phần nối dài của điều đó, và không nên bị xem nhẹ. Ngay trong đội của chúng tôi, một người hoàn toàn không có nền tảng kỹ thuật cũng đã có thể trực tiếp dùng agent để tự động hóa công việc chia sẻ tệp. Tất nhiên trước đây chuyện đó chỉ có thể làm bằng hàng trăm ngôn ngữ lập trình, thư viện và API, nhưng nhờ MCP mà giờ cả người không chuyên cũng có thể giải quyết ngay mà không cần bận tâm. Về hiệu năng thì không phải tốt nhất, cách triển khai cũng chưa phải tối ưu nhất, nhưng giá trị mà kiểu tiếp cận mới này mang lại, trong điều kiện tài nguyên và trình độ công nghệ hiện nay, là điều chưa từng có tiền lệ. Đó mới là điểm cốt lõi thực sự
Có câu đùa rằng “giá mà AI agent trong Warcraft 3 phản hồi theo kiểu peon, được sai gì làm nấy rồi đáp lại”, còn tôi thì muốn đi thuyền hơn
I'd rather be sailinglà câu thoại trong Warcraft 2, còn trong Warcraft 3 thì câu đáp làI'd rather be flying