Để xây plugin ChatGPT cho sản phẩm SaaS năm 2026, bạn đặt một MCP server từ xa trước sản phẩm, thêm OAuth nếu người dùng cần dữ liệu của chính họ, thêm panel giao diện nếu cần, rồi nộp gói plugin qua cổng plugin của OpenAI để được duyệt. Từ DevDay ngày 29/9/2026, plugin còn có thể nằm trong thanh bên của ChatGPT, mở cạnh cuộc hội thoại, làm trình xem file và kích hoạt tự động hóa qua MCP Events. Cùng một trang plugin xuất hiện ở cả ChatGPT và Codex, và các agent luôn chạy Dots của OpenAI tiếp cận ứng dụng thông qua plugin. Một plugin chỉ đọc trên dữ liệu công khai mất hai đến ba tuần công. Một plugin có xác thực, có giao diện và tự động hóa theo sự kiện mất hai đến ba tháng. Bài này trình bày kiến trúc, từng bước, những gì vòng duyệt kiểm tra, chi phí, và những gì chúng tôi phát hiện khi đối chiếu chính các MCP server của mình với yêu cầu của OpenAI. Cập nhật tháng 10/2026.
Plugin chuyển từ công cụ model gọi ngầm thành tính năng giống ứng dụng ngay trong ChatGPT. Tại DevDay ngày 29/9/2026, OpenAI công bố:
Bài tổng kết DevDay của OpenAI cho biết ChatGPT có 1,2 tỷ người dùng mỗi tuần, đây là con số do chính OpenAI công bố. Có mặt trong thư mục chưa có nghĩa là được tìm thấy, như phần về vòng duyệt sẽ giải thích, nhưng plugin giờ là cách sản phẩm của bạn xuất hiện khi khách hàng, hoặc agent của họ, làm việc trong ChatGPT.
Plugin là một gói chứa skill, MCP server hoặc cả hai, cộng giao diện tùy chọn trên server. Tài liệu của OpenAI mô tả bốn dạng:
| Dạng | Bên trong có gì | Chọn khi nào |
|---|---|---|
| Chỉ skill | Các thư mục có file SKILL.md và tài liệu kèm theo, hướng dẫn model chạy một quy trình | Câu lệnh cộng các công cụ ChatGPT đã có là đủ. Không cần truy cập sản phẩm của bạn. |
| Chỉ MCP server | Một MCP server từ xa đưa các công cụ của sản phẩm ra ngoài, có xác thực | Model cần dữ liệu trực tiếp hoặc hành động từ sản phẩm của bạn. |
| Skill và MCP server | Hướng dẫn quy trình dùng các công cụ MCP của bạn | Người dùng chạy quy trình nhiều bước, như "chuẩn bị báo cáo tháng", trên công cụ của bạn. |
| MCP server có giao diện | Như trên, cộng tài nguyên giao diện hiển thị trong ChatGPT | Người dùng cần xem, so sánh, sửa hoặc xác nhận dữ liệu có cấu trúc bằng mắt. |
Với sản phẩm SaaS, MCP server là phần cốt lõi. Nó xác định có những công cụ nào, schema đầu vào và đầu ra, ai được gọi, và dữ liệu nào được trả về. Giao diện là tùy chọn, và OpenAI khuyên giữ mọi công cụ hữu ích ngay cả khi không có giao diện, để các agent như Dots chạy được cùng quy trình ở chế độ nền. Nếu chưa từng xây MCP server, hãy bắt đầu với hướng dẫn phát triển MCP server của chúng tôi. Bài đó đi sâu vào giao thức, kiến trúc OAuth 2.1 và bảo mật, nên bài này tập trung vào những gì riêng cho ChatGPT.

Chín bước đưa bạn từ ý tưởng đến một plugin được công bố:
get_order_status, và nhắm tới phiên bản MCP hiện hành (2026-07-28). MCP Events bắt buộc phiên bản này.S256) và gửi tham số resource mà bạn phải phản hồi lại đúng giá trị. ChatGPT ưu tiên Client ID Metadata Document và cũng hỗ trợ đăng ký client động hoặc client định nghĩa sẵn. Khai báo xác thực cho từng công cụ bằng securitySchemes, để công cụ công khai chạy được trước khi người dùng liên kết tài khoản.iss trong mọi phản hồi ủy quyền), ChatGPT dùng một redirect URI cố định. Nếu không, ChatGPT dùng redirect riêng theo callback. Hãy chép đúng giá trị hiển thị ở trang quản lý plugin vào allowlist.readOnlyHint, destructiveHint và openWorldHint với giá trị true hoặc false rõ ràng. Vòng duyệt kiểm tra chúng có khớp hành vi thật không. Annotation cũng là căn cứ cho các lớp bảo vệ phía client: chế độ "proactive research" chạy nền của Dots chỉ dùng ứng dụng đã kết nối qua công cụ chỉ đọc.Với khách hàng doanh nghiệp, hãy trả về thêm email đã xác minh qua OpenID Connect. ChatGPT Enterprise dùng nó để ngăn một danh tính công ty liên kết plugin của bạn trong workspace cá nhân.

