Skip to main content
Glama
lanymo

Escape Room MCP Server

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

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/lanymo/mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server