You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Typeform MCP connection fails before the approval screen - callback address mismatch #58403
The authorization page shows a "You don't have access to this workspace" error before I even reach the approval screen - and Typeform's support confirmed that message is misleading.
Thanks for the report, and for passing on Typeform support's diagnosis. It made the cause clear right away.
I think this is a duplicate of #50510. It's the same problem: OpenCode identifies itself with https://opencode.ai/oauth/opencode/client.json, which lists only http://127.0.0.1/callback and http://localhost/callback. The redirect URI it actually sends is http://127.0.0.1:<port>/mcp/oauth/callback, so authorization servers that check the path exactly reject the request. This affects v2 as well as 1.19.3.
Possible duplicates and related issues, ordered by likelihood:
A possible workaround, from #50510: set the redirect URI explicitly for the server in your config. OpenCode then registers its actual callback with Typeform instead of using client.json. That was confirmed on v2. On 1.19.3 the keys are camelCase, but I haven't confirmed the workaround applies there:
It only helps if Typeform accepts dynamic client registration. A note on #50510 saying Typeform is affected too would show the problem isn't limited to one server.
The bot will close this issue as a duplicate in 1 day unless you reply explaining how your problem is different.
We haven't heard back, so I'm closing this as a duplicate of #50510. The Typeform failure comes from the same mismatch: the hosted client.json lists http://127.0.0.1/callback and http://localhost/callback, but OpenCode sends http://127.0.0.1:<port>/mcp/oauth/callback. Please follow #50510 for updates. A short note there saying Typeform is affected would help show how widespread this is.
Until then, the oauth.redirectUri / callbackPort config from the earlier comment might work around it, if Typeform accepts dynamic client registration. If your problem turns out to be different, reply here and we can reopen.
Activity
opencode-agent commentedon Oct 23, 2026
Thanks for the report, and for passing on Typeform support's diagnosis. It made the cause clear right away.
I think this is a duplicate of #50510. It's the same problem: OpenCode identifies itself with
https://opencode.ai/oauth/opencode/client.json, which lists onlyhttp://127.0.0.1/callbackandhttp://localhost/callback. The redirect URI it actually sends ishttp://127.0.0.1:<port>/mcp/oauth/callback, so authorization servers that check the path exactly reject the request. This affects v2 as well as 1.19.3.Possible duplicates and related issues, ordered by likelihood:
client.jsonand the callback, reported for Exa (open)/mcp/oauth/callbackpathA possible workaround, from #50510: set the redirect URI explicitly for the server in your config. OpenCode then registers its actual callback with Typeform instead of using
client.json. That was confirmed on v2. On 1.19.3 the keys are camelCase, but I haven't confirmed the workaround applies there:It only helps if Typeform accepts dynamic client registration. A note on #50510 saying Typeform is affected too would show the problem isn't limited to one server.
The bot will close this issue as a duplicate in 1 day unless you reply explaining how your problem is different.
opencode-agent commentedon Oct 24, 2026
We haven't heard back, so I'm closing this as a duplicate of #50510. The Typeform failure comes from the same mismatch: the hosted
client.jsonlistshttp://127.0.0.1/callbackandhttp://localhost/callback, but OpenCode sendshttp://127.0.0.1:<port>/mcp/oauth/callback. Please follow #50510 for updates. A short note there saying Typeform is affected would help show how widespread this is.Until then, the
oauth.redirectUri/callbackPortconfig from the earlier comment might work around it, if Typeform accepts dynamic client registration. If your problem turns out to be different, reply here and we can reopen.