7 MCP 게이트웨이 버그: 세션 누수, 중단된 SSE, 게이트웨이 모드의 OAuth

해피 패스 데모 이후, 한 Reddit 사용자가 실제 클라이언트와 서버 사이에 MCP 게이트웨이를 배치했을 때 7가지 특정 버그를 겪었습니다. 수정 방법은 프롬프트 엔지니어링이 아니라 명시적인 세션 경계, 도구별 타임아웃, 멱등성, 구조화된 액션 로그, 게이트웨이 수준의 추적, 동시 도구 호출에 대한 테스트였습니다. 그 결과 병렬 도구 소요 시간이 크게 줄었지만, 더 큰 성과는 실패가 어디에 있는지 알게 된 점이었습니다.
실제로 중요했던 7가지 버그
- 클라이언트 간 세션 상태 누출 — 세션 간 공유 상태로 인한 데이터 오염.
- SSE 연결이 조용히 끊김 — 서버 전송 이벤트 연결이 끊어져도 오류가 표시되지 않음.
- 로컬 테스트에서는 잘 작동하던 OAuth 흐름이 게이트웨이 모드에서 실패 — 리디렉션 URI나 토큰 검증이 프록시 뒤에서 실패.
- 탐색 프로브가 오래된 서버 메타데이터 반환 — 캐시된 기능이 서버 업데이트를 반영하지 않음.
- SQLite 쓰기가 병렬 도구 호출을 차단 — 데이터베이스 잠금으로 인해 동시 요청이 직렬화됨.
- 재시도 로직이 도구의 부작용을 중복 실행 — 재시도가 쓰기나 API 호출과 같은 변경 작업을 다시 실행.
- 도구 지연 시간이 모델 호출 대신 게이트웨이 내에 숨겨짐 — 모니터링이 시간을 잘못된 계층에 귀속시킴.
해결책: 더 나은 프롬프트가 아닌 지루한 인프라
작성자가 각 버그에 접근한 방법:
- 명시적인 세션 경계 — 클라이언트별로 분리된 상태, 공유 객체 없음.
- 도구별 타임아웃 정책 — 개별 타임아웃으로 느린 도구가 다른 도구를 지연시키는 것을 방지.
- 가능한 경우 멱등성 — 중복 제거 키나 트랜잭션 동작으로 재시도를 안전하게 만듦.
- 구조화된 액션 로그 — 디버깅을 위한 모든 게이트웨이 액션의 상세하고 파싱 가능한 로그.
- 게이트웨이 수준 추적 — 계층 간 지연 시간을 정확하게 할당하기 위한 분산 추적.
- 동시 도구 호출에 대한 테스트 — 경합 조건을 발견하기 위해 병렬 요청을 발사하는 통합 테스트.
이것들은 프로덕션에서 MCP 게이트웨이를 운영하는 모든 사람을 위한 구체적이고 실용적인 패턴입니다. 게시물의 핵심 통찰력: 어려운 문제는 상태 격리, 조용한 실패, 그리고 관찰 가능성이며, 모델 프롬프트가 아닙니다.
📖 전체 출처 읽기: r/ClaudeAI
👀 See Also

레딧 사용자가 클로드 코드 프롬프팅의 흔한 실수와 해결책을 공유합니다
Node.js 백엔드 작업에 Claude를 사용하는 개발자가 수개월간 사용한 후, 검증 요구사항 누락과 Claude를 일회성 도구로 취급하는 것 등을 포함한 10가지 일반적인 프롬프팅 실수를 확인했습니다. 그들은 각 문제에 대한 해결책을 담은 시각적 가이드를 만들었습니다.

부정 프롬프팅은 약하다: 대신, 원하는 행동을 명확히 기술하라
Reddit 분석에 따르면 클로드에게 "말을 줄여" 또는 "도덕적으로 말하지 마"라고 말하는 것은 거의 효과가 없습니다. 대신 "1-2문장으로 답해" 또는 "직접 답변하고, 주의사항은 선택사항으로 처리해"와 같은 긍정적인 지시를 사용하세요. 또한 "고마워!"로 끝맺으면 톤이 부드러워집니다.

Claude AI의 컨텍스트 불안감을 줄이기 위한 CLAUDE.md 최적화
레딧 토론에서 CLAUDE.md 효과를 높이는 실용적인 전략을 소개합니다. 파일을 200줄 이하로 유지하고, 구체적이고 검증 가능한 지침을 사용하며, Claude의 자동 메모리 기능을 활용하여 토큰 낭비를 유발하는 수정 루프를 방지하는 방법을 다룹니다.

클로드 에이전트, Tenor GIF를 이용해 디스코드로 밈 전송 — 전체 프로토콜
Claude 코드 에이전트 설정은 모든 Discord 전송 메시지에 상황에 맞는 이모지 반응, 한 문장 상태 메시지, 그리고 검증된 Tenor GIF URL을 추가하며, 끊긴 링크를 방지하기 위해 명시적인 웹 검색 및 가져오기 단계를 포함합니다.