Plugin Support
rpteam
(@rpteam)
Hi @superyeti,
Happy to dig in. A few pieces of info I’ll need to diagnose this:
- The exact subdomain URL you’re connecting to — the full MCP Server URL as shown in Royal MCP →Settings → General (e.g. https://mcp.example.com/wp-json/royal-mcp/v1/mcp).
- Which client — Claude.ai web (custom connector), Claude Desktop, or ChatGPT?
- The exact error text shown by the client after you click Authorize. A screenshot is fine.
- How the subdomain is set up — is it a separate WordPress install with its own database, a WordPress Multisite subsite, a reverse proxy pointing to a directory install, or something else? And is it on the same host / behind the same Cloudflare (if any) as your working top-level domain?
- Was this working at any point before now or no?
Meanwhile, three quick self-checks that resolve most subdomain OAuth issues:
a. Confirm discovery is reachable at the subdomain. In your browser (not the plugin), open:
https://YOUR-SUBDOMAIN.example.com/.well-known/oauth-authorization-server
You should see a JSON response with issuer, authorization_endpoint, token_endpoint, registration_endpoint fields — and every one of those URLs should point to the subdomain, not to your
top-level domain. If any point to the wrong host, that’s the root cause.
b. Check WordPress Address + Site Address. WP Admin → Settings → General on the subdomain install — both fields must be the subdomain URL, not the top-level. A mismatch here makes Royal MCP advertise the wrong discovery endpoints.
c. Save Permalinks. WP Admin → Settings → Permalinks → Save Changes (no changes needed — the save
action flushes WordPress rewrite rules, which serve the .well-known/oauth-* paths). This resolves cases
where OAuth endpoints 404 despite the plugin being active.
“Activity Log shows nothing” is a strong diagnostic signal — it usually means the request never reached
PHP at all, which points at either broken rewrites (see step c) or the client hitting the wrong
hostname (see step a). Once you share the subdomain URL + client + error, we can narrow it fast.
RP Team