MCP Events cho phép ChatGPT đăng ký theo dõi các sự kiện trong sản phẩm của bạn và xử lý chúng, kể cả khi người dùng không ở đó. Ví dụ: "theo dõi tài liệu này, có bình luận review thì áp dụng chỉnh sửa". Tính năng chạy trong Work chat và với Dots, và đây là phần nặng về backend nhất của một plugin.
Server công bố events trong capability của server/discover và triển khai ba phương thức trên cùng endpoint có xác thực với các công cụ:
events/list mô tả từng sự kiện, bộ lọc và schema dữ liệu.events/subscribe tạo hoặc gia hạn một đăng ký. ChatGPT cung cấp URL callback và secret để ký.events/unsubscribe dừng đăng ký.Sau đó, mỗi khi có sự kiện khớp, server POST một sự kiện đã ký cho mỗi request tới callback. Phần tốn thời gian là các chi tiết production:
410 hoặc 413.Tích hợp của OpenAI chỉ hỗ trợ gửi qua webhook, không hỗ trợ polling hay streaming. Tài liệu cũng nhắc phải coi bình luận và các nội dung người dùng viết trong sự kiện là dữ liệu, không phải câu lệnh. Điều này quan trọng, vì tự động hóa theo sự kiện thực chất là một agent hành động dựa trên chữ do người khác viết. Checklist bảo mật AI agent của chúng tôi trình bày các biện pháp bảo vệ cho trường hợp này.
Vòng duyệt kiểm tra bạn là ai, plugin có chạy đúng không, và có tuân theo quy định về dữ liệu và thương mại của OpenAI không. Hãy dùng danh sách sau để tự kiểm tra:
/.well-known/openai-apps-challenge trên domain của MCP server.Ba chi tiết vận hành hay làm các đội bất ngờ. Project dùng lưu trữ dữ liệu tại EU hiện chưa nộp được plugin có MCP server. Origin của MCP server không đổi được giữa các phiên bản, nên đổi domain sau này đồng nghĩa với một plugin mới. Và sau khi công bố, OpenAI quét server mỗi ngày: công cụ mới hoặc thay đổi chỉ có hiệu lực sau khi qua kiểm tra tự động, còn công cụ bị xóa thì biến mất ngay.
Cuối cùng, được duyệt không có nghĩa là được tìm thấy. Sau khi công bố, người dùng tìm thấy bạn qua đường link trực tiếp hoặc tìm đúng tên plugin. Trang chính của thư mục và các gợi ý chủ động dành cho plugin được OpenAI chọn vì hữu ích và được hài lòng cao, và bạn không thể yêu cầu vị trí đó.

