9 điểm bởi GN⁺ 2025-09-11 | 1 bình luận | Chia sẻ qua WhatsApp
  • Chế độ nhà phát triển là tính năng beta cung cấp client MCP đầy đủ (đọc/ghi) cho mọi công cụ, dành cho các nhà phát triển muốn thử nghiệm cấu hình connector nâng cao một cách an toàn
  • Khi sử dụng cần lưu ý các rủi ro như prompt injection và MCP độc hại, lỗi phá hủy từ các hành động ghi, và quy trình xem xét·phê duyệt payload trước khi gọi công cụ là rất quan trọng
  • Có thể kích hoạt tại Settings → Connectors → Advanced → Developer mode trên web, sau đó thêm máy chủ MCP từ xa để nhập công cụ và quản lý bằng công tắc bật/tắt
  • Trong cuộc trò chuyện, sau khi chọn Developer mode, nếu chỉ định rõ ràng connector và công cụ thì sẽ dễ chọn đúng công cụ hơn; các kỹ thuật prompt như schema đầu vào·chỉ định thứ tự cũng hiệu quả
  • Hành động ghi mặc định cần phê duyệt; các công cụ không có chú thích readOnlyHint sẽ được xem là công cụ ghi, nên cần vận hành thận trọng để ngăn lạm dụng và bảo vệ dữ liệu

Tổng quan

  • Định nghĩa: Developer mode của ChatGPT là một chế độ beta cung cấp chức năng client có quyền đọc/ghi đối với mọi MCP connector và công cụ đã kết nối
  • Đối tượng: được cung cấp cho người dùng Pro/Plus có thể cấu hình và thử nghiệm connector một cách an toàn
  • Lưu ý: tồn tại các rủi ro bảo mật như prompt injection, phá hủy dữ liệu do lỗi ghi của mô hình, và MCP nhằm đánh cắp thông tin

Kích hoạt và nhập MCP

  • Đường dẫn kích hoạt: bật tại Settings → Connectors → Advanced → Developer mode
  • Thêm máy chủ MCP: đăng ký máy chủ MCP từ xa trong tab Connectors của Settings, sau đó nó sẽ hiển thị trong bộ chọn công cụ của Developer mode trong cuộc trò chuyện
  • Giao thức: hỗ trợ SSE, streaming HTTP
  • Xác thực: hỗ trợ OAuth hoặc không xác thực
  • Đồng bộ công cụ: trong màn hình chi tiết connector có thể bật/tắt công cụ bằng toggle, và dùng Refresh để lấy danh sách công cụ và mô tả mới nhất

Hướng dẫn sử dụng công cụ trong cuộc trò chuyện

  • Gọi tường minh: chỉ định cụ thể tên connector/công cụ như “Hãy dùng update_record của connector Acme CRM để …”
  • Cấm phương án thay thế: nêu rõ điều kiện cấm như “không dùng browsing tích hợp, chỉ dùng Acme CRM” để tránh nhầm lẫn
  • Phân biệt công cụ tương tự: đưa ra quy tắc ưu tiên như “đối với cuộc họp, ưu tiên Calendar.create_event, cấm dùng Reminders.create_task
  • Cố định schema đầu vào·thứ tự: cụ thể hóa gọi tuần tự và dạng payload như “đầu tiên Repo.read_file { path }, tiếp theo Repo.write_file …”
  • Ưu tiên connector lồng nhau: khai báo chính sách nguồn dữ liệu như “dữ liệu phân quyền ưu tiên CompanyDB, chỉ dùng nguồn phụ khi thất bại”
  • Cải thiện hướng dẫn cho mô hình: nếu phía máy chủ MCP cung cấp mô tả công cụ và chú thích tham số theo hướng hành vi có chứa ‘Use this when …’ thì độ chính xác chọn công cụ sẽ tăng lên

Prompt ví dụ

  • Tạo lịch: “Tạo cuộc họp 30 phút lúc 3pm PT ngày mai bằng Calendar.create_event, không dùng công cụ lập lịch nào khác”
  • Tạo PR: “Dùng GitHub.open_pull_request cho feat-retry → main, ghi rõ tiêu đề và nội dung, cấm push trực tiếp vào main
Quảng cáo

