Skip to main content

Troubleshoot: OAuth dynamic client registration in Claude Desktop

Resolve Claude Desktop Funnel MCP setup failures when mcp-remote cannot complete dynamic OAuth client registration.

Problem summary

You add Funnel MCP to Claude Desktop by editing claude_desktop_config.json manually because your organization does not offer Add custom connector. OAuth discovery succeeds, but connection fails during dynamic client registration and no Funnel sign-in window opens.

Error message or symptoms

The MCP server starts and OAuth discovery succeeds, but setup fails at dynamic client registration. mcp-remote reports a ServerError against login.funnel.io/oidc/register and no sign-in window opens.

A typical failing configuration looks like this:

"funnel": {
  "command": "npx",
  "args": ["-y", "mcp-remote@latest", "https://mcp.ai.funnel.io/mcp"]
}

When does this occur

  • When you configure Funnel MCP manually in Claude Desktop with mcp-remote in claude_desktop_config.json

  • When your Claude organization does not show Add custom connector and you cannot use the in-app connector flow

  • After OAuth discovery succeeds but registration against login.funnel.io/oidc/register fails before sign-in

Root cause

mcp-remote attempted dynamic OAuth client registration without a static OAuth Client ID from Funnel. For manual Claude Desktop setups, registration at the OIDC register endpoint can fail and block the sign-in flow until you pass Funnel's static OAuth client details to mcp-remote.

Solution

  1. Confirm your Remote MCP server URL matches your Funnel region:

    • Global (default): https://mcp.ai.funnel.io/mcp

    • EU: https://mcp.eu.ai.funnel.io/mcp

    Copy Server URL from Connect Funnel MCP in Funnel AI full view (Data > Analyze > Funnel AI).

  2. Copy your OAuth Client ID from the same Connect Funnel MCP modal. Expand Advanced if your client requires static OAuth registration.

  3. Replace your claude_desktop_config.json entry with static OAuth client info. Substitute the placeholders below:

    • {mcp_server_url} — your Funnel MCP server URL from step 1

    • {local_callback_port} — a local port for the OAuth callback (for example 17207)

    • {oauth_client_id} — your OAuth Client ID from step 2

    json "funnel": { "command": "npx", "args": [ "mcp-remote", "{mcp_server_url}", "{local_callback_port}", "--static-oauth-client-info", "{\"client_id\":\"{oauth_client_id}\"}" ] }

  4. Restart Claude Desktop and complete the Funnel sign-in flow when the browser window opens.

  5. If registration still fails, contact Funnel support. Include:

    • Your MCP server URL

    • That you are using manual mcp-remote configuration in Claude Desktop

    • The full error text from mcp-remote or Claude Desktop logs

    • When the issue started

Did this answer your question?