블로그로 돌아가기

Epic Games는 Model Context Protocol (MCP)을 UEFN에 도입할 것인가? AI 지원 Verse Scripting의 기술적 배경

게시일 2026년 6월 29일
Epic Games는 Model Context Protocol (MCP)을 UEFN에 도입할 것인가? AI 지원 Verse Scripting의 기술적 배경

핵심 요약

이 글은 Unreal Engine 5.8에 도입된 실험적 Model Context Protocol (MCP) 플러그인이 UEFN 및 Verse 개발 환경의 로컬 컨텍스트 부재 문제를 해결하는 방법을 다룹니다. MCP는 AI 어시스턴트가 프로젝트 파일, 에디터 로그, Scene Graph 계층 구조를 안전하게 참조할 수 있도록 지원하여 개발 효율성을 극대화합니다. 또한, 로컬 개발 환경과 라이브 Backend 서비스를 연결하기 위한 대안으로 [horizOn](https://horizon.pm)과 같은 전용 Backend-as-a-Service 플랫폼의 역할과 MCP 연동의 이점을 소개합니다.

모든 UEFN 크리에이터는 UEFN 로그에서 Verse 컴파일 에러를 복사하여 외부 LLM 창에 붙여넣고, AI가 hallucination을 일으키지 않기를 바라며 Scene Graph 계층 구조에 대한 컨텍스트를 수동으로 포맷팅하는 지루한 루프를 잘 알고 있을 것입니다. 공개용 AI 모델은 오래되었거나 일반화된 Unreal Engine 데이터로 학습되었기 때문에, 로컬 프로젝트 구조나 사용 중인 Verse API의 정확한 버전, 또는 에디터에 설정된 디바이스 구성을 전혀 인지하지 못합니다. 이러한 로컬 컨텍스트의 부재로 인해 개발자는 에디터와 AI 어시스턴트 사이에서 수동으로 데이터를 전달하는 파이프라인 역할을 해야만 하며, 이는 이터레이션 속도를 떨어뜨립니다. 만약 Unreal Engine 네트워크 드라이버로 인한 UEFN 세션 실행 시간 초과 문제를 진단하느라 몇 시간을 허비해 본 개발자라면, 환경을 직접 검사할 수 있는 어시스턴트 없이 로컬 로그 상태를 디버깅하는 것이 얼마나 고통스러운 일인지 잘 알고 있을 것입니다.

UEFN 개발에서의 로컬 컨텍스트 갭

전통적인 소프트웨어 개발에서 개발자들은 전체 codebase, 의존성, 환경 변수를 인덱싱하는 IDE 플러그인을 사용합니다. 최신 AI 코딩 어시스턴트는 로컬 파일을 참조하고, 프로젝트 구조를 읽으며, 테스트를 실행할 수도 있습니다. 하지만 Unreal Editor for Fortnite (UEFN)는 폐쇄적이고 sandboxed된 에코시스템 내에서 동작합니다. 크리에이터는 UEFN이 노출하는 영역, 즉 Verse 파일, 독자적인 디바이스 구성(.utps 파일), 그리고 Unreal 에디터의 시각적 인터페이스 등으로 제한됩니다.

이러한 고립은 심각한 "컨텍스트 갭(context gap)"을 발생시킵니다. 일반적인 AI 어시스턴트에게 커스텀 Verse 디바이스를 작성하도록 요청할 때, AI는 다음과 같은 정보를 전혀 알 수 없습니다.

  • 프로젝트의 Content 디렉터리에 어떤 에셋이 등록되어 있는지
  • 레벨 내 크리에이티브 디바이스에 바인딩된 정확한 프로퍼티와 이벤트
  • 지난 빌드 중 Verse 컴파일러가 생성한 컴파일 에러
  • 커스텀 Verse 코드와 시각적 Scene Graph 계층 구조 간의 관계

결과적으로 AI 도구는 정확한 답변을 제공하는 데 어려움을 겪습니다. Verse에서 사용할 수 없는 C++ 함수를 제안하거나, 더 이상 사용되지 않는(deprecated) API 시그니처를 참조하거나, 컴파일되지 않는 로직을 생성하는 일이 빈번합니다. 개발자는 복사, 붙여넣기, 수정, 반복 작업을 직접 수행해야 하며, 이는 생산성을 저하시키고 찾기 어려운 버그를 유발합니다.

Model Context Protocol (MCP)이란 무엇인가?

Model Context Protocol (MCP)은 바로 이 문제를 해결하기 위해 설계된 오픈 표준입니다. AI 모델과 로컬 리소스 간의 안전하고 표준화된 인터페이스를 구축하기 위해 개발된 MCP는 LLM과 개발 도구 사이의 API 게이트웨이 역할을 합니다. 수동 복사에 의존하는 대신, MCP를 통해 AI 어시스턴트가 로컬 환경에서 실행 중인 로컬 서버에 안전하게 연결할 수 있습니다.

┌─────────────────┐       JSON-RPC        ┌────────────────┐
│   AI Client     │ <───────────────────> │   MCP Server   │
│ (Claude, IDE)   │                       │ (Unreal/UEFN)  │
└─────────────────┘                       └────────┬───────┘
                                                   │ Exposes
                                                   ▼
                                          ┌────────────────┐
                                          │  Local Files   │
                                          │  Editor Logs   │
                                          │  Scene Graph   │
                                          └────────────────┘

이 프로토콜은 간단한 Client-Server 아키텍처로 동작합니다.

  1. The Host/Client: 개발자 상호작용을 오케스트레이션하는 AI 애플리케이션(데스크톱 어시스턴트나 IDE 익스텐션 등).
  2. The Server: 개발자의 로컬 머신에서 실행되며 도구, 리소스, 프롬프트를 노출하는 로컬 프로세스.
  3. The Transport Layer: JSON-RPC 메시지를 사용하여 Server-Sent Events (SSE) 또는 Standard Input/Output (stdio)와 같은 표준 프로토콜을 통해 통신이 이루어집니다.

다음은 AI 클라이언트가 로컬 Verse 파일 컨텍스트를 검색하기 위해 로컬 MCP 서버에 쿼리하는 방법을 나타낸 단순화된 JSON-RPC 페이로드입니다.

{
  "jsonrpc": "2.0",
  "method": "resources/read",
  "params": {
    "uri": "file:///C:/Users/Developer/Documents/FortniteProjects/MyIsland/Plugins/MyIsland/Content/game_manager.verse"
  },
  "id": 1
}

로컬 MCP 서버는 Verse 파일의 실제 콘텐츠로 응답하며, 이를 통해 LLM은 복사-붙여넣기 작업 없이 스크립트의 정확한 구조를 검사할 수 있습니다.

Unreal Engine 5.8의 실험적 MCP 플러그인

Unreal Engine 5.8 출시와 함께, Epic Games는 실험적인 MCP 플러그인을 도입했습니다. 이 플러그인은 Unreal 에디터가 내부 MCP 서버를 호스팅할 수 있도록 하여 엔진의 핵심 서브시스템을 외부 AI 도구에 노출합니다. 에디터의 C++ 및 Python API를 Model Context Protocol에 연결함으로써, Epic은 차세대 AI 지원 게임 개발 워크플로우를 위한 토대를 마련했습니다.

UE 5.8의 실험적 MCP 서버는 다음과 같은 몇 가지 핵심 기능을 제공합니다.

  • Asset Registry Querying: AI 어시스턴트가 프로젝트의 에셋을 검색하고, 사용되지 않는 텍스처를 식별하며, 메시 LOD 설정을 확인하고, 머티리얼 인스턴스를 검사할 수 있습니다.
  • Log Querying: 어시스턴트가 출력 로그를 읽고, blueprint 컴파일 에러를 캡처하며, 런타임 경고를 추적할 수 있습니다.
  • Python 실행: Unreal Engine에는 Python 스크립팅 인터페이스가 포함되어 있으므로, MCP 서버는 스타일 가이드에 맞게 에셋 이름을 변경하거나 레벨에 액터를 배치하는 등의 자동화된 에디터 작업을 실행할 수 있습니다.
  • Blueprint Inspection: 서버를 통해 모델이 blueprint 노드와 연결 상태를 검사할 수 있으므로, 개발자가 비주얼 스크립팅 설정을 스크린샷으로 캡처해야 하는 번거로움을 줄여줍니다.

이러한 통합은 Unreal Engine 개발자들에게 거대한 도약을 의미하지만, UEFN 크리에이터들에게는 다음과 같은 의문을 남깁니다. 이 기술은 언제쯤 Fortnite Creative에 도입될까요?

UEFN과 Verse가 MCP 지원을 절실히 필요로 하는 이유

UEFN에 MCP 지원을 가져오는 것은 단순한 편의성 향상이 아닌 기술적 필연성입니다. C++ 플러그인, 커스텀 에디터 유틸리티, Python 스크립팅을 지원하는 표준 Unreal Engine 프로젝트와 달리, UEFN은 크리에이터의 환경을 엄격하게 제한합니다. 이 때문에 크리에이터가 자체적으로 커스텀 MCP 서버를 작성하여 이 공백을 메우는 것은 불가능합니다. Epic Games가 이 지원을 네이티브로 구현해야만 합니다.

Epic Games가 UE 5.8 MCP 플러그인을 UEFN에 통합한다면, 그 이점은 Verse 스크립팅, 디바이스 설정, 씬 구성을 완전히 혁신할 것입니다.

1. 완전히 컨텍스트를 인식하는 Verse Scripting

코드 hallucination을 일으키는 대신, MCP로 연결된 어시스턴트는 로컬 .verse 소스 파일과 로컬 API 정의를 직접 읽게 됩니다. 어떤 모듈이 임포트되었는지, 어떤 클래스가 정의되었는지, 어떤 메서드를 사용할 수 있는지 정확히 파악할 수 있습니다.

커스텀 telemetry 매니저와 같은 복잡한 Verse 로직을 작성할 때, AI는 모든 메서드 시그니처가 유효한지 확인할 수 있습니다. 예를 들어, 개발자들은 커스텀 telemetry 시스템을 빌드할 때 Verse 내 32자 analytics 디바이스 이벤트 이름 제한과 같은 하드웨어적 한계에 부딪히곤 합니다. 로컬 MCP 서버가 있다면 AI 어시스턴트가 이벤트 이름을 검사하여 32자를 초과하지 않는지 확인하고, 프로덕션 환경에서 silent telemetry drop이 발생하지 않도록 코드를 자동으로 리팩토링할 수 있습니다.

다음은 telemetry를 관리하고 크리에이티브 디바이스와 상호작용하는 구문론적으로 올바르고 컨텍스트를 인식하는 Verse 스크립트의 예시입니다. MCP 서버는 이 파일을 읽고 커스텀 클래스 시그니처를 즉시 이해할 것입니다.

using { /Fortnite.com/Devices }
using { /Fortnite.com/Characters }
using { /Verse.org/Simulation }
using { /UnrealEngine.com/Temporary/Diagnostics }

# Custom telemetry manager that coordinates player state updates
telemetry_coordinator_device := class(creative_device):

    @editable
    ItemGranter : item_granter_device = item_granter_device{}

    @editable
    LogVerbosity : string = "Verbose"

    # Internal map tracking active player scores
    var PlayerScoreMap : [player]int = map{}

    # Initialize listeners on game start
    OnBegin<override>()<suspends> : void =
        GetPlayspace().PlayerAddedEvent().Subscribe(OnPlayerAdded)
        GetPlayspace().PlayerRemovedEvent().Subscribe(OnPlayerRemoved)
        Print("Telemetry Coordinator Device Started.")

    # Executed when a player joins the match
    OnPlayerAdded(Player : player) : void =
        if (not PlayerScoreMap[Player]):
            if (set PlayerScoreMap[Player] = 0):
                Print("Tracking initialized for player.")

    # Executed when a player exits the session
    OnPlayerRemoved(Player : player) : void =
        if (Score := PlayerScoreMap[Player]):
            Print("Player disconnected. Final recorded score: {Score}")
            # Dispatch event to backend metrics aggregator
            DispatchTelemetryPayload(Player, Score)

    # Internal function to handle data dispatching
    DispatchTelemetryPayload(Player : player, Score : int) : void =
        # An MCP assistant can check that the payload conforms to the backend API schema
        Print("Dispatching telemetry payload for score: {Score}")

2. Scene Graph 및 크리에이티브 디바이스 정렬

UEFN의 새로운 Scene Graph 아키텍처는 엔티티와 컴포넌트를 사용하여 게임을 정의합니다. 에디터에서 이러한 구성을 시각적으로 관리하면서 이를 참조하는 Verse 스크립트를 작성하는 것은 동기화 문제를 유발합니다.

MCP 서버는 Scene Graph 계층 구조를 AI 클라이언트에 노출합니다. 모델은 엔티티 구성을 읽고, 바인딩되지 않은 event listener를 식별하며, 디바이스에 중요한 참조가 누락되었는지 확인하고(예: @editable 프로퍼티에서 item_granter_device 참조 누락), 불일치를 수정할 수 있습니다.

3. 자동화된 에러 진단

Verse 컴파일이 실패하면 UEFN은 출력 콘솔에 상세한 에러 로그를 생성합니다. MCP 클라이언트는 이러한 에러 로그를 자동으로 캡처하여 활성 .verse 파일과 연관 짓고, 개발자가 창을 전환하거나 stack trace를 수동으로 읽을 필요 없이 IDE 내부에서 직접 수정된 코드를 제시할 수 있습니다.

Backend의 과제: 로컬 에디터와 라이브 서비스의 연결

UEFN 내부의 MCP 지원이 로컬 에디터의 컨텍스트 갭을 해결하더라도, 게임 개발자들은 더 큰 장애물에 직면해 있습니다. 바로 로컬 개발 환경을 라이브 게임 Backend와 연결하는 것입니다. 현대 Fortnite Creative 게임에서 persistence는 핵심입니다. persistent RPG, 타이쿤 게임, 또는 Matchmaking 슈팅 게임을 구축하려면 플레이어 진행 상황을 저장하고, 동적 인벤토리를 관리하며, 가상 경제를 추적해야 합니다.

수동으로 이러한 시스템을 구축하고 유지 관리하려면 엄청난 양의 인프라 작업이 필요합니다.

  1. API Integration: 외부 database와 연동하기 위해 Verse에서 커스텀 HTTP request handler 작성.
  2. Local Mocking: 배포 전 Backend 연동을 테스트하기 위해 로컬 mock server 구축 및 실행.
  3. Database Maintenance: database schema 설계, 플레이어 데이터 serialization 처리, 트래픽 급증 시의 서버 스케일링 설정.
  4. Security and Validation: 인증 구현, 클라이언트 요청에 의한 database 임의 변경 방지, SSL 인증서 설정.

이러한 Backend 인프라를 수동으로 설정하는 것(Load Balancer, database sharding, API endpoint, 실시간 상태 동기화 처리 등)은 쉽게 4~6주의 전담 엔지니어링 리소스를 소모합니다. 1인 크리에이터나 인디 팀에게는 게임 플레이 디자인, 레벨 빌딩, 마케팅에 쏟아야 할 귀중한 시간을 빼앗기는 셈입니다.

바로 이 부분에서 horizOn이 원활하고 즉시 사용 가능한 대안을 제공합니다. 전용 게임 Backend-as-a-Service로서 이 플랫폼은 데이터베이스 관리, 플레이어 프로필, telemetry를 기본적으로(out-of-the-box) 지원합니다. 게임 로직에 연결할 수 있도록 사전에 구성된 Backend endpoint를 제공하므로, Backend 서버 코드를 단 한 줄도 작성하지 않고도 전체 database 상태를 관리할 수 있습니다.

나아가 horizOn은 MCP의 강점을 적극 수용합니다. 게임 database 관리를 위한 커스텀 MCP 서버를 제공함으로써, horizOn은 AI 어시스턴트가 라이브 database schema를 검사하고, 쿼리를 실행하며, 에디터에서 직접 테이블을 최적화할 수 있도록 지원합니다. 즉, AI 에이전트가 로컬 Verse frontend 코드와 라이브 Backend database 모두에 대한 완전한 가시성을 갖게 되므로, 생성된 모든 코드가 실제 데이터 구조와 완벽하게 일치하게 됩니다.

오늘날 UEFN 크리에이터를 위한 실천적 모범 사례

Epic Games가 UEFN용 네이티브 MCP 지원을 출시하기 전까지 개발자는 워크플로우를 수동으로 최적화할 방법을 찾아야 합니다. 컨텍스트 갭을 좁히고 Verse 개발을 간소화하기 위해 현재 적용할 수 있는 네 가지 실천적 모범 사례를 소개합니다.

1. 전용 LLM 컨텍스트 파일 유지 관리하기

외부 AI 도구는 UEFN 디렉터리를 스캔할 수 없으므로 프로젝트 루트에 단일 텍스트 파일(예: workspace_context.prompt)을 유지 관리해야 합니다. 이 파일을 통해 다음 사항을 기록하고 추적하세요.

  • 사용 중인 정확한 Verse API 버전
  • 메인 레벨에 활성화된 모든 크리에이티브 디바이스 목록
  • 커스텀 Verse 클래스의 구조 및 타입 시그니처
  • 활성 @editable 연결 요약

AI 어시스턴트와 대화를 시작할 때 이 파일을 가장 먼저 붙여넣으세요. 이는 수동적인 정적 MCP 리소스 역할을 하여 모델이 API를 오인하여 hallucination을 생성하지 않도록 필요한 정확한 컨텍스트를 제공합니다.

2. Verse 컴파일 로그 간소화하기

컴파일러 에러를 단순히 복사하는 대신, UEFN Verse 컴파일러 출력 로그를 감시하는 로컬 스크립트를 작성할 수 있습니다. 터미널 명령을 사용하여 로그 파일을 파싱하고 관련 에러와 줄 번호만 추출할 수 있습니다. 이렇게 하면 불필요한 경고문이 가득한 로그 대신 깔끔하게 압축된 로그 스니펫만 쉽게 복사할 수 있습니다.

3. 엄격한 이벤트 및 디바이스 네이밍 규칙 적용하기

동기화 문제 및 디바이스 참조 깨짐을 방지하기 위해 디바이스와 Verse 코드에 대한 엄격한 네이밍 규칙을 수립하세요. 예를 들어, 에디터에서 디바이스 이름이 VendingMachine_01인 경우 이에 해당하는 Verse 변수명은 VendingMachine01이어야 합니다. 이러한 시각적 일관성은 바인딩을 빠르게 확인하도록 도우며, AI 모델과의 수동 컨텍스트 공유를 더 용이하게 만듭니다. 또한 telemetry 누락을 방지하려면 이벤트 이름을 32자 제한 미만으로 유지해야 합니다.

4. 로컬 Mock HTTP 서버 빌드하기

Backend 시스템을 개발할 때 초기 프로토타이핑 단계에서는 라이브 database를 대상으로 직접 테스트하지 마세요. Node.js나 Python을 사용하여 백엔드 응답을 시뮬레이션하는 간단한 로컬 mock server를 설정하십시오. 이를 통해 네트워크 레이턴시가 발생하거나 라이브 데이터가 손상될 위험 없이 로컬에서 Verse HTTP 요청을 테스트하고, mock 쿼리를 실행하며, JSON 파싱을 검증할 수 있습니다.

전망: AI 지원 게임 제작의 미래

Unreal Engine 5.8에서의 Model Context Protocol 지원 도입은 게임 개발 워크플로우 현대화를 향한 큰 진전입니다. AI 모델이 에디터의 컨텍스트를 이해하도록 지원함으로써, Epic Games는 AI가 단순한 텍스트 생성기가 아닌 협업 도구로 어떻게 통합될 수 있는지 업계에 보여주고 있습니다.

UEFN 크리에이터에게 네이티브 MCP 지원은 Verse 스크립팅 장벽을 낮추고 디바이스 라우팅을 간소화하며 디버깅 속도를 높여줄 것입니다. Epic이 이 플러그인을 포트나이트 에코시스템에 가져오기 전까지, 개발자들은 구조화된 컨텍스트 파일, 자동화된 로깅, 외부 Backend 플랫폼을 활용하여 공백을 메울 수 있습니다.

Multiplayer Backend를 확장할 준비가 되셨나요? horizOn을 무료로 체험해 보거나 API 문서를 확인하여 현대 게임 개발자를 위한 데이터베이스 관리 및 telemetry 효율화 방법을 알아보세요.


출처: Bring Unreal Engine 5.8 MCP Support to UEFN

이 대시보드는 다음에 의해 애정을 담아 만들어졌습니다 Projectmakers

© 2026 projectmakers.de

unknown-v1.98.1 / unknown-v--