
This fix is part of MCP troubleshooting, within The MCP Guide. Still stuck? Request a free MCP readiness review.
Most ChatGPT custom MCP server errors come from one of three places: your plan or workspace role, an endpoint ChatGPT can't reach, or the OAuth setup. The fastest fix is to confirm you are on ChatGPT web with a plan and role that allow custom MCP servers, then test the exact server URL in MCP Inspector before adding it again from Plugins.
Checked against: OpenAI's help articles Connecting custom MCP servers in ChatGPT and Troubleshooting plugins and apps, plus the developer pages Add custom MCP server, Connect and test your plugin and Troubleshooting, on 2 November 2026. eSEOspace did not run these steps in your workspace.
Key Takeaways
- OpenAI says custom MCP server connections and full MCP support are for ChatGPT Business and Enterprise/Edu on the web. Pro users can connect custom servers with read/fetch permissions only.
- You no longer need Developer Mode. Add servers from Plugins > plus button > Add custom MCP server and confirm the risk warning.
- ChatGPT connects to remote servers only. A server on your laptop or private network needs a public HTTPS endpoint or OpenAI's Secure MCP Tunnel.
- For auth loops, OpenAI tells server builders to return a
WWW-Authenticateheader with each 401 and to check issuer and audience claims. - After approval, ChatGPT uses a frozen snapshot of your tools. Breaking changes on the server can make tool calls fail until an admin refreshes.
What this error means
"Custom connector error" covers several different failures. Match yours first:
| What you see | Most likely cause |
|---|---|
| No Add custom MCP server option | Plan, role, mobile app, or workspace permission |
| Disabled by admin or Admin approval required | Workspace settings |
| ChatGPT can't connect or finds no tools | URL, transport, or server not reachable |
Sign-in loops, 401s or invalid_client | OAuth configuration |
| Tool calls fail after a server update | The frozen tool snapshot |
Quick fix
- Open chatgpt.com/plugins in a browser. OpenAI says custom MCP servers are web only, not mobile.
- Select the plus button, then Add custom MCP server. If it is missing, check your plan and role (below).
- Enter the full public HTTPS URL, including the
/mcppath, or select Tunnel. - Choose the auth type: OAuth, No authentication, or OAuth or no authentication.
- Tick I understand and want to continue, then select Create as a plugin and review the discovered tools.
- Install the plugin, start a new chat, type
@and select it.
If step 5 fails, run the URL through the MCP Inspector, as OpenAI recommends:
npx @modelcontextprotocol/inspector@latest
That command was checked against OpenAI's connect-and-test page on 2 November 2026.
Fix by client / OS
ChatGPT web: the option is missing
OpenAI's help article sets these rules:
- Business: only admins and owners can create and publish plugins for custom MCP servers.
- Enterprise/Edu: admins and owners can connect servers, and admins can grant the Create plugins with MCPs permission to selected members through role-based access control.
- Pro: read/fetch permissions only. Full MCP is for Business and Enterprise/Edu.
- Mobile: not supported.
Plus and Free are not listed in that article. The troubleshooting article adds that Free and Go accounts can discover plugins but plugin extensions are not available on those plans. Our ChatGPT developer mode guide explains how the older flow maps to today's.
ChatGPT web: Disabled by admin
OpenAI's troubleshooting article says to ask a workspace owner or admin to review the plugin in the Admin console. Changing plugin access "does not automatically grant app access, change allowed actions, or complete provider authorization," so the admin should check each app separately. Admin approval required does not mean a request was already sent.
Server side: ChatGPT can't connect
OpenAI's connect page says a public endpoint must support streamable HTTP, "typically at /mcp." The custom server page lists SSE and streaming HTTP as supported. Check these:
- The URL is HTTPS and reachable from the internet, not
localhost. - The path matches your server, for example
/mcp. - Your load balancer or CDN does not buffer streaming responses. OpenAI's troubleshooting page flags this as a cause of broken streams.
- Your ngrok or similar tunnel is still running. OpenAI suggests a stable host for production.
For a private server, OpenAI says ChatGPT "connects to remote MCP servers," and points to Secure MCP Tunnel. If you're unsure which transport your server speaks, read our SSE deprecation fix.
Server side: OAuth loops and 401s
OpenAI's developer troubleshooting page gives three checks:
- 401 errors: include a
WWW-Authenticateheader in the error response so ChatGPT restarts OAuth. Double-check issuer URLs and audience claims. - Client registration fails: with CIMD, your authorization server metadata needs
client_id_metadata_document_supported: true. With dynamic client registration, it must expose aregistration_endpoint. invalid_clienton an existing connection: confirm the registered OAuth client still exists. ChatGPT reuses those credentials, so restore them rather than create a new client.
The help article adds that if your provider doesn't issue refresh tokens (for OpenID Connect, the offline_access scope), ChatGPT may lose access when the first authorization expires. Our MCP OAuth redirect guide covers the general flow.
Workspace: tools break after a server update
OpenAI says that after an admin approves a server, ChatGPT uses a "frozen" snapshot of its tools. If a live tool no longer matches, "tool calls can error." Backward-compatible changes may keep working. Breaking changes need an admin to refresh the tool actions in workspace settings. OpenAI also says users get no prompt and admins are not notified when this happens.
Where to find the logs
- In a chat, expand a tool call. OpenAI says full JSON input and output are shown there.
- For raw request and response logs, use the API Playground under Tools > Add > MCP Server, per OpenAI's connect page.
- Your own server logs show whether ChatGPT reached you at all. If they show nothing, the problem is DNS, TLS or the URL.
If it still fails
Refresh metadata after any change. OpenAI's steps: deploy or restart the server, open the connection in Plugins, select Refresh, confirm the metadata changed, and start a new conversation.
If tools connect but ChatGPT picks the wrong one, OpenAI recommends clearer "Use this when..." descriptions and explicit prompts that name the plugin and tool. It also says ChatGPT treats tools without readOnlyHint as write actions, which need confirmation. Look up any JSON-RPC code in the response with our MCP error code lookup. For working examples, see the ChatGPT connect guides.
Next step
If you are building an MCP server that companies will connect to ChatGPT, the OAuth and snapshot rules above shape your release process. eSEOspace's MCP development team can help you plan for them.
More in the MCP Guide
Free tools: MCP Error Code Lookup · MCP Config Generator
Latest research: State of MCP: October 2026
Frequently asked questions
Do I need Developer Mode to add a custom MCP server to ChatGPT?
No. OpenAI's help article says "You don't need to turn on Developer Mode first." You review and accept a risk warning for each server instead.
Can ChatGPT connect to a local MCP server?
Not directly. OpenAI says ChatGPT connects to remote servers. Use Secure MCP Tunnel or a public HTTPS endpoint for a server on your machine or private network.
Does my server need search and fetch tools?
No. OpenAI says they "are no longer required." Company knowledge and deep research still only use read or fetch style tools.
Why do my tool calls fail after I changed the server?
Approved servers run against a frozen snapshot. A non-backward-compatible change can make calls fail until an admin or owner refreshes the tool actions from workspace settings.











