
# 连接其他 MCP 客户端 {/* #connect-another-mcp-client */}

这些步骤适用于支持远程 MCP 服务器、但本文档没有专门指南的 AI 代理或编辑器。首先，按照[开始之前](/docs/zh/connect-ai-agents#before-you-start)的说明，选择 OAuth 或个人令牌。

## 添加服务器 {/* #add-the-server */}

1. 打开客户端的 MCP 服务器设置，添加名为 `reconstruct` 的服务器。
2. 选择 **Streamable HTTP**（有时标记为 **HTTP** 或 **remote HTTP**）。
3. 将服务器 URL 设置为 `https://reconstruct.dev/mcp`。

## OAuth 浏览器登录 {/* #oauth-browser-sign-in */}

如果客户端支持 OAuth 发现和动态客户端注册（DCR），仅添加 `https://reconstruct.dev/mcp`，选择 OAuth 并连接。客户端会注册自己的回调地址，打开 Reconstruct 登录页面，并在批准访问后自动接收回调。无需手动输入客户端 ID 或回调端口。

托管应用可在公共域名上注册确切的 HTTPS 回调地址，例如 `https://app.example.com/mcp/callback`。原生应用可在 `127.0.0.1` 或 `localhost` 上使用显式端口注册确切的 HTTP 回调地址。回调由客户端拥有和处理，而非 MCP 服务器。注册要求 PKCE `S256`、用户同意和仅限 MCP 的作用域。通配符、非环回 HTTP 地址、片段和远程密钥 URL 均会被拒绝。

### 不支持自动注册的客户端 {/* #clients-without-automatic-registration */}

如果应用无法自行注册，请使用预先注册的公共客户端：

1. 将客户端 ID 设为 `reconstruct-mcp`、作用域设为 `openid aud-mcp`，客户端密钥留空。
2. 将本地 OAuth 回调端口设为 `58234`，路径设为 `/callback`。
3. 保存并连接，完成浏览器登录，批准访问，然后返回客户端。

### 自定义客户端的本地回调 {/* #local-callback-for-custom-clients */}

配置客户端，使其监听本机端口 `58234`，并使用以下确切的重定向 URI 之一：

- `http://127.0.0.1:58234/callback`
- `http://localhost:58234/callback`

客户端必须支持带 PKCE（`S256`）的授权码流程。使用客户端 ID `reconstruct-mcp`、作用域 `openid aud-mcp`，不使用客户端密钥。登录和令牌交换时发送的重定向 URI 必须与配置的 URI 完全一致。

端口 `58234` 仅用于本地浏览器回调。远程 MCP 服务器 URL 仍为通过 HTTPS 访问的 `https://reconstruct.dev/mcp`。将回调监听器绑定到环回接口；不要将该端口暴露到网络。同一时间只有一个登录流程可以监听此端口；启动另一个登录前，请先完成现有登录。

### 自动返回客户端 {/* #automatic-return-to-the-client */}

MCP 客户端必须先启动本地回调监听器，再打开浏览器。登录并同意授权后，Keycloak 会将浏览器重定向至该监听器；客户端接收授权响应，使用 PKCE 交换授权码，并恢复 MCP 连接。用户不应需要手动复制回调 URL 或授权码。

Muse Code、Grok Build、Codex 和 Claude Code 可按各自指南使用共用端口。具有自身固定回调地址的客户端（例如 Cursor 或 Claude Desktop）应保留其支持的回调地址。

对于自定义 C# 应用，配置 `ClientOAuthOptions.RedirectUri`，并实现 `AuthorizationCallbackHandler`，以打开浏览器并获取 `code`、`state` 和 `iss`。仅设置重定向 URI 不会创建监听器；SDK 的默认处理程序会要求手动输入重定向 URL。参阅 [C# SDK 官方 OAuth 选项](https://github.com/modelcontextprotocol/csharp-sdk/blob/main/src/ModelContextProtocol.Core/Authentication/ClientOAuthOptions.cs)。

签发者为 `https://reconstruct.dev/sso/realms/reconstruct`；使用发现得到的授权和令牌端点，不要自行构造根目录下的 `/authorize` 和 `/token` URL。

选择 OAuth 时，请移除手动配置的 `Authorization` 请求头。如果登录报告回调错误，请向[支持团队](https://reconstruct.dev/support)提供客户端显示的回调 URI。

## 个人访问令牌 {/* #personal-access-token */}

如果客户端不支持 OAuth，请在平台设置中[创建 MCP 令牌](/docs/zh/connect-ai-agents#personal-access-token)，并将 HTTP 请求头 `Authorization` 设为 `Bearer <your MCP token>`。若客户端支持，请使用其密钥存储或 `CR_RECONSTRUCT_MCP_TOKEN` 环境变量。

## 检查连接 {/* #check-the-connection */}

重新连接或重启客户端。确认工具列表中显示 `list_products`，然后请代理调用它。

不同客户端并不共用同一种 JSON 格式。有的使用 `mcpServers`，有的使用 `servers` 或 `mcp`；有的要求 `type` 字段。请遵循客户端文档中的确切字段名和令牌插值语法。仅支持旧版 SSE 传输的客户端，不能将 Reconstruct 的 HTTP `/mcp` 端点当作 SSE 使用。

连接失败时，请查看[故障排查表](/docs/zh/connect-ai-agents#troubleshooting)。连接后，试试[提示词示例](/docs/zh/prompt-examples)。