Có, nhưng không phải trên chính dữ liệu thuộc diện quản lý. Hướng dẫn của OpenAI cấm plugin công khai xử lý PHI và dữ liệu thẻ thuộc phạm vi PCI. Một sản phẩm healthtech hay fintech vẫn có thể công bố plugin cho việc đặt lịch, thông tin sản phẩm chung, phân tích dữ liệu đã ẩn danh hoặc các tính năng không thuộc diện quản lý. Với quy trình chạm tới dữ liệu được quản lý, cách đúng là một kết nối MCP tùy chỉnh, riêng tư trong workspace của khách hàng, với endpoint model, hợp đồng và audit trail được xác định phạm vi như phần còn lại của hệ thống tuân thủ. Bài AI agent tuân thủ HIPAA và checklist PCI DSS và SOC 2 cho fintech trình bày phần này.
Phần lớn chi phí nằm ở xác thực, sự kiện và chuẩn bị cho vòng duyệt, không nằm ở giao thức. Bảng dưới quy đổi công sức ra tiền theo hai mức giá đã công bố trên site: mức senior châu Á $31–$41/giờ trong bài giá thuê ngoài phát triển phần mềm Việt Nam 2026, và mức $100–$300/giờ thường gặp ở các công ty tầm trung tại Mỹ.
| Phạm vi plugin | Bao gồm | Công sức (tuần công senior) | Ở mức $31–$41/giờ | Ở mức $100–$300/giờ |
|---|---|---|---|---|
| Chỉ đọc, dữ liệu công khai | MCP server 5–10 công cụ, annotation, đóng gói, test case, video, rà soát quyền riêng tư | 2–3 | $2,5K–$4,9K | $8K–$36K |
| Có xác thực, chỉ đọc | Như trên, cộng OAuth 2.1 với PKCE, metadata protected-resource, đăng ký client, xác thực theo công cụ, tenant demo | 4–7 | $5K–$11,5K | $16K–$84K |
| Có xác thực và giao diện | Như trên, cộng giao diện MCP Apps, extension thanh bên hoặc panel, content security policy, kiểm thử giao diện | 6–10 | $7,4K–$16,4K | $24K–$120K |
| Công cụ ghi và MCP Events | Như trên, cộng scope ghi, bước xác nhận, idempotency, kho đăng ký, webhook có ký, chống SSRF, kiểm thử lạm dụng | 8–14 | $9,9K–$23K | $32K–$168K |
Đây là ước tính lập kế hoạch của chúng tôi, không phải báo giá. Ước tính giả định API của bạn đã có những gì công cụ cần và đội ngũ đã quen OAuth. Nếu chưa có API, phần đó phải làm trước, và bài chi phí phát triển ứng dụng AI trình bày chi tiết. Bảng không tính thời gian duyệt, vì OpenAI cho biết thời gian thay đổi và không nhận yêu cầu duyệt nhanh. Hãy dự trù ít nhất một vòng phản hồi.
Ba khoảng trống, có lẽ cũng là điển hình với các server xây trong năm 2025 hoặc đầu 2026. BeevR chạy ba MCP server: beevr.ai/mcp và ecocheck.ai/mcp (công khai, chỉ đọc) và ecocheck.ai/mcp/account (dữ liệu của chính khách hàng, OAuth 2.1 với PKCE). Ngày 7/10/2026, chúng tôi đối chiếu chúng với tài liệu plugin hiện hành của OpenAI:
readOnlyHint, destructiveHint hay openWorldHint. Mọi công cụ đều chỉ đọc nên chỉ cần sửa một dòng mỗi server: giờ cả ba server khai báo readOnlyHint: true, destructiveHint: false, idempotentHint: true và openWorldHint: false cho mọi công cụ.server/discover, thứ MCP Events cần.iss phải proxy cả bước authorize lẫn bước token. Chúng tôi chọn cách đơn giản mà OpenAI hướng dẫn: khi đăng ký plugin, chép đúng redirect trong trang quản lý plugin vào allowlist.Những gì đã khớp: metadata protected-resource, phản hồi 401 chỉ rõ metadata và scope, chỉ PKCE S256, client công khai, token sống ngắn có thu hồi, và giới hạn chỉ đọc được thực thi ở API backend thay vì ở lớp MCP. Nếu bắt đầu từ đầu, xây theo phiên bản 2026-07-28 và tài liệu của OpenAI ngay từ ngày đầu sẽ tránh được cả ba khoảng trống.
Không hẳn. MCP server là phần kết nối ChatGPT với sản phẩm của bạn. Plugin là gói bạn nộp và người dùng cài đặt, có thể gồm cả skill, giao diện và metadata. Plugin thậm chí có thể chỉ có skill, không có server.
Không. Giao diện là tùy chọn, và nhiều plugin tốt chỉ trả về kết quả có cấu trúc. Hãy thêm giao diện ở chỗ người dùng cần so sánh, sửa hoặc xác nhận bằng mắt, và giữ mọi công cụ chạy được khi không có giao diện để agent dùng ở chế độ nền.
OpenAI không công bố thời gian và không nhận yêu cầu duyệt nhanh. Phần lớn trường hợp bị từ chối là do người duyệt không đăng nhập được, test case thất bại, dữ liệu cá nhân chưa được công bố hoặc annotation sai, nên hãy làm đúng các điểm này trước khi nộp.
Dots dùng các plugin người dùng đã kết nối, nên plugin được công bố là cách để sản phẩm của bạn đến được với chúng. MCP Events cũng chạy với Dots. Annotation chỉ đọc chính xác rất quan trọng, vì chế độ nghiên cứu chạy nền của Dots chỉ dùng ứng dụng đã kết nối qua công cụ chỉ đọc.
Có. Cả hai đều là MCP client, và giao diện của ChatGPT xây trên chuẩn mở MCP Apps. Server tài khoản EcoCheck của chúng tôi đã cho phép redirect URI cho cả hai client. Các phần riêng của từng nền tảng, như extension thanh bên của ChatGPT, cần thêm metadata nhưng không làm hỏng các client khác.
BeevR xây MCP server production và plugin trên nền đó, với OAuth, audit và sự sẵn sàng cho vòng duyệt được thiết kế từ đầu, giá cố định theo từng giai đoạn và bạn sở hữu toàn bộ code từ ngày đầu tiên. Xem dịch vụ phát triển AI agent hoặc kể cho chúng tôi bạn muốn người dùng ChatGPT làm gì với sản phẩm của bạn.