Vibe coding, deploy app từ Cursor và Claude Code qua MCP
Để Cursor hay Claude Code tự deploy app bạn vừa vibe coding, cài zo CLI của ZoCloud, tạo một token riêng cho agent và khai báo zo mcp làm MCP server. Từ đó agent tự tải thư mục lên, tạo database, đặt biến môi trường, đọc log và sửa lỗi, trong đúng phạm vi quyền của token.
Vì sao vibe coder cần một chỗ deploy mà agent dùng được
Viết app bằng AI giờ rất nhanh, nhưng bước đưa app lên Internet vẫn hay làm gián đoạn: tạo server, cài database, cấu hình HTTPS, đặt biến. Nếu chính agent làm được bước đó, vòng lặp "viết, deploy, xem log, sửa" diễn ra liền mạch trong một cuộc trò chuyện.
ZoCloud có sẵn ba thứ để làm điều này:
- zo CLI chạy trên macOS, Linux và Windows.
zo mcp: MCP server qua stdio, chuẩn mà Claude, Cursor và nhiều agent khác hỗ trợ.- Token truy cập có thời hạn, mang đúng quyền của bạn theo vai trò.
Cài đặt zo MCP server cho AI agent
Bước 1: Cài zo
macOS, Linux:
curl -fsSL https://app.zocloud.io/install.sh | sh
zo version
Windows: tải zo.exe ở Tài khoản → mục Deploy từ máy của bạn.
Bước 2: Tạo token riêng cho agent
- Portal → Tài khoản → Token truy cập.
- Nhập Tên (ví dụ
cursor-laptop) và Số ngày hiệu lực ngắn, bấm Tạo token. - Sao chép ngay: token dạng
zc_pat_…chỉ hiện một lần.
Thu hồi bất cứ lúc nào; danh sách ghi Dùng lần cuối. Nếu tổ chức bật Bắt buộc 2FA, bạn cần bật 2FA thì token mới thao tác được.
Bước 3a: Claude Code
claude mcp add zocloud -e ZOCLOUD_TOKEN=zc_pat_… -- zo mcp
Bước 3b: Cursor, Claude Desktop và agent khác
Thêm vào .cursor/mcp.json (hoặc cấu hình mcpServers của Claude Desktop):
{
"mcpServers": {
"zocloud": {
"command": "zo",
"args": ["mcp"],
"env": { "ZOCLOUD_TOKEN": "zc_pat_…" }
}
}
}
Nếu agent không tìm thấy zo, dùng đường dẫn đầy đủ (kết quả của which zo). Đừng commit file cấu hình có token vào repo.
Danh sách công cụ của zo MCP
Các công cụ nhận target dạng tổ-chức/project/service, hoặc org cho công cụ của tổ chức.
| Nhóm | Công cụ | Việc |
|---|---|---|
| Tài khoản | whoami |
người dùng, tổ chức, vai trò, đã được duyệt deploy chưa |
| Deploy | detect |
ZoCloud sẽ build thư mục thế nào |
deploy_folder |
tải thư mục lên và deploy (không gửi .env), chờ build, trả URL hoặc lỗi |
|
deploy_repo |
deploy repo Git công khai qua https | |
deploy_image |
deploy Docker image công khai | |
list_templates, deploy_template |
liệt kê và deploy template một-click | |
| Vận hành | status |
URL, số bản chạy ổn, deploy gần đây |
logs |
output gần đây của container | |
set_variables |
đặt/xoá biến, hỗ trợ ${{tên.DATABASE_URL}} |
|
scale |
số bản chạy (0–20) | |
rollback |
quay lại một deploy cũ | |
add_volume |
thêm volume tại một đường dẫn | |
set_cron, run_cron |
biến service thành cron job; chạy ngay và lấy kết quả | |
| Database | create_database |
tạo postgres, mysql, valkey; trả biến tham chiếu |
database_public |
mở/đóng truy cập từ Internet (TLS) | |
| Tên miền | add_domain |
gắn tên miền riêng, trả bản ghi DNS cần tạo |
check_domain |
tên miền còn trống không và giá (gồm VAT) | |
buy_domain |
mua bằng ví, chỉ sau check_domain, cần đúng giá đã đồng ý |
|
list_domains |
tên miền đã mua, trạng thái, ngày hết hạn | |
dns_records, set_dns_record, remove_dns_record |
đọc và sửa bản ghi trên ZoCloud DNS | |
| AI | ai_models |
model của AI gateway và giá |
create_ai_key |
tạo key AI (chỉ hiện một lần) | |
ai_usage |
sử dụng AI theo ngày |
Một phiên vibe coding điển hình
Bạn có thể nói với agent bằng tiếng Việt:
- "Deploy thư mục này lên ZoCloud vào
myorg/shop/web, thêm PostgreSQL và gắnDATABASE_URL." - "Xem log của
myorg/shop/webvà sửa lỗi khiến app không khởi động." - "Kiểm tra
shopcuatoi.vncòn trống không và báo giá 1 năm."
Với yêu cầu đầu tiên, agent thường làm theo chuỗi:
whoamiđể biết tổ chức và tài khoản đã được duyệt deploy chưa.detectđể xem ZoCloud nhận diện framework và lệnh chạy thế nào.create_databasevới enginepostgres, nhận về biến tham chiếu.set_variablesđặtDATABASE_URL=${{pg.DATABASE_URL}}.deploy_folder, chờ build và nhận URL dạnghttps://web-shop.zocloud.app.- Nếu lỗi:
logs, sửa code,deploy_folderlại.
Lỗi agent hay gặp nhất là app không nghe 0.0.0.0 và cổng trong biến PORT. Bạn có thể nhắc điều này ngay trong prompt, hoặc ghi vào file quy tắc của agent (như CLAUDE.md, .cursorrules).
Thêm AI vào app mà agent vừa viết
App cần gọi model ngôn ngữ? Agent dùng ai_models để xem model và giá, create_ai_key để tạo key, rồi set_variables để đặt key vào biến (ví dụ OPENAI_API_KEY) thay vì ghi vào code. AI gateway của ZoCloud chuẩn OpenAI, base URL https://api.zocloud.io/v1/ai, tính tiền theo token từ ví VND. Xem thêm hướng dẫn AI.
Không dùng MCP? Agent vẫn chạy được lệnh zo
Agent có quyền chạy terminal có thể gọi thẳng CLI, với biến ZOCLOUD_TOKEN:
zo deploy -to myorg/shop/web
zo db create pg -engine postgres
zo vars set 'DATABASE_URL=${{pg.DATABASE_URL}}'
zo deploy
zo logs -since 1h
Giữ an toàn khi giao việc deploy cho agent
- Một token riêng cho agent, hạn ngắn, thu hồi khi xong.
- Vai trò phù hợp: token mang quyền của bạn trong từng tổ chức. Muốn agent chỉ deploy mà không xoá được database, hãy dùng tài khoản có vai trò Developer trong tổ chức đó (khi đó agent cũng không tạo được database, nên tạo database trước).
- Không đưa bí mật vào code:
deploy_folderkhông gửi.env; đặt biến bằngset_variables. - Tiền thật:
buy_domaincầnconfirm_price_vndđúng giá đã báo; agent phải hỏi bạn trước. Đặt Giới hạn chi tiêu cho phần dùng vượt gói và Hạn mức mỗi tháng cho key AI. - Xem lại: mục Hoạt động ghi mọi việc đã làm trong tổ chức, kể cả qua token.
Câu hỏi thường gặp
AI agent deploy lên ZoCloud bằng cách nào?
Chạy lệnh zo mcp, một MCP server qua stdio, rồi khai báo nó trong Claude Code, Cursor hoặc Claude Desktop. Agent dùng các công cụ như deploy_folder, create_database, set_variables và logs để deploy và sửa lỗi.
Agent có làm được mọi thứ trong tài khoản không?
Không. Agent chỉ làm được những gì token của bạn được phép theo vai trò trong tổ chức. Nên tạo một token riêng cho agent, đặt số ngày hiệu lực ngắn và thu hồi khi không dùng.
Agent có tự mua tên miền tốn tiền không?
Công cụ buy_domain chỉ chạy sau check_domain và cần đúng giá đã đồng ý (confirm_price_vnd). Agent phải hỏi bạn giá trước, và nếu giá đã đổi thì không mua gì.
File .env có bị gửi lên khi agent deploy không?
Không. deploy_folder không gửi file .env, zo cũng bỏ qua .git, node_modules và các mẫu trong .gitignore. Biến môi trường được đặt bằng công cụ set_variables.
Để agent deploy giúp bạn
Đăng ký ZoCloud, tạo token và thêm zo mcp vào agent bạn đang dùng. Chi tiết ở hướng dẫn zo CLI và MCP và thành viên, token. Muốn tự làm từng bước trước? Xem deploy Node.js có PostgreSQL.