방탈출 MCP
사실 재밌는 생각이 나서 맨땅에 해딩으로 만들어 본 프로젝트입니다! json 연동도 잘 되고 다 되는데! 무료 버전이라 그런 건지, render로 하면 안 되는 건지 play mcp에서 MCP endpoint 인식을 잘 못 하더라구요...
아쉬운 마음에 그냥 정리!
MCP 개요
MCP 이름: 퇴마 방탈출 MCP
MCP 설명: 한국형 퇴마 세계관의 간단한 텍스트 기반 방탈출 시나리오 엔진
주요 액션 예시: '주위를 살펴본다', '부적을 조사한다', '발자국을 옮긴다'
엔드포인트 (배포 예시: Render)
베이스 URL:
https://mcp-server-cokt.onrender.comGET/POST /tools/getCurrentStatus현재 장면과 가능 액션 조회POST /tools/processAction액션/선택지 처리GET/POST /tools/getPlayerStatus플레이어 상태 조회
로컬 실행
Render 배포 메모
Build:
pip install -r requirements.txtStart:
python mcp_server.pyPORT: Render가
PORT환경변수를 전달하므로 코드에서os.environ.get("PORT", 5000)을 사용무료 플랜 특성: 15분 유휴 시 슬립 → 첫 호출 5~10초 지연 가능
Play MCP 연동 시 주의사항
MCP Endpoint에는 베이스 도메인만 입력:
https://mcp-server-cokt.onrender.comPlay MCP가 상태 조회를 POST로 호출하기도 해서
getCurrentStatus/getPlayerStatus모두 GET/POST 허용초기 호출이 타임아웃되면 몇 초 기다렸다가 재시도 (슬립 해제 시간)
간단한 동작 확인 (curl)
파일 설명
mcp_server.pyFlask 기반 MCP 서버mcp.jsonPlay MCP용 매니페스트 및 시나리오 정의ProcfileRender 실행 명령requirements.txt의존성 목록MCP 게임 만들기.txt기본적인 스토리 정리, 행동 정리 (프로토)
남은 이슈
Play MCP에서 간헐적으로 엔드포인트 인식 실패 → 무료 플랜 슬립 또는 호출 메서드 차이로 추정. 재시도 시 대부분 성공.