MCP Server là gì mà dân dùng Claude Desktop, Cursor hay n8n gần đây nhắc liên tục? Đây là lớp trung gian cho AI quyền đọc file, truy vấn database, gọi tool thật theo một chuẩn giao tiếp thống nhất, thay vì chỉ trả lời bằng chữ suông. Nếu bạn từng thấy AI trả lời rất hay nhưng bó tay trước dữ liệu công ty, bài viết này của InterData sẽ chỉ đúng chỗ cần sửa.
NỘI DUNG BÀI VIẾT
- MCP Server là gì? Định nghĩa và ví dụ thực tế
- Kiến trúc MCP Server là gì: Host, Client, Server hoạt động như thế nào?
- MCP Server cung cấp gì? Tools, Resources và Prompts
- MCP khác REST API ở điểm nào?
- Cách cài đặt MCP Server cho Claude Desktop và Cursor
- MCP Server chạy local hay remote? Khi nào cần VPS riêng?
- Bảo mật MCP Server: checklist trước khi đưa vào production
- Danh sách MCP Server phổ biến và cách tự viết MCP Server riêng
- Câu hỏi thường gặp về MCP Server là gì và cách dùng
MCP Server Là Gì? Định Nghĩa Và Ví Dụ Thực Tế
MCP Server là một chương trình chạy theo chuẩn Model Context Protocol do Anthropic công bố, đóng vai trò cầu nối giữa AI và dữ liệu, công cụ bên ngoài. AI gửi yêu cầu, MCP Server thực thi hành động thật như đọc file, gọi API, truy vấn database, rồi trả kết quả lại cho AI xử lý tiếp.
Hình dung thế này: bạn hỏi Claude Desktop “liệt kê 5 đơn hàng mới nhất trong Google Sheets của tôi”. Không có MCP Server, Claude chỉ đoán hoặc từ chối vì không chạm được vào file thật. Có một MCP Server nối tới Google Sheets, Claude gọi đúng tool đọc dữ liệu, lấy về 5 dòng thật, rồi trả lời chính xác theo số liệu đang có.
Nhu cầu này rõ nhất ở nhóm đang xây AI Agent tự động hóa quy trình. Một agent thật sự hữu ích cần hành động được trên hệ thống, không chỉ sinh ra văn bản mô tả việc cần làm.

MCP Server Ra Đời Để Giải Quyết Vấn Đề Gì?
Trước khi có Model Context Protocol, mỗi ứng dụng AI muốn nối với một công cụ ngoài đều phải viết tích hợp riêng. Mười công cụ AI nối với mười hệ thống dữ liệu tạo ra hàng chục cách tích hợp khác nhau, không cái nào dùng lại được cho cái khác.
Anthropic công bố Model Context Protocol cuối năm 2024 để giải bài toán đó bằng một chuẩn giao tiếp chung. Viết một MCP Server đúng chuẩn, mọi client hỗ trợ MCP — từ Claude Desktop, Cursor đến các ứng dụng tự dựng — đều gọi được ngay, không cần code lại phần tích hợp.
Kiến Trúc MCP Server Là Gì: Host, Client, Server Hoạt Động Như Thế Nào?
MCP hoạt động theo ba lớp. Host là ứng dụng bạn dùng như Claude Desktop hoặc Cursor, Client là thành phần bên trong Host quản lý một kết nối tới một MCP Server, còn Server là chương trình cung cấp tool và dữ liệu thật. Mọi trao đổi giữa Client và Server đều đóng gói theo chuẩn JSON-RPC 2.0.
Luồng đi của một request khá đơn giản khi tách ra từng bước. Host khởi động, tạo Client cho từng Server đã cấu hình. Client gửi yêu cầu khởi tạo phiên, Server trả về danh sách năng lực nó có. Khi AI cần dùng một tool, Host gửi lệnh gọi qua Client dưới dạng bản tin JSON-RPC, Server thực thi và trả kết quả theo đúng định dạng đã thỏa thuận.

