RealityScan MCP

RealityScan MCP

Enables AI agents to control the RealityScan photogrammetry pipeline (align, mesh, texture, export) either headless or through a visible GUI, and includes a 360° video to perspective frames converter for pre-processing equirectangular and YouTube EAC content.

Category
访问服务器

README

realityscan-mcp

MCP server for RealityScan (formerly RealityCapture) — drive the full photogrammetry pipeline (align → mesh → texture → export) from an AI agent, either headless or by live-driving a visible GUI instance. Includes a 360° video → perspective-frames converter (equirectangular / YouTube EAC).

Claude(또는 다른 MCP 클라이언트)가 RealityScan 포토그래메트리를 자동화한다 — 헤드리스 CLI 배치 또는 보이는 GUI 실시간 제어. 360 영상 전처리 포함.

  • 실행파일 자동탐지: 환경변수 REALITYSCAN_EXE/REALITYSCAN_HOME → C:\Program Files\Epic Games\RealityScan*\RealityScan.exe(최고 버전 우선) → 레거시 RealityCapture. 상위 버전을 설치하면 코드 수정 없이 자동 승격.
  • 개발·검증 환경: RealityScan 2.1.1 (Windows). CLI 는 2.x 공통이라 2.2 등 상위 버전도 그대로 동작(exe 경로만 자동 승격).
  • 라이브 검증: 헤드리스 실행 → 명령 순차 실행 → 출력 캡처 → 정상 종료(exit 0). 실제 영상→텍스처 메시 복원, 360(EAC) 변환, 보이는 GUI 위임 모두 확인.

자동화 모델

RealityScan 은 하나의 헤드리스 프로세스에 CLI 명령을 나열해 순차 실행한다:

RealityScan.exe -headless -stdConsole -load p.rsproj -align -calculateNormalModel -save p.rsproj -quit

이 서버는 명령 토큰 리스트를 받아 -headless / -stdConsole / -silent / -quit 를 자동 부착하고 subprocess 로 실행, stdout/stderr/exit code 를 구조화해 반환한다. 모든 편의 도구는 결국 runner.run() 단일 경로로 귀결되며, execute_cli 가 전체 CLI 를 그대로 노출하는 탈출구다(어떤 명령도 도달 가능).

도구 (13종)

도구 설명
check_connection 설치/탐지 상태·버전·환경변수 스냅샷 (기동 안 함)
execute_cli 전체 CLI 탈출구 — 임의 토큰 시퀀스 실행. instance= 주면 보이는 GUI로 위임
launch_gui 보이는 GUI 상주 인스턴스 실행 (아래 라이브 모드)
get_instance_status GUI 인스턴스 진행 상태 조회
new_project 새 프로젝트 + 이미지(폴더/개별) 추가 + 저장
add_inputs 기존 프로젝트에 이미지 추가
align_images 정렬(카메라 포즈). draft/detect_markers 옵션
build_model 영역 자동설정 + 메시(preview/normal/high) + 선택적 단순화
texture_model UV 언랩 + 텍스처 계산
export_model 모델 내보내기(확장자로 형식 결정: obj/fbx/ply/glb…)
export_report 템플릿 기반 HTML 리포트
convert_360_video 360 등장방형 영상 → 원근 프레임(ffmpeg v360) + XMP 캘리브레이션. RealityScan 투입 전처리
run_pipeline 폴더→정렬→영역→메시→(단순화)→(텍스처)→저장→(내보내기)를 단일 실행으로

360 영상 워크플로

RealityScan 은 등장방형 360 영상을 그대로 못 쓴다(핀홀 왜곡모델 아님). 먼저 convert_360_video 로 원근 뷰(큐브 6면 90° 또는 링)로 재투영한 뒤, 그 폴더를 run_pipeline(또는 new_project+align_images+…)에 먹인다. 각 프레임에 초점거리 XMP 사이드카가 붙어 RealityScan 이 보정된 카메라로 인식한다(언디스토트 불필요). Epic 의 Pano2Views 와 동일한 접근을 로컬 ffmpeg 로 수행. 일반(비360) 영상엔 쓰지 말 것.

