Quay lại blog
BananaBanana Teamtutorialmcpcursor

Tạo ảnh trong Cursor: Hướng dẫn cấu hình máy chủ MCP

Kết nối Cursor với máy chủ MCP từ xa để tạo ảnh trực tiếp vào repo: cấu hình mcp.json, bảo mật biến môi trường, mẹo sử dụng và chi phí thực tế chỉ từ $0.03.

Tạo ảnh trong Cursor: Hướng dẫn cấu hình máy chủ MCP

Máy chủ MCP (Model Context Protocol) cho Cursor giống như một hộp công cụ bên ngoài mà agent của trình soạn thảo có thể gọi trực tiếp từ khung chat: bạn chỉ cần thêm một khối JSON vào mcp.json, và Cursor sẽ có thêm những khả năng mà các mô hình gốc không sở hữu, bao gồm cả tạo ảnh. Agent của Cursor có thể chỉnh sửa tệp và chạy các lệnh terminal suốt cả ngày, nhưng không mô hình nào đứng sau nó có khả năng tự tạo ra một tệp hình ảnh. Khi kết nối với một máy chủ tạo ảnh từ xa, yêu cầu "tạo cho tôi một ảnh banner tỷ lệ 16:9 cho landing page này" sẽ trở thành một câu lệnh chat bình thường và kết quả trả về là một tệp thực tế ngay trong repo của bạn.

Dưới đây là toàn bộ các bước cấu hình nhanh nếu đó là tất cả những gì bạn đang tìm kiếm. Hãy tạo một API key trong hồ sơ BananaBanana, sau đó thêm đoạn mã này vào tệp ~/.cursor/mcp.json (cấu hình toàn cục) hoặc tệp .cursor/mcp.json trong dự án của bạn:

{
  "mcpServers": {
    "bananabanana": {
      "url": "https://bananabanana.pro/api/mcp",
      "headers": {
        "Authorization": "Bearer ${env:BB_API_KEY}"
      }
    }
  }
}

Chỉ cần xuất (export) biến môi trường BB_API_KEY=bb_live_YOUR_KEY là xong. Không cần chạy tiến trình máy chủ cục bộ, không cần tài khoản Google Cloud và không cần đăng ký gói thuê bao. Chi phí tạo hình ảnh được trừ vào số dư trả trước chỉ từ $0.03, và video từ $0.10. Cả hai hình ảnh minh họa trong bài hướng dẫn này đều được tạo thông qua chính cấu hình này bằng một live key thực tế khi tôi đang viết bài; lịch sử lệnh (traces) và hóa đơn phương tiện trị giá $0.55 được hiển thị chi tiết bên dưới.

Tại sao nên tích hợp trình tạo ảnh vào Cursor?

Bởi vì trong quá trình làm frontend, nhu cầu sử dụng hình ảnh thường xuất hiện ngay đúng lúc tay bạn đang gõ code. Một bức ảnh banner cho landing page. Các ảnh mẫu (placeholder) cho thẻ sản phẩm để lưới hiển thị không bị trống hoặc có những ô xám xịt khi xuất bản. Một bức ảnh OG (Open Graph) cho bài viết blog bạn vừa thiết lập xong. Không việc nào trong số này là khó cả, nhưng trước đây, mỗi việc đều yêu cầu một quy trình tẻ nhạt lặp đi lặp lại: mở một trình tạo ảnh trên trình duyệt, gõ prompt, tải về, đổi tên, kéo thả vào thư mục public/, quay lại editor rồi viết thẻ <img>. Mất khoảng mười phút làm những việc thủ công tủn mủn đó cho mỗi tài nguyên, và thế là bạn mất đi sự tập trung vào component đang viết dở.

Với máy chủ MCP, agent sẽ tự động thực hiện toàn bộ vòng lặp đó. Nó sẽ tự viết prompt (thường là tốt hơn cả bản nháp sơ sài đầu tiên của tôi), gọi hàm generate_image, tải kết quả về đúng thư mục và viết mã markup kèm theo văn bản thay thế (alt text). Bạn chỉ việc xem lại bản so sánh thay đổi (diff) thay vì phải tự tay làm những công việc lặp đi lặp lại đó.

