Skip to content

Add HTTP transport mode support for MCP server#27

Merged
Seungwoo321 merged 2 commits intodevelopfrom
feature/mcp-server-streamable-http
Mar 15, 2026
Merged

Add HTTP transport mode support for MCP server#27
Seungwoo321 merged 2 commits intodevelopfrom
feature/mcp-server-streamable-http

Conversation

@Seungwoo321
Copy link
Copy Markdown
Contributor

Summary

  • MCP 서버에 Streamable HTTP 전송 모드 추가
  • 기존 stdio 모드와 함께 --http 플래그로 HTTP 모드 지원
  • 세션 관리 및 헬스 체크 엔드포인트 포함

Changes

  • @modelcontextprotocol/sdk/server/streamableHttp.js를 통한 HTTP 전송 계층 구현
  • --http CLI 플래그 또는 WIREWEAVE_TRANSPORT=http 환경 변수로 전송 모드 선택
  • 포트 3305 (기본값), 호스트 127.0.0.1 (기본값)에서 HTTP 서버 실행
  • /mcp 엔드포인트에서 MCP 프로토콜 처리 (세션 생성/재사용/종료)
  • /health 엔드포인트 추가 (활성 세션 수, 도구 개수 등 상태 정보)
  • 세션별 Server 인스턴스 관리 (최대 10개 동시 세션 제한)
  • start:http npm 스크립트 추가
  • GitHub Actions에서 pnpm 버전 10.11.0로 업데이트
  • [skip ci] 커밋 메시지 감지 시 배포 스킵
  • pnpm install --frozen-lockfile 적용

Test Plan

  • stdio 모드 동작 확인 (pnpm start)
  • HTTP 모드 동작 확인 (pnpm start:http)
  • HTTP 헬스 체크 엔드포인트 접근 (/health)
  • 다중 세션 생성/종료 테스트
  • 세션 제한(10개) 초과 시 503 응답 확인
  • 환경 변수 설정 테스트 (WIREWEAVE_MCP_PORT, WIREWEAVE_MCP_HOST, WIREWEAVE_TRANSPORT)
  • CI/CD 파이프라인에서 [skip ci] 동작 확인

pnpm 버전을 10.11.0으로 고정하고 frozen-lockfile 옵션을 추가했습니다. main 브랜치 배포 시 [skip ci] 커밋 메시지가 있으면 배포를 건너뛰도록 조건을 추가했습니다.
MCP 서버에 HTTP 전송 모드를 추가했습니다. --http 플래그로 실행 시 streamable HTTP를 통해 MCP 프로토콜을 제공합니다. stdio 모드는 기본값으로 유지됩니다.
@Seungwoo321 Seungwoo321 merged commit 3f1c101 into develop Mar 15, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant