Home › Learn › Add an MCP server to ChatGPT

Add an MCP server to ChatGPT

Updated 2026-11-01

ChatGPT connects to custom MCP servers through its Plugins area. Unlike a desktop client, it doesn't start a local process from a config file: it needs an endpoint it can reach. The details below come from OpenAI's "Connect and test your plugin" page as read on 2026-11-01. OpenAI's older "apps-sdk" documentation URLs now redirect to this plugins section, so guides using earlier names may describe a different flow.

What the server needs

Per the docs, confirm these before adding a server:

A server that only runs over stdio can't be pasted in directly; it needs the tunnel, which the docs say can reach a configured stdio or HTTP server. A development tunnel or other HTTPS forwarding service also works for local testing, but neither replaces the public HTTPS endpoint required to submit a plugin.

Test it first

OpenAI recommends the MCP Inspector to list and call tools directly before connecting:

npx @modelcontextprotocol/inspector@latest

Try representative inputs, edge cases, missing identifiers and empty results. If ChatGPT later can't connect, the docs point back to this step for a public endpoint.

Add the server

Account and workspace policies apply, so these options may not be available on every account.

  1. Go to ChatGPT Plugins.
  2. Select the plus button, then Add custom MCP server.
  3. Enter a user-facing name and description.
  4. Under Connection, enter the server URL including the /mcp path. For Secure MCP Tunnel, select Tunnel, then choose a tunnel or enter its tunnel_id.
  5. Configure authentication, review the risk warning, and select I understand and want to continue.
  6. Select Create as a plugin.
  7. Review the tools and metadata ChatGPT discovered.

Read the risk warning as written, and check what the server can do before enabling it. The security checklist covers what to look for.

Use it in a conversation

Install the resulting plugin and start a new conversation. Type @ in the prompt box and select the plugin.

To check that ChatGPT picks the right tools, the docs suggest a set of test prompts covering direct requests, indirect requests with the same goal, follow-ups that reuse earlier results, write actions that need confirmation, and unsupported requests that shouldn't call a tool. Record the selected tool, arguments, result and errors, and rerun the set when tool names, descriptions or schemas change.

After you change the server

ChatGPT doesn't pick up new metadata on its own in this flow:

  1. Deploy or restart the server.
  2. Open the connection at ChatGPT Plugins.
  3. Select Refresh.
  4. Confirm the tool metadata shown has changed.
  5. Start a new conversation and rerun the affected tests.

This applies to custom servers connected directly in ChatGPT; published plugins go through OpenAI's review process instead.

If you need raw logs

The API Playground shows request and response data: choose Tools, then Add, then MCP Server, and enter the HTTPS endpoint.

Finding a server to connect

Because ChatGPT needs a reachable endpoint, hosted servers are the simplest place to start. mcpnav's remote MCP servers list shows servers with a remote endpoint, along with our latest reachability check where one exists. See remote vs local MCP servers for the tradeoffs.

Codex uses a separate configuration file; see Add an MCP server to Codex.

What is not covered here

OpenAI's help-center article on developer mode wasn't readable by our fetcher when this was written, so plan availability and any developer-mode setting aren't documented here. This article also doesn't cover packaging or submitting a plugin. Check OpenAI's current docs for both.

Sources

Sources