WordPress Plugins
Free Tools
Pricing Blog Case Studies Switch to Royal Plugin Graveyard Support My Account Cart
Support / Royal MCP / Connecting to ChatGPT

Connecting Royal MCP to ChatGPT

Connect Royal MCP to ChatGPT via Custom Apps (recently renamed from “Custom Connectors”) — a Developer-Mode feature available on every paid ChatGPT plan. Setup is a one-time Developer Mode toggle plus a New App configuration. Read the plan-tier note immediately below before starting; what ChatGPT can do with Royal MCP depends on which plan you’re on.

Read first — plan tier determines what ChatGPT can DO with Royal MCP

ChatGPT’s Custom Apps feature behaves differently across plans:

If you want the full “AI publishes my blog post” / “AI updates my products” experience, you need Business tier or higher on ChatGPT. On Plus or Pro you’ll get read-only — useful for reporting + analysis, but not for content management. (Claude.ai has no such tier gate — if you need write actions and you’re on a personal ChatGPT plan, Claude is the better fit until OpenAI lifts the restriction.)

First — Install and Enable Royal MCP

Before connecting anything to ChatGPT, Royal MCP needs to be running on your WordPress site. Three small steps:

Install the plugin

In wp-admin, go to Plugins → Add New, search for Royal MCP, and click Install Now. Or download the latest version from wordpress.org/plugins/royal-mcp/ and upload the zip.

Activate

On the Plugins page, click Activate under Royal MCP. A new Royal MCP item appears in your wp-admin sidebar.

Enable the integration + flush Permalinks

Go to Royal MCP → Settings → General Settings and turn on the Enable Royal MCP Integration toggle (it’s off by default after activation). Then go to Settings → Permalinks and click Save Changes once — this flushes WordPress’s rewrite rules so the OAuth endpoints resolve. Don’t skip this; the connectors below won’t work until rewrites are flushed and Permalinks must not be set to “Plain.”

Quick sanity check before moving on

Open https://example.com/.well-known/oauth-authorization-server in any browser. If you see a JSON response listing issuer, authorization_endpoint, and scopes_supported, Royal MCP is live and the connectors below will work. If you see a 404 or an HTML page, jump to the troubleshooting checklist — something is intercepting your request before it reaches WordPress.

Enable Developer Mode in ChatGPT

Custom MCP Apps live behind ChatGPT’s Developer Mode — a feature gate that signals to OpenAI you understand the security implications of granting external services tool access. You enable it once per account; it stays on until you turn it off.

Sign in to ChatGPT

Open chatgpt.com in any browser. You must be on a plan that supports Custom Apps (Plus, Pro, Team, Business, Enterprise, or Edu — Free tier doesn’t have the feature).

Open Settings → Apps

Click your profile icon (bottom-left of the ChatGPT sidebar) and choose Settings. In the Settings panel that opens, click Apps in the left sidebar.

ChatGPT Settings panel showing the Apps section selected in the left sidebar. The main panel header reads Enabled apps, with a list showing one example app (Canva) and an Advanced settings row beneath it. An info card at the bottom reads Looking for Connectors? Connectors are now called Apps.

ChatGPT → Settings → Apps. Custom Apps replace what was previously called Custom Connectors.

Open Advanced settings → toggle Developer Mode ON

Near the bottom of the Apps panel, click Advanced settings. Toggle Developer Mode to ON. OpenAI shows an ELEVATED RISK warning about the responsibilities that come with Custom Apps — read it and confirm.

ChatGPT Apps Advanced settings panel showing the Developer mode toggle switched ON (blue), labelled with an ELEVATED RISK badge. Warning text reads Allows you to add unverified connectors that could modify or erase data permanently. Memory is disabled. Use at your own risk. A second toggle for Enforce CSP in developer mode is OFF below it. The composer at the bottom shows a DEVELOPER MODE indicator.

Developer Mode ON. The ELEVATED RISK badge and the “Memory is disabled” note are part of the toggle — OpenAI’s explicit acknowledgment that you’re running unverified MCP servers.

If the Developer Mode toggle doesn’t appear

Three things to check: (1) you’re on a paid tier — Free ChatGPT doesn’t have it; (2) if you’re on Team / Business / Enterprise / Edu, your organization’s admin may have disabled Developer Mode for member accounts — check with them; (3) very recent Plus/Pro upgrades sometimes need a sign-out + sign-in to pick up the new account capability.

Add Royal MCP as a Custom App

With Developer Mode on, the Add more button appears at the top-right of the Enabled apps panel. Clicking it opens the New App dialog — this is where you tell ChatGPT how to reach Royal MCP.

Click Add more → the New App dialog opens

