ChatGPT connects through a Custom GPT Action against our REST API, not the MCP endpoint. Use the official publishwith.ai GPT for the fastest path, or build your own. Plan on about 15 minutes for a custom build.
/mcp endpoint into ChatGPT; that endpoint is for Claude, Cursor, and Codex.| Path | Who it is for | Auth | Identity |
|---|---|---|---|
| Official publishwith.ai GPT | Anyone, including teams | OAuth sign-in | Each person uses their own account |
| Your own Custom GPT, private | One person, private use | Personal API key | Your account |
| Your own Custom GPT, shared with others | Teams publishing together | OAuth (self-service confidential client) | Each person uses their own account |
The official GPT is the fastest path and the only safe option for multiple users: each person signs in with their own publishwith.ai account through OAuth, so audit logs, access control, and quotas stay per-user. No API key to copy or rotate.
Use this for your own private publishing. It works today and takes about 15 minutes.
mcpub_....API keys are personal credentials. Create one key for this GPT. Enterprise workspaces may restrict or disable self-service keys; if the button is unavailable, ask your tenant admin or use the official GPT.
In the Action's schema field, import or paste the publishwith.ai schema:
https://publishwith.ai/openapi.yaml
If import by URL fails, open the schema and paste its contents directly.
In the Action's Authentication panel:
| Field | Value |
|---|---|
| Authentication type | API Key |
| API Key | mcpub_... (your key from Step 1) |
| Auth Type | Bearer |
https://publishwith.ai/oauth/authorize, Token URL https://publishwith.ai/oauth/token, scope empty, token exchange Default (POST). The redirect URL for your GPT must be registered when creating the OAuth application.Prompt the GPT, for example: Create a monthly revenue report and publish it to publishwith.ai. The GPT calls the publish action and returns the artifact URL.
servers URL must be https://publishwith.ai and reachable over public HTTPS from OpenAI's servers (no localhost, VPN, or IP allowlist).operationId (our schema already satisfies this).| Symptom | Cause | Fix |
|---|---|---|
| Schema import fails | Schema not reachable, or builder rejected it | Confirm https://publishwith.ai/openapi.yaml loads in a browser, then paste the contents instead of importing by URL |
| 401 Unauthorized on calls | Wrong or missing key, or Auth Type not Bearer | Re-paste the key and set Auth Type to Bearer |
| Generate key button missing | Workspace policy disabled self-service keys | Ask your tenant admin, or use the official GPT with OAuth |
| Others see my data in a shared GPT | Shared GPT carries your single API key | Make the GPT private, or switch to the official GPT / OAuth |