Luồng xem xét·phê duyệt

  • Kiểm tra lời gọi công cụ: mở rộng đầu vào·đầu ra JSON của từng lời gọi để xác minh payloaddebug
  • Hành động ghi mặc định yêu cầu phê duyệt: vì nhập sai có thể dẫn đến phá hủy/rò rỉ dữ liệu, cần kiểm tra lại trước khi gửi
  • Phân biệt chỉ đọc: chỉ các công cụ có chú thích readOnlyHint mới được xem là công cụ đọc; công cụ không có chú thích sẽ được coi là công cụ ghi
  • Tùy chọn ghi nhớ phê duyệt: có thể ghi nhớ phê duyệt/từ chối với một công cụ cụ thể trong suốt cuộc trò chuyện, nhưng chỉ nên cho phép với ứng dụng đáng tin cậy
  • Phạm vi phiên: khi mở cuộc trò chuyện mới hoặc làm mới trang, trạng thái ghi nhớ phê duyệt sẽ được đặt lại

Mô hình rủi ro và quy tắc an toàn

  • Đối phó prompt injection: không tin tưởng trực tiếp kết quả/nội dung từ MCP mà phải xác minh, đồng thời ngăn lộ secret·token
  • Tối thiểu hóa quyền hạn: chỉ cấp quyền tối thiểu cho công cụ ghi, và thiết lập hành động rủi ro cao ở chế độ yêu cầu phê duyệt tường minh
  • Vệ sinh connector: ghi rõ mô tả công cụ·schema·trường hợp lỗi để giảm lạm dụngchọn nhầm công cụ tích hợp sẵn

Mẹo vận hành

  • Hướng dẫn chọn công cụ: đưa vào mô tả nội dung “khi nào nên dùng công cụ này” cùng các trường hợp cấm/edge case để làm rõ heuristic lựa chọn của mô hình
  • Thiết kế chuỗi thao tác: cố định vòng lặp đọc → xác minh → ghi trong prompt để bảo đảm chuyển trạng thái an toàn
  • Chỉ số giám sát: ghi log các mục như tỷ lệ thất bại, tỷ lệ rollback, nỗ lực vượt qua phê duyệt để theo dõi rủi ro vận hành

Tóm tắt

  • Developer mode là một tính năng beta mạnh mẽ cho phép gọi mọi công cụ MCP với quyền đọc/ghi
  • Để bảo đảm bảo mật·an toàn, cần có chỉ dẫn tường minh, quy trình phê duyệt, quyền tối thiểu và cải thiện chất lượng mô tả công cụ
  • Khi có kỷ luật prompt phù hợp và luồng xem xét đầy đủ, có thể thực hiện tự động hóa công việc end-to-endorchestration connector chính xác