Hai Kiểu Transport Phổ Biến: STDIO Và Streamable HTTP (SSE)
STDIO dùng cho MCP Server chạy local: Host tự khởi động tiến trình Server trên cùng máy, hai bên trao đổi qua stdin/stdout, không qua mạng nên không cần xác thực phức tạp. Đây là cách phổ biến nhất khi bạn chỉ dùng MCP Server một mình trên máy cá nhân.
Streamable HTTP dùng cho MCP Server chạy remote: Server là một tiến trình độc lập, phục vụ nhiều kết nối cùng lúc qua HTTP, có thể dùng Server-Sent Events để stream nhiều bản tin về Client. Vì đi qua mạng, transport này bắt buộc phải có xác thực bằng API key hoặc OAuth.
Một điểm hay gây nhầm: tài liệu cũ hơn còn gọi “HTTP+SSE” là một transport riêng. Bản cập nhật quy chuẩn hiện tại gộp nó vào Streamable HTTP, SSE chỉ còn là cơ chế stream tùy chọn bên trong. Cách gọi và cấu hình cụ thể có thể khác nhau tùy phiên bản SDK và client bạn đang dùng, nên luôn kiểm tra tài liệu chính thức tại modelcontextprotocol.io trước khi triển khai.
MCP Server Cung Cấp Gì? Tools, Resources Và Prompts
Một MCP Server công bố năng lực của nó qua ba nhóm: Tools để AI gọi hành động, Resources để AI đọc dữ liệu có sẵn, Prompts để chuẩn hóa cách dùng server đó cho đúng ngữ cảnh.
- Tools: hàm hành động AI có thể chủ động gọi, ví dụ đọc file, ghi record vào database, gửi email, tạo task. Model quyết định khi nào gọi tool nào dựa trên mô tả server cung cấp.
- Resources: dữ liệu tĩnh AI có thể đọc như tài liệu, log, cấu hình, bản ghi trong bảng tính. Khác Tools ở chỗ Resources thường không gây tác động, chỉ để cung cấp ngữ cảnh.
- Prompts: mẫu câu lệnh dựng sẵn, giúp người dùng hoặc Host gọi đúng luồng thao tác phức tạp mà không phải soạn lại từ đầu mỗi lần.
Ba nhóm này không bắt buộc một Server phải có đủ cả ba. Nhiều MCP Server chỉ expose Tools, một số chỉ expose Resources tùy vào mục đích server đó được viết ra để phục vụ.
Lưu ý: MCP Server đọc được file hay dữ liệu lớn không có nghĩa AI xử lý được hết. Toàn bộ kết quả Tool trả về đều phải nhét vào cửa sổ ngữ cảnh (context) của model, nên file càng lớn càng dễ bị cắt bớt hoặc gây lỗi tràn context. Với dữ liệu lớn, server nên trả về theo từng phần, tóm tắt trước hoặc giới hạn dung lượng, thay vì đẩy nguyên file thô cho AI.
MCP Khác REST API Ở Điểm Nào?
MCP không thay thế REST API, nó giải quyết một bài toán khác: chuẩn hóa cách AI khám phá và gọi công cụ, thay vì mỗi ứng dụng phải học một cách gọi API riêng. Nếu bạn chưa nắm rõ khái niệm nền, đọc lại API là gì sẽ giúp phần so sánh dưới đây dễ hình dung hơn.
| Tiêu chí | MCP | REST API truyền thống |
|---|---|---|
| Khai báo năng lực | Server tự công bố danh sách Tools, Resources, Prompts khi Client kết nối, AI đọc được ngay. | Cần tài liệu riêng (OpenAPI, Swagger) và lập trình viên đọc để biết endpoint nào làm gì. |
| Trạng thái phiên | Có phiên làm việc (session) giữa Client và Server, duy trì ngữ cảnh xuyên suốt nhiều lượt gọi. | Thường stateless, mỗi request độc lập, không nhớ ngữ cảnh của request trước. |
| Ai chủ động gọi | Model tự quyết định gọi tool nào, khi nào, dựa trên yêu cầu của người dùng. | Lập trình viên viết sẵn logic gọi endpoint nào, khi nào trong code. |
| Mức chuẩn hóa | Một giao thức JSON-RPC 2.0 chung cho mọi MCP Server, mọi client tương thích đều đọc hiểu như nhau. | Mỗi API có schema, cách xác thực, quy ước lỗi riêng, không thống nhất giữa các nhà cung cấp. |
| Công sức thêm công cụ mới | Thêm một Tool vào Server, mọi Client hỗ trợ MCP dùng được ngay, không cần tích hợp lại. | Mỗi ứng dụng muốn dùng API mới phải viết integration riêng, lặp lại công sức cho từng nơi. |
Nền tảng có sẵn cả hai lớp tích hợp này là hướng nhiều người chọn khi build sản phẩm bằng AI. Bạn có thể trải nghiệm VPS Vibe Coding có sẵn API và MCP Server để thấy khác biệt trong thực tế thay vì chỉ đọc lý thuyết.