Điểm cộng lớn nữa là những gì bạn KHÔNG cần cài đặt. Các máy chủ MCP chạy cục bộ để tạo ảnh vẫn tồn tại và hoạt động được, nhưng chúng yêu cầu bạn phải tự chạy tiến trình Node hoặc Python của riêng mình và tự chuẩn bị Google API key, đi kèm với giới hạn hạn ngạch (quota) và quản lý thanh toán trên tài khoản Google cá nhân. Một máy chủ từ xa sẽ loại bỏ hoàn toàn những rắc rối đó: endpoint đã được chạy sẵn phía chúng tôi, trên cùng một hệ thống xử lý của trình tạo BananaBanana, và thông tin xác thực duy nhất bạn cần chỉ là một mã bb_live_ key.

Hình minh họa laptop được kết nối bằng cáp phát sáng đến một xưởng vẽ nhỏ trên đám mây, ẩn dụ cho việc Cursor gọi một máy chủ MCP tạo ảnh từ xa

Làm thế nào để thêm máy chủ MCP vào Cursor?

Chỉ với ba bước, mất khoảng hai phút. Các chi tiết cấu hình dưới đây đã được đối chiếu và kiểm tra kỹ lưỡng với tài liệu chính thức về Cursor MCP cập nhật đến ngày 11 tháng 7 năm 2026.

Đầu tiên, hãy đăng ký và mở trang Hồ sơ (Profile) → MCP API Keys. Tạo một key mới. Key này chỉ hiển thị một lần duy nhất, bắt đầu bằng bb_live_, và được lưu trữ dưới dạng băm (hashed) ở phía chúng tôi, vì vậy hãy sao chép nó ngay lập tức. Các tài khoản mới tạo sẽ được tặng sẵn $0.20 trong số dư, đủ để bạn tạo sáu bức ảnh thử nghiệm với mô hình giá rẻ nhất.

Thứ hai, chọn nơi lưu trữ cấu hình. Cursor đọc từ hai vị trí sau:

  • ~/.cursor/mcp.json — toàn cục (global), máy chủ này sẽ tự động khả dụng trong mọi dự án bạn mở;
  • .cursor/mcp.json trong thư mục gốc của repo — phạm vi dự án (project-scoped), và bạn có thể commit tệp này lên Git một cách an toàn nếu bạn không để lộ API key trong đó.

Điều kiện "nếu" đó chính là lý do chúng ta sử dụng tính năng nội suy ${env:BB_API_KEY} trong đoạn mã cấu hình ở trên: Cursor sẽ tự động thay thế các biến môi trường vào giá trị trong tệp mcp.json tại thời điểm tải cấu hình, nhờ đó bản thân tệp cấu hình không chứa bất kỳ thông tin nhạy cảm nào. Cú pháp này cũng hỗ trợ ${workspaceFolder} cùng một vài biến hữu ích khác theo tài liệu hướng dẫn.

Thứ ba, khởi động lại hoặc tải lại (reload) Cursor, sau đó mở Cursor Settings → MCP. Máy chủ sẽ xuất hiện với biểu tượng đèn báo màu xanh lá cây và danh sách gồm bảy công cụ, từ list_models cho đến list_generations. Trang máy chủ MCP của chúng tôi cũng cung cấp sẵn đoạn mã tương tự kèm theo bảng tương thích cho mọi ứng dụng client khác mà chúng tôi đã xác minh:

Đoạn mã cấu hình Cursor trên trang tài liệu MCP của BananaBanana hiển thị khối mcp.json với tính năng nội suy biến môi trường

Nếu máy chủ không hiển thị, hãy chuyển nhanh xuống phần lưu ý về các lỗi vặt (quirks). Nguyên nhân hầu như luôn nằm ở biến môi trường chứ hiếm khi do bản thân tệp cấu hình.

