Find your error
OAuth stays grayed out
Gumloop enables OAuth 2.0 only when it finds the OAuth metadata the server publishes. If something blocks or redirects that check, OAuth stays grayed out.- Allow Gumloop through your firewall. If the server filters by IP, allow all of Gumloop’s static egress IPs. A
403hides the OAuth metadata. - Use the exact endpoint URL from the provider’s docs, including
https://and any trailing slash. Some servers only answer on/mcp/. - Self-hosted servers: check the app’s public “site URL” setting. If it uses
http://or an internal hostname, Gumloop can’t follow the OAuth links. - If the provider requires your own OAuth app, create one, add both Gumloop redirect URLs, then choose OAuth 2.0 (Custom Client) and enter the client ID and secret. If your organization already set a client for that server, this option doesn’t appear when you connect. Ask the server’s creator or an admin to change it under OAuth Client in the server’s settings.
- Remove the server and add it again so Gumloop reruns the check.
OAuth sign-in fails or loops
The OAuth provider is rejecting Gumloop as a client. Ask whoever manages it to:- Allow both redirect URLs:
- Allow Dynamic Client Registration (DCR) or Client ID Metadata Documents (CIMD) from hosted clients, not only desktop apps. If they can’t, register an OAuth app for Gumloop and use OAuth 2.0 (Custom Client).
OAuth issuer mismatch
issuer_mismatch means Gumloop couldn’t match the authorization response to the authorization server discovered for the connector. This is different from an expired OAuth session.
1
Check the connector URL
Use the correct MCP endpoint URL from the provider’s documentation, not a web page or an endpoint for a different account or environment.
2
Ask the OAuth administrator to check the issuer
Ask whoever manages the server’s OAuth configuration to check the issuer advertised in its authorization-server metadata and the issuer returned during sign-in. After they correct the configuration, retry sign-in.
Tools won’t load
The server connected, but Gumloop couldn’t list its tools.- API key: retype it by hand. Trailing spaces, line breaks, or curly quotes from copy and paste break the header. Enter extra headers as
Header-Name: value. - Transport: the server must use Streamable HTTP or SSE over HTTPS.
localhostand STDIO aren’t supported. Expose a local server with a tunnel such as Cloudflare Tunnel or ngrok, or use Managed Tunnels on Enterprise. - Session header: if a proxy sits in front of a stateful server, make sure it doesn’t strip
Mcp-Session-Id. - Gateway in front of the server: for Cloudflare Access, AWS API Gateway, or Azure API Management, add its credential as an Access Gate on a proxied MCP.
- Request-body errors: for “Request body uses an unsupported Content-Encoding”, ask the client or gateway administrator to send an uncompressed body and omit
Content-Encodingor useidentity. For “Request body is not valid JSON-RPC”, send valid UTF-8 JSON with an object or array at the top level.
Hosted MCP won’t create or deploy
For admins using Hosted MCPs.Why is my manual deployment refused?
- “Server is not active” (
server_inactive): re-enable the hosted server, then deploy again. - “A deployment is already in progress for this server” (
deploy_in_progress): open Deployments and wait for the current manual deployment to finish before retrying.
Related
Custom, proxied, and hosted MCP
Which type to use
Custom MCP servers
URLs, headers, and OAuth