anthropics / anthropics/claude-ai-mcp

Custom connector never sends bearer token to resource server after completing OAuth flow

オープン
#657 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る
auth bug user-report
主要言語
言語のデータがありません
スター
471
フォーク
76
PR マージ指標
30日以内にマージされた PR はありません

説明

### MCP server URL or name

https://dev.grunewald.blog/wp-json/mcp/mcp-adapter-default-server

### How are you connecting to this server?

From a custom connector URL I entered manually

### Where does the issue occur?

When pressing the Connect button

### When did you last reproduce this?

2026-07-21

### Browser and OS

_No response_

### Describe the issue

Summary:
After a custom connector completes the full OAuth 2.1 authorization flow against a self-hosted MCP server (including Dynamic Client Registration per RFC 7591 and Protected Resource Metadata per RFC 9728), the connector never retries the original MCP request with the newly-issued access token. The connector stays in "Connection problem" status indefinitely, even though the authorization server issues a valid token every time.

Environment:

Custom connector, Server URL: https://dev.grunewald.blog/wp-json/mcp/mcp-adapter-default-server
Self-hosted OAuth 2.1 authorization server (WordPress plugin, built on league/oauth2-server)

Steps to reproduce:

Add a custom connector pointing to the MCP server URL above (or any MCP server behind a compliant OAuth 2.1 authorization server with DCR support).
Click "Connect" / re-authorize.
Complete the browser consent screen.

Observed server-side sequence (from access logs), all correct per spec:

POST /wp-json/mcp/mcp-adapter-default-server → 401 with WWW-Authenticate: Bearer resource_metadata="https://.../.well-known/oauth-protected-resource"
GET /.well-known/oauth-protected-resource → 200
GET /.well-known/oauth-authorization-server → 200
POST /gone-oauth/register (Dynamic Client Registration) → 201
GET /gone-oauth/authorize?... → 200 (consent screen shown)
POST /gone-oauth/authorize?... → 302 (user approved, redirected with code to https://claude.ai/api/mcp/auth_callback)
POST /gone-oauth/token → 200 (access token issued)

Expected: After step 7, the connector retries the original POST /wp-json/mcp/mcp-adapter-default-server request with Authorization: Bearer .

Actual: No further request to the MCP resource endpoint is made. In one reproduction, the connector instead repeated step 5/6 (/authorize) a second time with identical parameters, then still stopped. The UI shows "Connection failed. Check whether the URL points to a valid MCP server" / "Authorization with [connector name] failed", even though the token was successfully issued.

Additional note: The pre-existing broken connector entry cannot be deleted from claude.ai/settings/connectors — clicking it only re-triggers the OAuth flow, with no visible delete/remove option.

### Error details

```shell
Cannot Connect
```

### Expected behavior

Connects

### Additional context

_No response_

コントリビューションガイド

このリポジトリのコントリビューションガイドは索引されていません

評価

この issue はまだ評価されていません。

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。