{"id":19034444,"date":"2026-10-01T21:00:38","date_gmt":"2026-10-01T21:00:38","guid":{"rendered":"https:\/\/wordpress.org\/support\/topic\/claude-ai-connector\/"},"modified":"2026-10-01T21:00:38","modified_gmt":"2026-10-01T21:00:38","slug":"claude-ai-connector","status":"publish","type":"topic","link":"https:\/\/wordpress.org\/support\/topic\/claude-ai-connector\/","title":{"rendered":"Claude.ai connector"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\"><strong>Claude.ai connector: &#8220;Couldn&#8217;t connect to the server&#8221; on Royal MCP 1.5.6 \u2013 client never starts OAuth<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Site: snowmonkey.cz, WP + Divi 4.27.6, Apache, no Cloudflare. Royal MCP 1.5.6, OAuth state reset before testing.<br \/>Claude.ai custom connector (URL <code>\/wp-json\/royal-mcp\/v1\/mcp<\/code>) shows &#8220;Couldn&#8217;t connect to the server. Check that the URL points to a valid MCP server.&#8221;<br \/>Protocol Insights: client &#8220;Anthropic\/ClaudeAI&#8221;, protocol 2026-07-28, methods <code>server\/discover<\/code> and <code>initialize<\/code> only. The server answers 401 with <code>-32600 Authentication required<\/code> and <code>WWW-Authenticate: Bearer resource_metadata=\u2026<\/code> (two challenges in one header).<br \/>Activity Log shows NO <code>oauth:register<\/code> or <code>oauth:authorize<\/code> after the reset, so the client gives up before starting OAuth.<br \/>Both protected-resource metadata URLs (root and path-suffixed) return 200 <code>application\/json<\/code> with the correct <code>resource<\/code>, and the authorization-server metadata returns S256 + <code>client_id_metadata_document_supported: true<\/code>.<br \/>On 1.4.45 (Sept 3) the same client got as far as <code>oauth:register<\/code> (success) and then <code>oauth:authorize<\/code> failed with an empty client_id.<br \/>Could <code>server\/discover<\/code> (unauthenticated) need a non-401 response for protocol 2026-07-28, or could the duplicate Bearer challenge be the issue?<\/p>\n","protected":false},"template":"","class_list":["post-19034444","topic","type-topic","status-publish","hentry"],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/support\/wp-json\/wp\/v2\/topic\/19034444","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/support\/wp-json\/wp\/v2\/topic"}],"about":[{"href":"https:\/\/wordpress.org\/support\/wp-json\/wp\/v2\/types\/topic"}],"version-history":[{"count":0,"href":"https:\/\/wordpress.org\/support\/wp-json\/wp\/v2\/topic\/19034444\/revisions"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/support\/wp-json\/wp\/v2\/media?parent=19034444"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}