TypeScript로 로컬 MCP 서버 실행 방법 (Node.js 23 기반)

카테고리

프로그래밍/소프트웨어 개발

서브카테고리

웹 개발

대상자

- TypeScript와 Node.js 23을 사용하는 개발자

- 빌드 프로세스 생략을 원하는 개발자

- MCP 프로토콜 구현에 관심 있는 개발자

- 난이도: 중급~고급 (Node.js 환경 설정 및 경로 관리 필요)

핵심 요약

  • Node.js 23.6 이상에서 TypeScript를 직접 실행 가능 (--experimental-strip-types 옵션 사용)
  • 경로는 절대 경로로 명시해야 함 (~, $HOME 등 상대 경로 불가)
  • nvm-exec을 사용해 Node.js 버전을 명시적으로 설정해야 함 (NODE_VERSION=23 환경 변수 필요)

섹션별 세부 요약

1. MCP 서버 실행 환경 구성

  • Node.js 23.6 이상이 필요 (빌드 없이 TypeScript 실행 지원)
  • --experimental-strip-types 플래그 사용 시 경고 메시지 발생 (프로토콜 동작 방해)
  • --disable-warning=ExperimentalWarning으로 경고 메시지 무시

2. `config.json` 설정 예시

  • command 필드에 절대 경로 사용 (/Users/sam/.nvm/nvm-exec)
  • args 필드에 --disable-warning=ExperimentalWarning--experimental-strip-types 포함
  • NODE_VERSION 환경 변수로 Node.js 버전 명시

3. `nvm`을 통한 Node.js 관리

  • nvm install 23으로 Node.js 23 설치
  • nvm-exec 명령어 사용 시 절대 경로 필수
  • NODE_VERSION 환경 변수를 통해 실행 버전을 명시

4. 경고 메시지 무시 방법

  • --disable-warning=ExperimentalWarning 플래그 사용
  • MCP 프로토콜은 stdin/stdout 기반으로 동작하므로 경고 메시지 방해됨

결론

  • --disable-warning=ExperimentalWarning 플래그와 절대 경로를 사용해 MCP 서버를 성공적으로 실행
  • nvm-execNODE_VERSION 환경 변수로 Node.js 버전을 명시적으로 관리
  • 경로 설정 시 ~ 또는 $HOME 대신 절대 경로 사용 필수