Tình huống thực tế: tạo ảnh banner trang đích và ảnh sản phẩm không cần rời khung chat

Kịch bản thực tế làm nền tảng cho bài viết này: bạn là một nhà phát triển frontend đang xây dựng landing page cho một thương hiệu đồ dã ngoại ngoài trời, và thiết kế yêu cầu một bức ảnh banner lớn tràn màn hình (full-width hero) chụp cảnh cắm trại lúc bình minh. Trong khung chat của Cursor, bạn chỉ cần đưa ra yêu cầu đó, agent sẽ tự động viết một prompt mô tả đậm chất nhiếp ảnh nghệ thuật và gọi công cụ tạo ảnh. Dưới đây là lịch sử lệnh (trace) thực tế từ phiên làm việc của tôi, giữ nguyên job ID thực:

→ generate_image {"prompt": "A photorealistic wide hero shot for an outdoor
   gear brand landing page: a lone orange tent glowing softly on the shore of
   a still alpine lake at dawn, mist over the water, sharp granite peaks
   catching the first pink light, generous empty sky for headline text, low
   angle, 35mm lens, no text", "model": "nano-banana-pro", "aspect_ratio": "16:9"}
← {"job_id": "cmrgox3xj000s…", "status": "processing",
   "cost_charged_usd": 0.11, "balance_remaining_usd": 1554.40}
→ get_result {"job_id": "cmrgox3xj000s…"}
← {"status": "completed", "files": [{"url": "https://bananabanana.pro/api/files/…"}]}

Chỉ mất mười tám giây từ lúc gọi hàm cho đến khi tệp ảnh hoàn thành. Đây chính là kết quả thực tế nhận được ngay từ lượt tạo đầu tiên, hoàn toàn không phải chọn lại hay tạo lại:

Ảnh banner trang đích do AI tạo vẽ cảnh một chiếc lều màu cam bên hồ núi cao đầy sương mù lúc bình minh, được tạo trong Cursor thông qua máy chủ MCP của BananaBanana

Sau đó, agent sẽ tự động tải tệp từ URL có chữ ký bảo mật (signed URL) vào thư mục public/ rồi viết code cho component. Các liên kết này có hiệu lực trong vòng 24 giờ; sau thời gian đó, một lệnh gọi get_result mới sẽ cấp lại liên kết mới cho bạn.

Việc tạo các ảnh mẫu sản phẩm cũng được thực hiện tương tự nhưng với yêu cầu khung hình vuông vắn hơn. Đối với lưới thẻ sản phẩm, tôi đã yêu cầu một bức ảnh chụp bình nước theo đúng cách bạn mô tả yêu cầu cho một nhiếp ảnh gia: chủ thể, bề mặt đặt sản phẩm, ánh sáng, ống kính. Chỉ một cuộc gọi, tốn $0.11 và mất đúng hai mươi giây:

Ảnh mẫu sản phẩm chân thực của một bình nước bằng thép không gỉ với nắp màu xanh xám đặt trên đá granite, được tạo trong Cursor qua MCP cho lưới thẻ của trang đích

Cả hai hình ảnh minh họa trên đều được chạy trên Nano Banana Pro vì chúng được sử dụng trực tiếp trên trang này. Đối với các hình ảnh phụ chỉ để lấp đầy khung lưới tạm thời, thành thật mà nói tôi khuyên bạn nên dùng nano-banana-2-lite với mức giá siêu rẻ $0.03 và chỉ nâng cấp lên mô hình cao hơn cho những hình ảnh vượt qua vòng kiểm duyệt thiết kế; hướng dẫn Lite của chúng tôi sẽ chỉ rõ những trường hợp nào thì mô hình giá rẻ này đã là quá đủ. Và nếu bạn cần tạo cùng một nhân vật mascot xuyên suốt một chuỗi hình ảnh, kỹ thuật viết prompt sẽ đóng vai trò quyết định hơn cả công cụ client bạn dùng, vì vậy hãy tham khảo hướng dẫn thực tế về tính nhất quán của nhân vật của chúng tôi.

Bạn cũng có thể tạo video ngay trong cùng một khung chat này. Hàm generate_video không bao giờ tính phí ở lượt gọi đầu tiên: nó sẽ trả về một báo giá trước, và agent bắt buộc phải gọi lại hàm đó kèm theo tham số confirm_cost để xác nhận đồng ý với mức phí chính xác đó. Một đoạn video ngắn không tiếng độ phân giải 720p tạo bằng Veo 3.1 Lite có giá khởi điểm chỉ từ $0.10; còn Omni Flash có kèm âm thanh có giá $0.10 mỗi giây, tương đương $0.30 cho một cảnh quay ba giây.

Những lưu ý quan trọng về lỗi vặt trong Cursor bạn nên biết trước khi triển khai

Mỗi ứng dụng client đều có những điểm hạn chế hoặc hành vi bất tiện riêng. Dưới đây là những lưu ý thực tế mà tôi muốn cảnh báo trước cho đồng nghiệp của mình, được đúc kết trực tiếp trong quá trình thử nghiệm cấu hình ở trên.

Hình minh họa một robot nhỏ đang kiểm tra ba biển chỉ dẫn có hình ngôi nhà, thư mục và ổ khóa, ẩn dụ cho phạm vi cấu hình và bảo mật của Cursor

1. ${env:…} chỉ hoạt động nếu Cursor có thể nhìn thấy biến môi trường đó. Câu lệnh export trong tệp .zshrc của bạn chỉ có tác dụng khi bạn khởi chạy Cursor từ terminal, nhưng một ứng dụng giao diện đồ họa (GUI) được mở từ Dock hoặc thanh khởi chạy ứng dụng trên desktop sẽ không đọc cấu hình shell profile của bạn, dẫn đến cấu hình trên sẽ âm thầm thất bại. Theo kinh nghiệm của tôi, đây là nguyên nhân số một gây ra lỗi "máy chủ không kết nối được" trên hệ điều hành macOS. Cách khắc phục: thiết lập biến môi trường ở cấp độ hệ điều hành (launchctl setenv trên macOS, hoặc System Environment Variables trên Windows), hoặc thử mở Cursor từ terminal một lần để kiểm tra xem cấu hình có hoạt động bình thường hay không.

2. Cấu hình dự án là một tính năng tuyệt vời cho đội ngũ phát triển, mỗi người dùng một key riêng. Khi bạn commit tệp .cursor/mcp.json sử dụng trình giữ chỗ ${env:BB_API_KEY}, mọi thành viên trong nhóm sẽ có ngay máy chủ MCP này ngay sau khi họ clone dự án về máy và cấu hình key của riêng họ. Sự phân tách này quan trọng hơn bạn nghĩ: việc tạo key là hoàn toàn miễn phí, và mỗi key sẽ có nhật ký sử dụng riêng (chi tiết về công cụ, mô hình sử dụng, chi phí, xem trước prompt) cùng giới hạn ngân sách hàng ngày tùy chọn bằng USD trong mục Profile → MCP API Keys. Khi có thành viên rời nhóm, bạn chỉ cần thu hồi một key đó mà không hề ảnh hưởng đến bất kỳ ai khác. Các gói doanh nghiệp của Cursor cũng hỗ trợ đẩy cấu hình máy chủ MCP trực tiếp từ trang quản lý của nhóm (team dashboard), nhưng việc commit tệp cấu hình này hoạt động hiệu quả trên mọi gói dịch vụ.

3. Cursor sẽ hỏi ý kiến bạn trước mỗi cuộc gọi công cụ, và bạn nên giữ nguyên thiết lập này. Theo mặc định, mỗi khi có cuộc gọi MCP, ứng dụng sẽ chờ bạn phê duyệt, các tham số truyền vào được hiển thị dưới một mũi tên nhỏ ngay cạnh tên công cụ. Ở chế độ tự động chạy (auto-run), các công cụ nằm trong danh sách cho phép (allowlist) sẽ được thực thi ngay lập tức. Tôi biết việc phải bấm duyệt hai mươi lần khi tạo hàng loạt có thể hơi phiền phức, nhưng đối với các công cụ phát sinh chi phí thực tế cho mỗi lần gọi, tôi khuyên bạn nên duy trì chế độ yêu cầu phê duyệt và chỉ cho phép các công cụ miễn phí như (list_models, get_result) tự động chạy. Dù sao thì tính năng tạo video cũng đã có một lớp bảo vệ thứ hai ở phía hệ thống của chúng tôi: không có khoản phí nào vượt quá báo giá được tính nếu không có tham số confirm_cost đồng ý thực hiện.

4. Bạn có thể xem ảnh kết quả trực tiếp ngay trong khung chat. Theo tài liệu của Cursor, các hình ảnh được trả về bởi công cụ MCP sẽ được đính kèm trực tiếp vào cuộc hội thoại, và các mô hình hỗ trợ thị giác (vision-capable models) có thể phân tích chúng ngay lập tức. Hàm get_result của chúng tôi trả về một ảnh xem trước định dạng WebP nhỏ bên cạnh URL chính thức, giúp agent (và cả bạn) có thể đánh giá kết quả tạo ảnh mà không cần mở trình duyệt. Điều này cũng đồng nghĩa với việc agent có khả năng tự sửa lỗi: bạn có thể yêu cầu nó kiểm tra hình ảnh vừa tạo và tạo lại nếu chẳng hạn như chiếc lều vô tình nằm đè lên khu vực dành cho văn bản tiêu đề chính.

5. Các liên kết cài đặt một cú nhấp chuột (one-click install) có tồn tại, nhưng tuyệt đối không được nhúng API key vào đó. Cursor hỗ trợ các liên kết sâu cursor:// (deeplinks) cho phép cài đặt máy chủ MCP từ cấu hình được mã hóa base64, theo tài liệu về install-links. Điều này rất tiện lợi cho các máy chủ công khai (open servers) nhưng cực kỳ nguy hiểm đối với các máy chủ yêu cầu xác thực, bởi cấu hình được mã hóa đó sẽ mang theo trực tiếp API key thực tế của bạn, và bất kỳ ai có được liên kết đều có thể sử dụng hết số dư tài khoản của bạn. Đó là lý do tại sao nút cài đặt trên trang web của chúng tôi là một đoạn mã để copy-paste với một biến giữ chỗ thay vì liên kết cài đặt nhanh Add-to-Cursor. Hãy dán đoạn mã đó, xuất biến môi trường ra hệ thống, và thế là xong.

Một hạn chế thực tế từ góc độ sản phẩm mà chúng tôi muốn chia sẻ thẳng thắn: công cụ generate_image qua MCP hiện tại vẫn chưa hỗ trợ nhận hình ảnh đầu vào, do đó các tính năng tạo ảnh dựa trên ảnh tham chiếu (reference-based generation) và chuyển ảnh thành video (image-to-video) vẫn cần phải thực hiện thông qua trình tạo web. Còn các tính năng tạo ảnh từ văn bản (text-to-image), tinh chỉnh ảnh qua nhiều bước edit_image và chuyển văn bản thành video (text-to-video) đều đã hoạt động trơn tru qua giao thức MCP ngày hôm nay.

Chi phí cho các hình ảnh minh họa trong bài viết này là bao nhiêu?

Đây là mức giá tiêu chuẩn cho mỗi lượt tạo, hoàn toàn trùng khớp với các số liệu mà hàm list_models báo cáo cho agent, không có bất kỳ ưu đãi nội bộ hay chiết khấu đặc biệt nào:

Tài nguyênMô hìnhChi phí
Ảnh minh họa banner trang đích, qua MCP sử dụng live keyNano Banana Pro, 1K$0.11
Ảnh mẫu sản phẩm, qua MCPNano Banana Pro, 1K$0.11
Ảnh bìa + 2 hình minh họa nội dungNano Banana Pro, 1K$0.33
Ảnh chụp màn hình trang tài liệuchụp từ trình duyệt, không phải tạo bằng AI$0.00
Tổng cộng$0.55

Trong lần thử nghiệm này, tất cả các hình ảnh đều đạt yêu cầu ngay từ lần tạo đầu tiên, tuy nhiên thực tế không phải lúc nào cũng suôn sẻ như vậy; bạn nên dự trù thêm ngân sách cho một hoặc hai lần tạo lại (reroll) khi chụp ảnh sản phẩm và hãy nhớ phóng to để kiểm tra kỹ trước khi xuất bản, vì độ chính xác về hình học của các vật thể vẫn là điểm yếu dễ mắc lỗi nhất của các mô hình tạo ảnh chân thực.

Nếu bạn đã và đang chạy máy chủ này trong Claude, thì cấu hình Cursor ở trên là phần duy nhất mới đối với bạn: vẫn sử dụng chung một key, chung số dư tài khoản và chung lịch sử hoạt động. Nếu bạn là người mới bắt đầu từ con số không, hướng dẫn chi tiết cho Claude Code của chúng tôi cũng đề cập đến bốn tình huống sử dụng thực tế khác có thể áp dụng gần như hoàn toàn tương thích cho Cursor. Đã sẵn sàng thử nghiệm chưa? Hãy tạo một key mới và yêu cầu Cursor tạo bức ảnh banner đầu tiên của bạn ngay thôi.

Câu hỏi thường gặp (FAQ)

Cursor có hỗ trợ các máy chủ MCP từ xa sử dụng tiêu đề xác thực Authorization header không?

Có, Cursor hỗ trợ tính năng này hoàn toàn gốc (native). Kể từ khi Cursor bổ sung phương thức truyền tải Streamable HTTP, một máy chủ từ xa chỉ đơn thuần là một trường url đi kèm với đối tượng cấu hình tùy chọn headers bên trong tệp mcp.json, không đòi hỏi bất kỳ tiến trình bắc cầu cục bộ (local bridge process) nào, và việc nội suy biến môi trường ${env:VAR} sẽ giúp giữ an toàn cho khóa bí mật không bị lưu trực tiếp trong tệp cấu hình. Đây chính là cấu hình được sử dụng trong bài viết này, đã được kiểm duyệt với tài liệu chính thức về Cursor MCP vào ngày 11 tháng 7 năm 2026. Cursor cũng hỗ trợ giao thức OAuth cho các máy chủ từ xa; hiện tại endpoint của chúng tôi xác thực qua Bearer keys, và chúng tôi đang có kế hoạch tích hợp thêm tùy chọn thứ hai là OAuth 2.1.

Tôi có cần phải có Google API key để tạo hình ảnh trong Cursor không?

Không cần. Các máy chủ MCP tạo hình ảnh chạy cục bộ (local) sẽ trực tiếp gọi đến Gemini API, do đó chúng yêu cầu bạn phải sở hữu Google key cá nhân với các giới hạn hạn ngạch và thông tin thanh toán riêng. Với máy chủ từ xa, tác vụ tạo ảnh sẽ chạy trực tiếp trên hệ thống máy chủ được quản lý của BananaBanana thông qua nhóm Vertex AI keys, và thông tin xác thực duy nhất bạn cần chuẩn bị chỉ là mã bb_live_ key lấy từ trang hồ sơ của mình. Bạn sẽ đánh đổi việc truy cập trực tiếp vào API thô của Google để lấy mức giá tính theo mỗi lượt tạo cực kỳ hợp lý mà không yêu cầu hạn mức chi tiêu tối thiểu, quản lý số dư qua hình thức trả trước tiện lợi và một chiếc key bảo mật có thể dễ dàng thu hồi chỉ bằng một cú nhấp chuột.

Tôi nên thiết lập cấu hình MCP ở chế độ toàn cục hay theo từng dự án?

Cả hai phương án đều hoạt động tốt; sự khác biệt nằm ở phạm vi áp dụng và khả năng chia sẻ. Tệp ~/.cursor/mcp.json sẽ đi theo tài khoản của bạn vào mọi thư mục repo, rất phù hợp với nhu cầu thiết lập cá nhân. Ngược lại, tệp .cursor/mcp.json đặt tại thư mục gốc của dự án sẽ đi kèm trực tiếp với repo đó, giúp toàn bộ đội ngũ phát triển có thể sử dụng ngay máy chủ sau khi clone dự án về máy; chỉ cần lưu cấu hình key dưới dạng tham chiếu biến môi trường ${env:…} thì tệp cấu hình hoàn toàn có thể commit lên Git một cách an toàn. Thói quen mặc định của tôi là áp dụng cấu hình cấp độ dự án (project-level) cho bất kỳ dự án nào có sự tham gia của một nhóm phát triển, bởi một cấu hình được lưu trực tiếp trên Git kết hợp với việc mỗi lập trình viên sử dụng một key riêng biệt sẽ giúp bạn dễ dàng theo dõi nhật ký sử dụng và kiểm soát việc thu hồi quyền truy cập đối với từng cá nhân.

Cursor có thể tạo được video thông qua cùng một máy chủ này không?

Có thể, nhưng sẽ có thêm một bước xác nhận chi phí. Công cụ generate_video luôn luôn trả về một báo giá trước tiên, và agent bắt buộc phải lặp lại lệnh gọi đó với tham số confirm_cost khớp chính xác với số tiền được báo trước khi bất kỳ khoản phí nào thực sự được trừ vào tài khoản. Giá dịch vụ dao động từ $0.10 cho một đoạn video không tiếng thời lượng 4 giây độ phân giải 720p tạo bằng Veo 3.1 Lite cho đến tối đa $4.40 cho một sản phẩm kết xuất hoàn thiện cao cấp bằng Veo 3.1 có kèm âm thanh, và Omni Flash có tiếng có giá $0.10 mỗi giây ($0.30–$1.00 một clip). Quá trình tạo video có thể mất từ một đến mười phút, do đó agent sẽ liên tục thăm dò kết quả qua hàm get_result trong khi nó vẫn tiếp tục hoàn thành các phần code khác cho bạn.

Tại sao máy chủ của tôi không hiển thị trong Cursor sau khi tôi đã chỉnh sửa mcp.json?

Có ba nguyên nhân phổ biến nhất dưới đây, được xếp theo thứ tự khả năng xảy ra từ cao xuống thấp. Đầu tiên, biến môi trường không hiển thị đối với tiến trình của Cursor: các ứng dụng được mở trực tiếp bằng giao diện người dùng (GUI) sẽ không đọc được shell profile của bạn, vì vậy hãy thiết lập biến này ở cấp độ hệ điều hành hoặc mở Cursor từ terminal. Thứ hai, cấu hình chưa được tải lại thành công: hãy thử khởi động lại hoàn toàn Cursor hoặc nhấn nút làm mới (refresh) trong phần cài đặt cấu hình MCP. Hoặc cuối thức ba, cú pháp JSON bị lỗi nhỏ nào đó, điển hình nhất là lỗi thừa dấu phẩy ở cuối dòng (trailing comma). Nếu máy chủ vẫn hiển thị bình thường nhưng các cuộc gọi công cụ báo lỗi xác thực 401, điều đó chứng tỏ bản thân key đã bị nhập sai hoặc đã bị thu hồi; hãy thử kiểm tra lại bằng một yêu cầu thô (raw request) sử dụng đoạn mã mẫu trên trang máy chủ MCP.

tutorialmcpcursor