메인 콘텐츠로 건너뛰기

인증

대화형 OAuth (권장)​

최초 연결 시 MCP 클라이언트는 다음을 수행합니다:

  1. Builder 또는 Runtime URL에 접근
  2. 인증 챌린지 수신
  3. EKB 계정의 브라우저 동의 화면 열기 (/oauth/consent)
  4. PKCE를 사용한 인증 코드 흐름 완료
  5. 본인을 대표하는 토큰으로 EKB에 호출

연결한 엔드포인트에 따라 build 또는 use 접근을 승인합니다. Builder와 Runtime은 토큰을 공유하지 않습니다.

동의 화면에 표시되는 내용​

범위화면의 레이블
odin:buildBuild in your workspace
odin:useUse your agents and tools

화면에는 요청하는 MCP 클라이언트 이름과 권한이 표시됩니다. 명시적으로 승인하거나 거부하세요 — 기본적으로 아무것도 부여되지 않습니다. 거부하면 클라이언트가 멈추지 않도록 error=access_denied와 함께 클라이언트로 다시 리디렉션됩니다.

보류 중인 동의 요청은 만료됩니다. 페이지에 요청이 만료되었거나 이미 사용되었다고 표시되면, MCP 클라이언트에서 다시 시작하세요.

왜 두 개의 부여인가​

부여범위Audience일반적인 용도
Builderodin:build/builder/mcp에이전트, 워크플로우, 테이블, 인터페이스, KB 생성/변경
Runtimeodin:use/runtime/mcp에이전트 질문, 게시된 도구 실행, KB 검색, 테이블 쿼리

Runtime 토큰을 Builder에 지정하면 실패합니다 (그 반대도 마찬가지). "내 지원 에이전트에게 질문하기"는 "내 에이전트를 재작성하기"로 승격될 수 없습니다.

토큰이 할 수 있는 일​

세 가지 계층이 적용됩니다:

  1. Audience — 토큰은 승인한 서버에만 유효합니다
  2. Scope — build 대 use
  3. 백엔드 허용 목록 — 명시적으로 지정된 EKB API 집합만 MCP를 통해 접근할 수 있습니다

MCP 서비스는 자체 자격 증명을 보유하지 않습니다. 모든 호출은 사용자의 토큰(또는 API 키)을 전달합니다. EKB는 여전히 일반적인 프로젝트 구성원 자격, 권한, 게시 상태, 문서 Access Tag를 적용합니다.

API 키 (헤드리스)​

CI와 자동화는 브라우저 동의 흐름을 완료할 수 없습니다. 다음을 전달하세요:

X-API-KEY: ...
X-API-SECRET: ...
키 유형적합한 용도
사용자 수준list_odin_projects, 다중 프로젝트 Runtime, 여러 프로젝트를 봐야 하는 CI
프로젝트 범위단일 프로젝트로 고정된 자동화

예시 구성: 클라이언트 연결.

MCP 클라이언트 구성의 API 시크릿은 다른 자격 증명과 동일하게 취급하세요 — 공유 저장소에 커밋하지 마세요.

보안 팁​

  • Builder는 구성 변경이 필요한 클라이언트에만 연결하세요
  • 일상용 어시스턴트에는 Runtime만 사용하는 것이 좋습니다
  • 프로덕션에서는 HTTPS MCP URL을 사용하세요
  • 헤드리스 접근에 사용되는 API 키를 정기적으로 교체하세요
  • 노트북 / 클라이언트가 더 이상 빌드 접근을 가져서는 안 되면 권한을 해제하거나 다시 연결하세요
  • Access Tag와 프로젝트 역할은 Runtime 검색 및 에이전트 답변에도 계속 적용된다는 점을 기억하세요

문제 해결​

증상확인할 사항
동의 만료클라이언트에서 다시 시작하세요. 요청은 유효 기간이 짧습니다
토큰이 Runtime에서는 되지만 Builder에서는 안 됨예상된 동작입니다. 별도의 부여이므로 Builder를 별도로 연결하고 승인하세요
헤드리스 호출이 프로젝트 간에 실패사용자 수준 API 키를 사용하세요
거부 후 클라이언트 멈춤클라이언트가 access_denied를 처리해야 합니다. 필요하면 연결을 재시도하세요

관련 문서​