convert_360_video(video=eq.mp4, out_dir=persp/, mode=cube, interval=0.5)
run_pipeline(image_folder=persp/, project_path=scan.rsproj, output_model=model.obj)

입력 투영(input_projection): e=등장방형(기본) / eac=YouTube Equi-Angular Cubemap / c3x2·c6x1=큐브맵 / dfisheye=듀얼 피시아이. YouTube 360 은 등장방형이 아니라 EAC 인 경우가 많다(360 인데 화면비가 16:9면 EAC 의심 → 프레임을 떠서 v360=eac:e 로 확인). 그땐 input_projection="eac" 로 변환.

라이브 GUI 모드 (헤드리스 대신 보면서 제어)

헤드리스 배치가 기본이지만, 보이는 GUI 를 띄워두고 실시간 제어할 수 있다 (RealityScan 인스턴스 위임). 문서: "계산 중에도 평소처럼 GUI 로 조작 가능".

launch_gui(instance_name="LIVE1", project_path="C:/…/scan.rsproj")   # 창이 뜸(상주)
execute_cli(commands=["-addFolder","C:/imgs","-align"], instance="LIVE1")  # 그 창에 실시간 위임
get_instance_status(instance_name="LIVE1")                            # 진행 조회
execute_cli(commands=["-quit"], instance="LIVE1", wait=false)         # 닫기(또는 창 수동 종료)

내부적으로 헤드리스 courier 가 -delegateTo LIVE1 … -waitCompleted LIVE1 로 명령을 열린 인스턴스에 전달한다. 사용자는 GUI 에서 진행을 보며 직접 만질 수도 있다.

효율 팁

스텝 사이 프로젝트 재로드는 비용이 크다. 여러 스텝을 한 번에 돌릴 땐 run_pipeline 또는 execute_cli 에 명령을 한꺼번에 넣어 단일 헤드리스 프로세스로 처리하는 게 가장 빠르다.

설치 / 등록

uv venv --python 3.10 .venv
uv pip install --python .\.venv\Scripts\python.exe mcp

convert_360_video 는 외부 ffmpeg(v360 필터 포함)를 사용한다. PATH 에 있거나 환경변수 FFMPEG_EXE 로 지정. (Python 추가 의존성은 없음 — 표준 라이브러리만.)

MCP 클라이언트 설정(~/.claude.json 등)의 mcpServers 에 등록(경로는 설치 위치에 맞게):

"realityscan": {
  "command": "C:\\path\\to\\realityscan-mcp\\.venv\\Scripts\\python.exe",
  "args": ["C:\\path\\to\\realityscan-mcp\\src\\server.py"],
  "env": {}
}

등록/변경 후 클라이언트 재시작 필요.

주의

  • 미인식 명령 = 모달 행(실측): 오타 등 미지원 CLI 명령은 -headless 여도 에러 모달창(unknown command ... [err:7180])을 띄워 프로세스를 멈춘다. 그래서 러너가 스폰 전에 KNOWN_COMMANDS(2.1 전체 명령) 화이트리스트로 검증해 즉시 거부한다(음수 인자 -1 등은 값이므로 통과). 상위 버전의 신규 명령을 쓰려면 execute_cli 에 validate=false.
  • 라이선스: RealityScan 2.x(Epic)는 Epic 계정 로그인 기반 라이선스를 쓴다. 헤드리스는 캐시된 로그인 자격을 사용하므로, GUI 에서 한 번 로그인해 둔 상태여야 재구성 명령이 통과한다(빈 씬 저장 등은 로그인 없이도 동작 확인됨).
  • 무거운 재구성은 오래 걸린다 → 기본 타임아웃 3600초. 필요 시 도구별 timeout 지정.
  • params.xml 를 받는 명령(텍스처/내보내기 등)은 RealityScan 이 export 설정을 XML 로 받는 규약을 따른다. GUI 에서 export 설정을 저장해 그 xml 을 넘기면 된다.

전체 CLI

명령 전체 목록은 RealityScan CLI 문서 참고: https://rshelp.capturingreality.com/en-US/appbasics/allcommands.htm execute_cli 로 문서상의 어떤 명령이든 그대로 실행할 수 있다.

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选