
# 다른 MCP 클라이언트 연결 {/* #connect-another-mcp-client */}

여기에 전용 가이드가 없지만 원격 MCP 서버를 지원하는 AI 에이전트나 편집기에는 이 절차를 적용하세요. 먼저 [시작하기 전](/docs/ko/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 로그인을 연 다음 액세스 승인 후 콜백을 자동 수신합니다. Client ID나 콜백 포트를 직접 입력할 필요가 없습니다.

호스팅 앱은 `https://app.example.com/mcp/callback`처럼 공개 도메인의 정확한 HTTPS 콜백을 등록할 수 있습니다. 네이티브 앱은 명시적 포트를 사용해 `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`)를 사용하는 Authorization Code 방식을 지원해야 합니다. 클라이언트 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` 헤더를 제거하세요. 로그인 중 콜백 오류가 발생하면 클라이언트에 표시된 콜백 URI로 [지원팀에 문의](https://reconstruct.dev/support)하세요.

## 개인 액세스 토큰 {/* #personal-access-token */}

OAuth를 지원하지 않는 클라이언트에서는 Platform 설정에서 [MCP 토큰을 만들고](/docs/ko/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/ko/connect-ai-agents#troubleshooting)를 확인하세요. 연결한 다음 [프롬프트 예시](/docs/ko/prompt-examples)를 사용해 보세요.
