Linux 서버에서 실행 중인 OpenClaw에 Figma를 연결하는 방법이다. Codex native MCP를 사용한다. 서버 터미널에서 인증을 시작하고, 다른 컴퓨터의 브라우저에서 승인하는 구성을 기준으로 정리했다.
1. 준비사항
- OpenClaw가 설치돼 있고, 대상 에이전트가 native Codex 런타임으로 실행돼 있어야 한다. OpenAI 모델을 선택한 것만으로는 이 조건을 충족하지 않는다.
- Codex 계정 로그인이 완료돼 있어야 한다. Figma 로그인은 별도로 진행한다.
- 서버 터미널, 일반 웹브라우저, 대상 파일에 접근 가능한 Figma 계정이 필요하다.
- 확인 버전은 Codex 0.160.0, Figma curated remote 플러그인 16.0.0이다. 버전이 다르면 도움말을 먼저 확인한다.
OpenClaw 설치와 Codex 런타임 구성은 Codex 런타임 문서를 따른다. 아래 명령은 OpenClaw 대화창에 입력한다. 셸 명령과 구분한다.
/codex status
/codex plugins available figma
첫 명령으로 app-server 연결과 계정 상태를 확인한다. 두 번째 명령에서 현재 계정에 제공되는 Figma 플러그인의 정확한 이름과 마켓플레이스를 확인한다.
2. Figma 플러그인 설치·활성화
목록에 figma@openai-curated-remote가 표시된 경우 다음 명령을 사용한다. 다른 이름으로 표시되면 목록의 식별자로 바꾼다. 설치·활성화는 소유자 또는 관리자 권한으로 진행한다.
/codex plugins install figma@openai-curated-remote
/codex plugins status figma@openai-curated-remote
이미 설치·활성화됐다면 재설치하지 않는다. 비활성 상태라면 다음 명령으로 활성화한다.
/codex plugins enable figma@openai-curated-remote
Codex에서 먼저 설치해야 한다는 안내가 나오면 같은 에이전트의 Codex 환경에서 설치한 뒤 OpenClaw의 install 명령을 다시 실행해 사용을 허용한다. 이때 설치된 번들을 중복 생성하는 것이 아니라 기존 설치를 확인한다. 계정에 마켓플레이스가 없으면 임의의 다른 플러그인으로 대체하지 않는다.
플러그인 설치 상태와 Figma MCP 인증 상태는 별개다. ChatGPT Apps의 연결 화면도 아래 native MCP 인증과 구분한다.
3. 인증할 실행 환경 확인
OpenClaw가 사용하는 Codex 실행 파일과 인증 저장 위치를 확인한다. 터미널의 codex가 OpenClaw의 관리형 Codex와 같은 실행 파일이라고 가정하지 않는다.
- 로컬 기본 구성의 에이전트 홈은
~/.openclaw/agents/에이전트ID/agent/codex-home이다. 일반 CLI 기본값인~/.codex와 다르다. - 사용자 범위 홈이나 원격 app-server를 쓰면 해당 실행 환경의 홈과 실행 파일을 사용한다.
- 설치 담당자나 에이전트에게 실제 app-server 실행 파일과 홈을 확인하게 한다. 관리형 Codex 경로는 설치 위치마다 달라 고정 경로를 복사하지 않는다.
서버 터미널에서 아래 두 값을 실제 경로로 바꾼다. 이후 명령은 같은 터미널에서 실행한다.
FIGMA_CODEX_BIN="/실제/Codex/실행파일"
FIGMA_CODEX_HOME="$HOME/.openclaw/agents/에이전트ID/agent/codex-home"
"$FIGMA_CODEX_BIN" --version
"$FIGMA_CODEX_BIN" mcp login --help
test -d "$FIGMA_CODEX_HOME" && echo "에이전트 홈 확인"
홈 디렉터리가 없으면 인증을 시작하지 않는다. 경로와 에이전트 ID부터 확인한다. 기존 설정 파일이나 인증 파일 전체를 채팅에 붙여 넣을 필요는 없다.
4. 서버 터미널에서 인증 시작
CODEX_HOME="$FIGMA_CODEX_HOME" \
"$FIGMA_CODEX_BIN" -c 'mcp_servers.figma.url="https://mcp.figma.com/mcp"' \
mcp login figma --no-browser
--no-browser는 승인 후 콜백 주소를 터미널에 직접 입력하는 방식이다. 터미널을 닫지 않는다. 확인 버전의 기본 인증 대기시간은 300초다.
-c는 이 명령에만 서버 주소를 지정한다. 설정 파일에 서버를 영구 등록하거나 모든 에이전트에 연결을 배포하는 명령이 아니다.
5. 브라우저 승인과 콜백 입력
- 터미널에 표시된 새 인증 링크를 일반 브라우저에서 연다.
- 사용할 Figma 계정으로 로그인하고 접근을 허용한다.
- 승인 후 주소창의 전체 주소를 복사한다.
- 인증을 시작한 서버 터미널에 한 번만 붙여 넣고 Enter를 누른다.
- 터미널의 로그인 성공 메시지를 확인한다.
브라우저와 서버가 다른 컴퓨터라면 127.0.0.1 콜백에서 연결 오류가 날 수 있다. 이때 주소창의 전체 주소를 서버 터미널에 입력한다. 주소를 채팅이나 DM으로 보내면 전송 과정에서 코드가 가려지거나 축약될 수 있다.
입력이 표시되지 않는 터미널도 있다. 보이지 않는다고 두 번 붙여 넣지 않는다. 시간이 만료됐거나 입력 오류로 종료됐다면 종료 상태를 확인한 뒤 새 인증을 시작한다. 이전 주소는 재사용하지 않는다.
6. OpenClaw에서 사용 확인
인증 저장과 OpenClaw의 도구 사용 가능 여부는 따로 확인한다. 플러그인 구성을 바꿨다면 필요한 대화 기록을 보존한 뒤 새 대화에서 점검한다.
/new
/codex plugins status figma@openai-curated-remote
/codex mcp
/codex mcp에서 대상 런타임의 Figma 서버·인증·도구 상태를 확인한다. 플러그인 status만으로 native MCP 도구 준비를 판단하지 않는다. /codex plugins refresh는 hosted Apps 새로고침이므로 native MCP 재인증이나 서버 재시작을 대신하지 않는다.
에이전트에는 다음과 같이 요청한다. 파일 주소는 자신이 접근할 수 있는 파일로 바꾼다.
Figma 계정 조회를 실행하고, 다음 파일의 페이지 목록과
첫 페이지 최상위 노드를 읽어줘. 아직 수정하지 마.
파일: [Figma 파일 주소]
읽기에 성공하면 필요한 경우 다음 단계로 편집을 확인한다.
기존 디자인은 변경하지 말고 별도 검증 페이지에 작은 프레임을 만들어줘.
프레임 크기와 색상을 바꾼 뒤 다시 조회해서 실제 반영 여부를 확인해줘.
응답에는 실행한 도구와 조회 결과가 있어야 한다. 에이전트가 가능하다고 답하거나 도구 목록만 보여준 것은 호출 성공이 아니다.
도구가 없으면 새 로그인을 반복하지 않는다. 실제 app-server의 홈·서버 설정·플러그인 활성 상태를 대조한다. 이번 성공 기록은 동일 홈과 프로세스별 서버 URL 지정으로 native app-server를 직접 호출한 범위다. 위 명령만으로 모든 대화에서 영구 노출된다고 확인한 것은 아니다.
7. 오류별 확인
- 일반 CLI만 로그인됨: 실제 에이전트와 인증한
CODEX_HOME이 같은지 확인한다. - 승인 후 서버가 대기함: 전체 콜백 주소를 대기 중인 터미널에 입력했는지 확인한다.
- 콜백 거절: 주소 축약, 중복 입력, 대기 만료 여부를 확인한다.
- 인증됐지만 도구가 없음: 현재 app-server의 서버 설정과 런타임을 확인한다. 일회성 URL 지정은 별도 프로세스에 자동 전달되지 않는다.
- 파일 조회 거절: 인증 계정의 파일 접근 권한과 파일 주소를 확인한다.
- OpenClaw 직접 등록 MCP가 미인증: Codex native MCP와 별도 인증 저장소다. 이 글의 인증이 자동 공유되지 않는다.
검증 범위
2026-10-21에 같은 에이전트 홈과 서버 URL 설정으로 도구 45개 조회, 계정 조회, 원래 3개 페이지 목록과 첫 페이지 최상위 노드 조회를 확인했다. 별도 검증 프레임 생성·크기 및 색상 수정 후 새 프로세스에서 재조회했다. 기존 디자인은 변경하지 않았다.
다른 에이전트의 인증, OpenClaw 직접 등록 MCP 복구, hosted Apps 자동 공유, 모든 세션의 영구 도구 노출은 검증 범위에 포함하지 않는다. 도구 수와 편집 기능은 버전·계정·권한에 따라 달라질 수 있다.
댓글 남기기