Back on Settings → Apps, click Add more (top-right of the Enabled apps panel). The New App dialog opens. (OpenAI recently renamed “Connectors” to “Apps” in the UI — same feature, new name. You may still see older documentation referring to “Custom Connectors.”)

Fill in the New App dialog

The dialog has several fields plus a mandatory risk-acknowledgment checkbox. The icon is optional; skip it unless you want a custom badge in your apps list:

  • Name — a memorable label that appears in your apps list. Something like “My WordPress Site” or your site name works well.
  • Descriptionactually matters: ChatGPT reads this to decide WHEN to invoke the app during conversations. Be specific. Good: “Manages content, settings, and WooCommerce data on my WordPress site.” Bad: “WordPress MCP.”
  • Connection → Server URL — your Royal MCP server endpoint: https://example.com/wp-json/royal-mcp/v1/mcp (substitute your bare domain only — no leading https:// in the substitution, the protocol is already in the template). The dialog’s placeholder shows https://example.com/sse — ignore that, Royal MCP uses the streamable HTTP MCP transport at the URL above, not SSE. (The Tunnel radio option next to Server URL is for developers running an MCP server locally via ngrok-style tunneling — not what you want for Royal MCP on a public WordPress site.)
ChatGPT New App dialog fully filled in. Name field shows My Royal Plugins. Description shows Manages content settings and Woocommerce data on my WordPress site. Connection is set to Server URL (Tunnel option visible to the right). URL field shows https://demo.royalplugins.com/wp-json/royal-mcp/v1/mcp. Authentication dropdown shows OAuth. Advanced OAuth settings row reads Review discovered OAuth settings or enter them manually then choose a client setup method and configure default scopes. The mandatory I understand and want to continue checkbox is checked. The Create button at the bottom-right is now active and ready to click.

New App dialog with a Royal MCP setup ready to submit. The icon is optional; everything else above is required, including the I understand and want to continue acknowledgment.

Click Create

Set Authentication to OAuth (default). The Advanced OAuth settings row will show “Review discovered OAuth settings” once you’ve entered a valid URL — that means ChatGPT successfully auto-discovered Royal MCP’s OAuth metadata and you don’t need to configure anything manually. Then check the mandatory I understand and want to continue box (OpenAI gates Create behind an explicit risk acknowledgment for unverified MCP servers). Click Create. If the URL fails validation, double-check it returns 401 to an unauthenticated request (the correct behavior — means the endpoint exists and is gating access). Run curl -s -o /dev/null -w "%{http_code}\n" https://example.com/wp-json/royal-mcp/v1/mcp from any terminal to verify before retrying.

No Client ID / Client Secret to configure in ChatGPT

ChatGPT’s Custom App handles OAuth through Royal MCP’s own OAuth endpoints — you don’t paste a Client ID or Client Secret into ChatGPT. When you click Create, ChatGPT redirects you through Royal MCP’s /authorize/token flow automatically. (Unlike Claude Desktop, ChatGPT doesn’t currently expose a Custom Headers field, so there’s no API-key bypass path. If OAuth is blocked by a WAF or Cloudflare on your host, see the troubleshooting checklist — the same fixes apply regardless of which AI platform you’re connecting from.)

Use Royal MCP in Conversations

Custom Apps aren’t auto-included in every chat — you toggle them on per-conversation via the message composer.

Open a new conversation

Start a fresh chat in ChatGPT.

Click the + button next to the message composer

The + button is to the left of the input field. Click it to open the tools menu.

Click More → pick your Royal MCP app

Expand the More section and find your Royal MCP app in the list. Click it to add the app to the current conversation’s context.

Ask ChatGPT to do something

The connector is now available for the rest of this conversation. Try: “What’s the title and tagline of my site?” — ChatGPT will invoke wp_get_site_info and respond with your actual site data.

Apps don’t persist across new chats by default

You’ll re-add the app each time you start a fresh conversation (via the + → More menu). Some ChatGPT tiers expose a way to pin frequently-used apps as a default; check your Settings → Apps for a “Default to all chats” option on each app card.

Mobile + desktop sync automatically

Once you’ve added the app on ChatGPT web, it’s automatically available in the ChatGPT mobile apps (iOS / Android) and the ChatGPT desktop apps (macOS / Windows) on the same account. No re-configuration needed.

Verify It’s Working

A few first commands to confirm the connection. These all use read actions, so they work on every supported plan tier:

If ChatGPT responds with your site-specific data, you’re connected. If you get a generic “I don’t have access to that” response, the app isn’t toggled on in this conversation — go back to the + → More menu and add it.

