anomalyco / anomalyco/opencode
Claude Design MCP OAuth fails after consent with unsupported localhost callback
@kitlangton is already working on this.
Since Aug 27, 2026.
- Dominant language
- TypeScript
- Stars
- 209k
- Forks
- 27.5k
- PR merge metrics
- PR metrics pending
Description
Description
Authenticating Anthropic's Claude Design remote MCP fails after browser consent because the callback URL generated by OpenCode is rejected as an unsupported localhost/loopback redirect.
The server is imported from Claude Code configuration by oh-my-openagent@latest:
claude_design
https://api.anthropic.com/v1/design/mcp
opencode mcp list correctly reports the server as needs authentication. Running the auth command opens the browser and reaches the consent flow, but completion fails at the local callback, leaving the server unauthenticated.
This appears related to #44790. The Design MCP challenge advertises path-specific protected-resource metadata, while the generic authorization path can fall back to the wrong authorization server. Anthropic users have reported the same endpoint misrouting OAuth to a retired authorization endpoint in anthropics/claude-code#72582 and anthropics/claude-code#77620.
Expected behavior: OpenCode should complete OAuth using the authorization server advertised by the protected-resource metadata, or fail before opening the browser with a clear unsupported-provider error. It should not leave stale PKCE state after an unusable callback flow.
Plugins
oh-my-openagent@latest (imports claude_design from ~/.claude.json through Claude Code compatibility)
OpenCode version
1.18.23
Steps to reproduce
-
Configure or import this remote MCP server:
{ "claude_design": { "type": "remote", "url": "https://api.anthropic.com/v1/design/mcp" } } -
Run
opencode mcp listand confirmclaude_designreportsneeds authentication. -
Run
opencode mcp auth claude_design. -
Complete the browser consent step.
-
Observe that the localhost/loopback callback is reported as unsupported and
opencode mcp auth liststill reportsclaude_designas not authenticated.
No OAuth tokens, authorization codes, PKCE verifier, or state values are included in this report.
Screenshot and/or share link
Not included because the browser page contains account-specific OAuth state.
Related reports:
- #44790
- https://github.com/anthropics/claude-code/issues/72582
- https://github.com/anthropics/claude-code/issues/77620
Operating System
macOS 26.6.1 (arm64)
Terminal
Orca integrated terminal (xterm-256color, zsh)
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.