Skip to content

ChatGPT App

The ChatGPT desktop app (which runs Codex under the hood) connects to your site’s MCP server through its built-in MCP settings. The recommended path is OAuth sign-in: no config files, no copied credentials. If you’d rather configure it by hand, the Application Password method still works.

OAuth lets the ChatGPT app connect as your WordPress account through a one-time browser approval. No password is stored in the app.

Requirements: your site must be served over HTTPS and OAuth must be enabled in EMCP Tools → Connection (it turns on automatically on HTTPS sites). Only administrators can approve a connection.

In the ChatGPT app, go to File → Settings → Plugins, switch to the MCPs tab, and click Add server.

ChatGPT app Plugins settings, MCPs tab with the Add server button

2. Choose Streamable HTTP and enter your URL

Section titled “2. Choose Streamable HTTP and enter your URL”

Set Type to Streamable HTTP, give the server a name, and paste your MCP endpoint URL. Leave the bearer token and headers empty, OAuth supplies the auth. Click Save.

Your endpoint is shown in EMCP Tools → Connection and looks like:

https://your-site.com/wp-json/mcp/emcp-tools-server

Connect to a custom MCP form, Streamable HTTP selected, name and URL filled, Save button

After saving, an Authenticate button appears on the server’s row. Click it to start the sign-in flow.

Server row with the Authenticate button

A consent screen opens in your browser. Confirm you’re signed in as the right WordPress user and click Approve. The app connects as your account and can use any MCP tools you’ve enabled.

Authorize MCP connection consent screen with Deny and Approve buttons

The server now shows Authenticated (OAuth) and Enabled. You can start chatting with your site.

MCP list showing the server as Authenticated (OAuth) and Enabled

You can revoke access any time from EMCP Tools → Connection → Connected apps.

If OAuth isn’t available (for example on an HTTP-only site), add the server to ~/.codex/config.toml (macOS/Linux) or %USERPROFILE%\.codex\config.toml (Windows):

[mcp_servers.emcp-tools]
url = "https://your-site.com/wp-json/mcp/emcp-tools-server"
[mcp_servers.emcp-tools.http_headers]
"Authorization" = "Basic BASE64_ENCODED_CREDENTIALS"

Generate the base64 credentials from your WordPress username and an Application Password:

Terminal window
echo -n "admin:xxxx xxxx xxxx xxxx xxxx xxxx" | base64

(Application passwords come from WordPress admin → Users → Profile → Application Passwords.) The plugin’s EMCP Tools → Connection admin screen has a one-click config generator that fills this in for you.

Open File → Settings → Plugins → MCPs. The server should be listed and Enabled: Authenticated (OAuth) if you signed in, or connected via your header if you used an Application Password.

Common errors:

  • 401 Unauthorized (Application Password): the password is wrong or the base64 encoding is missing/malformed.
  • OAuth stuck / no browser prompt: confirm the site is HTTPS and OAuth is enabled in EMCP Tools → Connection. Some hosts block /.well-known/ requests, if so, use the Application Password method instead.
  • Server returned 0 tools: the connection worked but no tools registered. See No tools appearing.