ChatGPT successfully responding to a verification prompt. The user asked: check to make sure you have connection to demo.royalplugins.com via app/connector. ChatGPT shows Looked for available tools and Called tool expandable sections, then responds: Connection is working. I successfully reached the WordPress connector for demo.royalplugins.com and retrieved site info: Site name: Royal Plugins Demo, WordPress version: 7.0, Language: en_US, Timezone: UTC plus zero. The connector/app integration for the available WordPress site appears active and responding correctly.

ChatGPT calls wp_get_site_info and reports back the site’s actual metadata — confirming end-to-end the OAuth handshake, the connector wiring, and Royal MCP’s tool invocation are all working.

For Business / Enterprise / Edu plans — write actions

If you’re on a tier with write support, try:

If write actions silently fail with a generic error on Plus or Pro, that’s the plan tier gate — not a Royal MCP issue. The fix is upgrading to Business tier or higher (or switching to Claude.ai, which has no such gate).

If Something Goes Wrong

ChatGPT-specific issues + the cross-platform issues that affect any OAuth-based MCP setup:

Symptom Likely cause Fix
Developer Mode toggle doesn’t appear in Apps → Advanced settings Free tier OR org admin disabled it Upgrade plan / contact org admin
Create button rejects the Server URL URL not reachable from public internet (localhost / private IP / blocked) Verify Royal MCP endpoint resolves externally via curl
OAuth consent screen never appears after Create Browser popup blocker, OR your host returned an error on /authorize Disable popup blockers; check Royal MCP Activity Log for the failure
Consent screen appears but Authorize button does nothing OAuth callback URL mismatch, or host-side CORS issue See troubleshooting hub
App created but “Couldn’t reach the MCP server” when used Almost always shared-hosting WAF blocking the inbound MCP request Same fixes as Claude side — see troubleshooting hub
“Unknown error” shown briefly after Authorize, but Settings → Apps shows the app as connected Known ChatGPT-side UX quirk during the final OAuth callback — the handshake actually completed successfully Ignore the error message. Verify in Settings → Apps that your Royal MCP app appears in the Enabled apps list with a Connected on date. If it does, you’re good. If the app didn’t appear, start over from the New App dialog.
Write actions silently fail on Plus / Pro plan Plan tier gate — write actions require Business+ on ChatGPT Upgrade tier OR use Claude.ai (no tier gate)
App works in chat but ChatGPT doesn’t use it Description field too generic — ChatGPT can’t tell when to invoke it Edit the app, add a more specific description naming what your site contains (“blog content, product catalog, customer orders”)

For any OAuth-flow failure that isn’t ChatGPT-specific (Cloudflare Zero Trust hijack, SiteGround .well-known/ 404, ModSecurity 406, etc.) — the troubleshooting start-here page covers all of them. The fixes work across Claude, ChatGPT, and any other MCP client.

Claude vs ChatGPT — When to Use Which (or Both)

Royal MCP supports both Claude and ChatGPT simultaneously — same WordPress site, same plugin, no extra license, no per-platform limit. You don’t have to choose. But the experience differs:

Claude.ai (web + Desktop) ChatGPT
Custom apps (formerly Connectors) on Free tier Yes No — paid tier required
Write actions on individual paid tier Yes Limited (Plus/Pro = read-only)
API-key bypass (skip OAuth entirely) Yes (Claude Desktop) No — OAuth-only currently
Setup complexity Single dialog Settings toggle + connector dialog
Mobile sync Yes Yes

Our honest take: Claude.ai is currently the better-fit platform for Royal MCP because it doesn’t gate write actions behind a tier upgrade and supports the API-key bypass for OAuth-blocked hosts. ChatGPT works fine for read / analysis use cases (monthly content audits, SEO reporting, WooCommerce sales summaries on Plus or Pro), but for “AI publishes my blog post” workflows on a personal account, Claude is the easier path until OpenAI lifts the tier gate.

Many users run both at once and pick whichever fits the task.

Still Stuck? Two Support Paths

If you’ve worked through the checklist and your connection still fails:

Community Support (free) — wp.org Plugin Forum

Post a new thread at wordpress.org/support/plugin/royal-mcp/. The Royal Plugins team monitors the forum regularly. Include the diagnostic info below.

Premium Support (paid) — direct one-on-one help

For priority response (24-hour SLA) and hands-on diagnostic help, our Premium Support tier is $149/year. Direct email, full refund if we can’t resolve your issue.

Information to include in your post or ticket

  • Which ChatGPT plan you’re on (Plus / Pro / Team / Business / Enterprise / Edu).
  • Which step failed (Developer Mode toggle missing, Server URL rejected, OAuth consent didn’t appear, consent succeeded but ChatGPT can’t reach the server, etc.).
  • Screenshot of the Activity Log in Royal MCP with the most recent oauth:* rows visible, View Details expanded on the failing row.
  • The exact error message ChatGPT shows.
  • Your hosting provider and whether Cloudflare is in front of the site.