Cách Cài Đặt MCP Server Cho Claude Desktop Và Cursor
Cài MCP Server là thêm một entry vào file cấu hình JSON của client: claude_desktop_config.json với Claude Desktop, hoặc mcp.json với Cursor. Bạn khai báo lệnh chạy server nếu chạy local, hoặc URL kết nối nếu chạy remote, rồi khởi động lại ứng dụng để client nhận diện tool mới.
- Xác định MCP Server cần dùng và transport của nó: STDIO (local) hay Streamable HTTP (remote).
- Nếu chạy local, cài sẵn runtime cần thiết trên máy — thường là Node.js để chạy qua npx, hoặc Python nếu server viết bằng Python.
- Mở file cấu hình của client. Trên Claude Desktop vào Settings, mục Developer, chọn Edit Config để mở đúng file.
- Thêm entry mới trong khối mcpServers, đặt tên server, khai báo command và args, hoặc url nếu là remote.
- Lưu file, đóng hoàn toàn và mở lại client. Việc reload thường không đủ, cần tắt hẳn tiến trình.
- Kiểm tra kết nối trong phần quản lý MCP hoặc Tools của client, xem server và danh sách tool đã hiện ra chưa.
- Test bằng một yêu cầu cụ thể buộc AI phải gọi đúng tool đó, rồi xem log để chắc chắn request đã đi qua server thật.
Ví dụ cấu hình bên dưới khai báo một server local chạy filesystem qua STDIO và một server remote kết nối qua Streamable HTTP kèm API key:
{
"mcpServers": {
"filesystem-local": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-filesystem",
"/home/ubuntu/du-lieu"
]
},
"interdata-remote": {
"url": "https://mcp.vidu.example.com/mcp",
"headers": {
"Authorization": "Bearer YOUR_API_KEY_HERE"
}
}
}
}
Lỗi Thường Gặp Khi Cấu Hình MCP Server
- Server không hiện trong danh sách tool: thường do sai cú pháp JSON, thừa dấu phẩy hoặc thiếu dấu ngoặc. Kiểm tra file bằng một trình validate JSON trước khi lưu.
- Command not found: máy chưa cài Node.js hoặc Python, hoặc đường dẫn command sai. Chạy thử lệnh trực tiếp trong terminal trước khi đưa vào config.
- Kết nối remote báo lỗi 401: API key sai, hết hạn, hoặc header Authorization đặt sai định dạng.
- Client không nhận thay đổi: chưa tắt hẳn tiến trình cũ. Nhiều ứng dụng chạy ngầm ở khay hệ thống, đóng cửa sổ chưa chắc đã tắt tiến trình.
- Tool chạy nhưng không thấy kết quả đúng: kiểm tra lại phạm vi thư mục hoặc quyền truy cập server được cấp, có thể đường dẫn cấu hình không trỏ đúng nơi chứa dữ liệu thật.
MCP Server Chạy Local Hay Remote? Khi Nào Cần VPS Riêng?
Chạy local qua STDIO là đủ khi chỉ một mình bạn dùng: MCP Server khởi động cùng Claude Desktop hoặc Cursor, tắt ứng dụng là tắt luôn server. Bạn cần đưa MCP Server lên VPS chạy remote khi muốn nó hoạt động 24/7, phục vụ nhiều người hoặc nhiều thiết bị cùng lúc, hoặc cần quyền root để cài Docker và mở port riêng.
Local có lợi ở sự đơn giản: không cần domain, không cần lo bảo mật tầng mạng vì mọi thứ chạy trong máy bạn. Bù lại, nó gắn chặt với một thiết bị, không chia sẻ được cho đồng đội và mất kết nối ngay khi bạn tắt máy.
Remote giải quyết đúng những giới hạn đó nhưng đổi lại bạn phải tự quản lý hạ tầng: giữ tiến trình sống, theo dõi log, vá lỗi khi server crash. Nơi phổ biến nhất để chạy MCP Server remote là một VPS có quyền root, chạy Linux, cài được Docker hoặc cố định phiên bản Node.js, Python theo đúng yêu cầu của server.
Máy cá nhân hoặc gói hosting dùng chung thường không đáp ứng được nhu cầu này vì thiếu quyền root hoặc không cho chạy tiến trình nền lâu dài. Nếu mục tiêu là giữ tiến trình AI chạy ổn định qua công cụ như PM2 hay systemd, tham khảo cách thiết lập VPS Linux cho AI trước khi đưa MCP Server thật vào production.
Bảo Mật MCP Server: Checklist Trước Khi Đưa Vào Production
MCP Server không an toàn tuyệt đối khi bạn cấp quyền truy cập dữ liệu cho AI. Rủi ro thật nằm ở việc AI gọi nhầm tool, đọc file ngoài phạm vi cần thiết, hoặc lộ API key nếu cấu hình không cẩn thận. Giảm rủi ro bằng cách giới hạn quyền chặt, ghi log đầy đủ và chỉ cài server có nguồn gốc rõ ràng.
- Giới hạn phạm vi thư mục hoặc dữ liệu server được quyền truy cập, không cấp quyền toàn bộ filesystem cho một tool chỉ cần đọc vài file.
- Dùng API key riêng cho từng MCP Server, xoay vòng định kỳ, không hardcode chung trong một file cấu hình dùng cho nhiều nơi.
- Bật log truy cập: ghi lại tool nào được gọi, tham số gì, thời điểm nào, để có dữ liệu tra soát khi có sự cố.
- Kiểm tra nguồn gốc MCP Server trước khi cài — ưu tiên repo public trên GitHub có tác giả rõ ràng, tránh cài từ nguồn không kiểm chứng được.
- Chạy MCP Server bằng user riêng có quyền hạn chế trên VPS, không chạy bằng root trừ khi thật sự bắt buộc.
- Với MCP Server remote, bắt buộc xác thực bằng API key hoặc OAuth, không để endpoint mở public mà không kiểm tra token.
- Giới hạn rate limit và timeout cho từng tool để tránh trường hợp AI gọi lặp liên tục gây quá tải hệ thống.
Danh sách trên không loại bỏ hoàn toàn rủi ro, nó chỉ thu hẹp phạm vi thiệt hại nếu có sự cố xảy ra. Trước khi đưa MCP Server vào môi trường thật, hãy tự hỏi: nếu tool này bị gọi sai, thiệt hại lớn nhất có thể xảy ra là gì, và bạn có đang giới hạn đủ để chấp nhận được rủi ro đó không.
Danh Sách MCP Server Phổ Biến Và Cách Tự Viết MCP Server Riêng
Hệ sinh thái MCP Server thay đổi rất nhanh nên thay vì liệt kê con số cụ thể, bạn nên kiểm tra danh sách server đã được kiểm chứng tại kho chính thức github.com/modelcontextprotocol. Các nhóm phổ biến thường gặp gồm server thao tác filesystem, kết nối database như Postgres, tích hợp GitHub, Slack, Google Drive, và server điều khiển trình duyệt để AI tự thao tác trên web.
Ở phía automation, n8n đã hỗ trợ node cho phép workflow vừa gọi ra một MCP Server ngoài, vừa tự biến chính workflow đó thành một MCP Server để công cụ khác gọi vào. Đây là hướng nhiều đội automation dùng để nối AI với hệ thống nội bộ mà không phải viết server từ đầu.
Tự Viết MCP Server Bằng Python Hoặc Node.js
Muốn tự viết một MCP Server, bạn có hai lựa chọn SDK chính thức. Với Python, thư viện FastMCP cho phép định nghĩa một tool chỉ bằng một hàm và một decorator, phần còn lại của giao thức JSON-RPC được SDK xử lý sẵn.
Nếu quen tay với JavaScript, SDK chính thức cho Node.js giúp bạn định nghĩa tool bằng vài dòng code, sau đó publish qua npm để người khác cài đặt chỉ bằng một lệnh npx. Cả hai SDK đều theo cùng chuẩn giao thức nên một MCP Server viết bằng Python và một server viết bằng Node.js hoạt động y hệt nhau dưới góc nhìn của Client.
Xu hướng vibe coding — mô tả ý tưởng bằng lời để AI viết phần code còn lại — phát triển nhanh hơn nhờ MCP Server. AI không chỉ sinh code tĩnh mà còn thao tác trực tiếp với dữ liệu và API thật của sản phẩm đang xây, rút ngắn khoảng cách giữa ý tưởng và bản chạy được.
Đang cân nhắc chi phí trước khi chọn cấu hình VPS?
Trang Canh Me tổng hợp ưu đãi, mã giảm giá VPS và Cloud Server đang chạy tại InterData, kèm thời gian áp dụng và điều kiện đăng ký cụ thể.
Câu Hỏi Thường Gặp Về MCP Server Là Gì Và Cách Dùng
MCP Server dùng để làm gì trong thực tế?
MCP Server cho AI quyền gọi trực tiếp vào dữ liệu và công cụ thật: đọc file, truy vấn database, gọi API nội bộ, thao tác trên nền tảng như EzyPlatform. Thay vì chỉ trả lời dựa trên văn bản, MCP Server biến câu trả lời của AI thành hành động cụ thể trên hệ thống của bạn.
MCP khác REST API ở điểm nào?
REST API cần bạn viết code gọi từng endpoint theo tài liệu riêng, còn MCP chuẩn hóa cách AI tự khám phá và gọi tool qua JSON-RPC 2.0. Thêm một công cụ mới vào MCP Server, mọi client hỗ trợ MCP dùng được ngay, không phải tích hợp lại từ đầu như với REST API.
Chạy MCP Server có cần VPS riêng không?
Không bắt buộc. MCP Server chạy local qua STDIO trên máy cá nhân là đủ cho nhu cầu một người, không cần chạy nền liên tục. Bạn cần VPS riêng khi muốn MCP Server hoạt động 24/7, dùng chung cho nhiều thiết bị, hoặc cần quyền root để cài Docker và mở port.
MCP Server có an toàn khi cấp quyền truy cập dữ liệu không?
MCP Server không an toàn tuyệt đối nếu bạn cấp quyền tràn lan. Rủi ro nằm ở việc AI có thể đọc nhầm file nhạy cảm hoặc gọi tool ngoài ý muốn. Giảm rủi ro bằng cách giới hạn phạm vi thư mục, dùng API key riêng, bật log và chỉ cài server từ nguồn rõ ràng.
Người không biết lập trình có dùng được MCP Server không?
Dùng được, nếu chỉ cài một MCP Server có sẵn vào Claude Desktop hoặc Cursor theo hướng dẫn, không cần viết code. Nếu muốn tự viết MCP Server riêng bằng Python hoặc Node.js, bạn cần biết lập trình cơ bản hoặc nhờ AI hỗ trợ viết theo cấu trúc SDK có sẵn.
Tổng Kết: MCP Server Là Gì Và Bước Tiếp Theo Cho Bạn
Tóm gọn lại, MCP Server là gì: một chuẩn cầu nối để AI gọi được tool và dữ liệu thật, thay vì chỉ trả lời bằng chữ. Ba điều đáng nhớ nhất: kiến trúc Host-Client-Server giao tiếp qua JSON-RPC 2.0, chọn STDIO hay Streamable HTTP tùy bạn chạy local hay remote, và quyền truy cập cấp cho AI luôn cần giới hạn rõ ràng chứ không phải cấp tràn lan.
Nếu bạn đang xây sản phẩm bằng AI và muốn có sẵn cả hạ tầng lẫn lớp API, MCP Server để AI thao tác dữ liệu thật ngay từ đầu, đó chính là lúc nên nhìn sang một nền tảng đã chuẩn bị sẵn việc này.
Dựng sản phẩm AI có sẵn API và MCP Server, publish ngay trên VPS
VPS Vibe Coding gộp sẵn hạ tầng và nền tảng EzyPlatform để bạn đi từ ý tưởng đến sản phẩm chạy thật.
Nội dung trong bài mang tính tham khảo kỹ thuật, tổng hợp từ tài liệu chính thức của Model Context Protocol tại thời điểm viết bài. Tên trường cấu hình, đường dẫn file và cách khai báo transport có thể thay đổi theo hệ điều hành, phiên bản Claude Desktop, Cursor hoặc SDK bạn đang dùng. Trước khi áp dụng cho môi trường production, bạn nên đọc lại tài liệu mới nhất tại modelcontextprotocol.io, sao lưu dữ liệu và kiểm thử kỹ trên môi trường thử nghiệm.
