MCP-identity: MCP 서버를 위한 요청별 암호화 인증
Ed25519 서명을 사용하여 MCP 서버를 위한 요청별 암호화 인증을 제공합니다. OAuth 2.1의 대체가 아닌 추가적인 보안 계층으로 작동합니다.
베타MCP-identity
MCP-identity는 모델 컨텍스트 프로토콜의 중요한 아키텍처적 맹점을 해결합니다: 세션 인증과 의도 검증 간의 차이입니다. OAuth 2.1은 사용자가 로그인되어 있고 서비스에 접근 권한이 있음을 확인하지만, 특정 사용자가 특정 시점에 데이터베이스 삭제나 금융 거래와 같은 특정 페이로드를 의도적으로 승인했음을 증명할 수 없습니다. 정확한 요청 본문에 대한 서명을 도입함으로써, MCP-identity는 자율 에이전트 작업을 위해 필요한 부인 방지를 제공합니다.
기술적으로 구현은 간결합니다. Python 서버용 ASGI 미들웨어 패턴을 활용하여 요청 범위에 검증 상태를 주입합니다. 보안 모델은 재생 공격을 완화하기 위해 타임스탬프 창 (기본값 30초)과 논스 저장소의 조합에 의존합니다. 후자는 중요한 세부 사항입니다. 프로젝트는 `InMemoryNonceStore`가 분산 환경에 부적절하다는 것을 정확히 인식하고, 로드 밸런싱된 인스턴스 간 일관성을 유지하기 위한 Redis 통합 프로토콜을 제공합니다.
주요 마찰점은 키 관리입니다. v0 상태에서 라이브러리는 사용자가 로컬 JSON 키 파일을 처리할 수 있다고 가정하며, 이는 주류 소비자 UX에는 부적합하지만 현재 대상 고객인 개발자 및 보안 감사자에게는 허용 가능합니다. '허용' 모드는 스마트한 제품 결정으로, 팀이 기존 통합을 깨트리지 않고 인증을 롤아웃한 후 '엄격' 집행으로 전환할 수 있게 합니다.
이 도구는 파괴적이거나 되돌릴 수 없는 작업을 수행하는 MCP 서버를 구축하는 개발자에게 필수적입니다. 서버가 단순히 문서를 읽는 경우 과도한 조치입니다. 서버가 LLM 대신 자금을 이동하거나 운영 상태를 변경하는 경우, 이 암호화 증명 계층은 심각한 감사 추적의 전제 조건입니다.