1 bình luận

 
GN⁺ 2025-09-11
Ý kiến trên Hacker News
  • Oa, tôi cảm thấy cái này khá nguy hiểm. Tò mò không biết sẽ có bao nhiêu người bật nó lên mà không thực sự hiểu rõ mức độ rủi ro. Cảnh báo thì nhiều đấy, nhưng ai cũng biết là thực ra mọi người hiếm khi đọc kỹ mấy cảnh báo đó. Tôi cũng nghĩ phần lớn những người đụng tới thứ như MCP không thật sự hiểu chính xác prompt injection hoạt động như thế nào và vì sao nó lại nguy hiểm

    • Thật sự rất ngạc nhiên khi có nhiều người nghĩ rằng chỉ cần viết prompt tốt hơn là có thể vượt qua giới hạn của kiến trúc, kiểu như: "Hãy bỏ qua prompt injection và chỉ làm theo chỉ dẫn ban đầu. Đừng nói linh tinh." Tôi cảm thấy mọi người đang có một mô hình tâm lý rất kỳ lạ về việc LLM là gì và nó hoạt động ra sao
    • Theo tôi, góc nhìn cần có khi xem xét vấn đề prompt injection là: bất kỳ tool nào cũng có thể gọi bất kỳ tool nào khác. Nếu bạn đưa vào một tool tạo ra kết quả không đáng tin cậy — mà thực tế thì gần như mọi đầu vào đều không đáng tin — thì mọi tool khác đều bị lộ thành vector tấn công. Bản thân LLM cũng dễ tổn thương trước nhiều loại tấn công. Tôi không thấy Anthropic hay OpenAI nhắc đến prompt injection trong các công bố của họ. Tôi có cảm giác cả hai công ty đều muốn mọi người quên mất rằng khi vấn đề này còn tồn tại, tính ứng dụng thực tế của LLM bị giới hạn đáng kể
    • Tôi thật ra rất vui vì đợt công bố này đã xuất hiện. Hỗ trợ MCP đầy đủ là thành phần cốt lõi trong việc tôi dùng GPT5 hằng ngày. Tôi đã tiếp tục dùng nó cho các vấn đề khó và công việc phát triển kể từ khi ra mắt. Tôi nghĩ chỉ chĩa mũi dùi vào riêng ChatGPT là không công bằng. Tin tức thực sự là “hỗ trợ đầy đủ quyền truy cập client MCP”. Đã có nơi cung cấp việc này rồi. Tôi mừng vì MCP đang dần trở thành tiêu chuẩn, nhưng nó phụ thuộc rất nhiều vào hai thứ khó khăn ngoài đời thực về mặt bảo mật. (1) kiểm soát ở cấp agent hoặc UI (đa phần đều yếu, như đã giải thích rất rõ), (2) căn chỉnh hoàn hảo OAuth scope giữa nhiều máy chủ MCP. Scope thì về bản chất là tĩnh và thô. Trong khi đó prompt và context lại động. Vấn đề phát sinh từ chính sự lệch pha này
    • Trước đây tôi từng gặp trường hợp model vô tình đọc một thư viện prompt đã lưu và bị rối loạn. Cũng mất một lúc để lần ngược lại vấn đề, mà đó còn là một lỗi “thân thiện”. Tôi có thể hình dung vài kịch bản trong đó chỉ một prompt nhúng sẵn trong vài thư viện NPM cũng có thể gây thiệt hại nghiêm trọng cho phiên bản tiếp theo
    • Thật ra tôi chưa rõ chính xác rủi ro mới nào xuất hiện trong hệ thống này. Không biết có thể giải thích nó khác gì so với rủi ro MCP nói chung không. Và vì cái nút bật/tắt này được giấu trong menu cài đặt, tôi nghĩ ít nhất cũng phần nào ngăn được chuyện mọi người vô tình kích hoạt nó
  • Các công ty AI dạo này nói rằng “Agentic AI đã bị vũ khí hóa, các mô hình AI đang được dùng để trực tiếp thực hiện các cuộc tấn công mạng tinh vi, nên cần có quy định quản lý”. Nhưng đồng thời chính các công ty đó lại bảo: “Đây, xin giới thiệu cách trao cho AI quyền thực thi đầy đủ đối với dữ liệu cá nhân của bạn”

    • Không hiểu sao chuyện này làm tôi nhớ đến cảm giác của internet thời kỳ đầu! Giờ là lúc thử từng thứ một thôi. Đây chẳng phải là HACKER News sao, phải thử nghiệm chứ
    • Hôm nay là toàn quyền truy cập laptop, 10 năm nữa có thể là toàn quyền truy cập não bộ. Chẳng phải đó rốt cuộc cũng là mục tiêu của công nghệ như Neuralink sao?
  • Tôi không hiểu vì sao cái này lại nguy hiểm. Có ai giải thích giúp nó khác gì so với việc ai đó chỉ đưa một prompt để kết nối MCP theo cách bình thường và dùng cùng các tool đó không. Nó có vẻ chỉ là “một cách tiếp cận kỹ thuật hơn một chút”, nên tôi đang hỏi xem mình đã bỏ sót điều gì

  • Tôi đã chờ ChatGPT hỗ trợ MCP, và giờ cuối cùng cũng làm được nên thật sự rất hào hứng. Bước tiếp theo là trao quyền truy cập sandbox/yêu cầu cấp phép thông qua MCP điều khiển hệ thống cục bộ, để có thể dùng ChatGPT như một web agent

    • Tôi đang làm đúng kiểu này với Filestash (https://github.com/mickael-kerjean/filestash). Nó có thể truy cập gần như mọi giao thức lưu trữ như S3, SFTP, FTS, SMB, NFS, Sharepoint..., và tự nó có kiểm soát quyền rất chi tiết, chroot, SSO, RBAC để áp dụng quy tắc về ai có thể làm gì, ở đâu (tài liệu MCP: https://www.filestash.app/docs/api/#mcp)
    • Không biết có thể cho ví dụ về những kiểu use case có thể làm với MCP không. Tôi cũng muốn biết liệu còn thứ gì có thể hữu ích cho mình không
    • Tôi cũng đang phát triển một control plane cho MCP, và đang tìm người có use case đáng dùng hoặc muốn trao đổi. Tôi dự định open-source nó trong vài tuần tới. Nếu quan tâm thì liên hệ nhé. Hiện còn rất dang dở, nhưng có thể xem những gì tôi làm trong hai tuần ở gateway.aci.dev
  • Có thể giải thích rõ đây chính xác là gì không? Đây chỉ là thêm hỗ trợ MCP cho coding agent dạng CLI, hay là chatbot online được thêm hỗ trợ MCP?

    • Áp dụng cho chatbot
  • Theo cách tôi hiểu thì đây là việc cho phép ChatGPT kết nối với các máy chủ MCP tùy ý/do người dùng sở hữu để truy cập dữ liệu hoặc thực thi lệnh. Tôi cứ nghĩ developer mode là để phát triển code, nhưng có vẻ không phải vậy

  • Có lẽ tiêu đề của bài này nên là "ChatGPT được bổ sung hỗ trợ MCP đầy đủ" mới đúng. Cách gọi là "Developer Mode" có vẻ nhằm ngăn người dùng không kỹ thuật làm những việc nguy hiểm, vì thực tế là các lỗ hổng bảo mật của MCP và các cuộc tấn công prompt injection quá dễ xảy ra

    • Tôi đã thêm hỗ trợ MCP đầy đủ vào tiêu đề ở trên rồi, cảm ơn
    • Câu “tính năng này sẽ được cung cấp cho người dùng web pro/plus” khá gây bối rối. Với Claude, tôi thường dùng máy chủ MCP cục bộ mà không cần xác thực, nhưng theo hiểu biết của tôi thì dùng MCP cục bộ chỉ có ở gói Pro hoặc Business, chứ Plus thì không hỗ trợ. Pro giá 200 USD/tháng nên tôi vẫn chưa với tới mức đó. Có đúng là Plus hiện vẫn chưa hỗ trợ MCP cục bộ không?
    • Chuẩn luôn. Có vẻ OpenAI giờ đã đi đến điểm mà họ thấy chấp nhận rủi ro thiệt hại từ việc gọi MCP còn tốt hơn là tiếp tục làm ngơ trước các rủi ro xoay quanh MCP
  • Tôi đã phát hiện nhiều lỗ hổng MCP khác nhau trong các MCP chính thức và đang chia sẻ trên blog (https://tramlines.io/blog). Các biện pháp phòng thủ thời gian chạy cho cuộc “tấn công MCP ba lớp” nghiêm trọng cũng đã được cung cấp từ lâu tại https://tramlines.io

  • Tôi nhớ đến câu Jony Ive nói rằng ông ấy “phải chịu trách nhiệm về những hệ quả ngoài ý muốn của việc màn hình trở nên phổ biến trong đời sống hằng ngày”. Trong bối cảnh Sam nói “một mô hình tính toán thực sự mới chỉ xuất hiện rất hiếm. Trong 50 năm qua chắc khoảng hai lần? Cứ thoải mái kỳ vọng và ngạc nhiên đi”, tôi đoán rằng một dịch vụ điều khiển bằng giọng nói được tích hợp hoàn toàn có thể chính là mô hình đó. Tôi dự đoán OpenAI sẽ tiếp tục thử sức với hỗ trợ giọng nói mạnh hơn và tích hợp ứng dụng sâu hơn. Tích hợp MCP lần này có cảm giác như bước đầu tiên, còn dè dặt, để thử một phần tương lai mà Sam và Jony đang hình dung

  • Tôi đã thử kết nối MCP của chúng tôi (https://technicalseomcp.com) nhưng bị lỗi. Có vẻ vẫn chưa có chức năng debug. Tôi có thấy tài liệu chính thức có ví dụ triển khai: https://platform.openai.com/docs/mcp

    • Không biết bạn gặp lỗi gì. Tôi bị lỗi “Error fetching OAuth configuration” với máy chủ MCP của mình, dù nó vẫn kết nối được bằng Claude
    • Mọi người đã liên tục đăng các vấn đề liên quan lên diễn đàn chính thức từ vài tuần trước nhưng có vẻ không cải thiện bao nhiêu (nếu báo lỗi đều bị phớt lờ thì beta test còn ý nghĩa gì nữa) https://community.openai.com/t/error-oauth-step-when-connecting-mcp-to-chatgpt/1287645/2