시스메틱 데일리코딩 못해도 AI로 자동화 시스템 만드는 법
기술·논문

연결 전엔 모른다, MCP 서버 신뢰 점수

엠시피 트러스트카드, 8개 항목 100점으로 서버를 훑는다

에이전트는 매일 처음 보는 서버에 접속한다. 그 서버가 제대로 설치되는지, 최신 규약을 말하는지, 파일을 지우는 도구를 품고 있는지, 비밀 키를 흘리는지는 대개 사고가 난 뒤에야 알게 된다. 엠시피 트러스트카드(mcp-trustcard)는 이 맹목적인 연결을 명령 한 줄로 바꾸겠다는 오픈소스다. 저자는 스스로를 "MCP 서버판 npm audit"이라고 소개한다.

무슨 일인가 / 배경

모델 컨텍스트 프로토콜(MCP)은 에이전트에 외부 도구를 붙이는 표준으로 빠르게 자리 잡았다. 문제는 속도 차다. 저장소 수는 폭증하는데 보안과 품질을 검증하는 장치는 따라붙지 못했다. 저자는 최근 연구들이 MCP 서버 전반에서 악용 가능한 약점을 광범위하게 찾아냈다고 짚는다. 도구 자체를 오염시키는 방식, 도구 설명문에 지시를 숨겨 넣는 프롬프트 인젝션, 다른 도구를 가리는 섀도잉, 비밀 정보 유출 같은 것들이다. 그런데도 클라이언트는 여전히 눈을 감고 접속한다.

트러스트카드는 이 공백을 공개 순위판으로 메우려 한다. npx mcp-trustcard <패키지명> 한 줄이면 그 서버의 성적표가 터미널에 찍힌다. 저장소는 데이비드니콜스-옵스(davidnichols-ops) 계정에 MIT 라이선스로 공개돼 있다.

핵심 짚어보기

검사는 8개 항목 100점 만점이다. 배점이 곧 저자의 우선순위를 보여준다.

가장 무거운 것은 프로토콜 핸드셰이크로 25점이다. 표준 입출력 위에서 초기화 요청에 제대로 답하는지를 본다. 설치 가능성과 도구 스키마 유효성이 각 15점으로 뒤를 잇는다. 패키지가 실제로 설치되는지, 도구 목록의 스키마가 형식에 맞는지다. 그다음이 각 10점짜리 네 항목이다. 삭제·종료·덮어쓰기 같은 파괴적 도구를 노출하는지, 인증을 요구하는지, 도구 설명이나 오류 메시지에 비밀번호처럼 생긴 문자열이 새는지, 최신 프로토콜 버전을 협상하는지를 본다. 마지막 5점은 지연 시간과 실패율이다.

각 항목은 통과·경고·실패·알 수 없음 네 등급과 부분 점수로 매겨진다. 저장소가 예시로 보여주는 깃허브(GitHub) MCP 서버 카드는 86점이다. 도구 26개의 스키마가 전부 유효하고 파괴적 동사는 없지만 쓰기·실행 도구가 11개 있으며, 프로토콜 버전에서 경고가 떴다. 최신이 2025-06-18인데 2024-11-05로 협상했기 때문이다. 눈여겨볼 대목은 비밀 노출 항목이다. 이 카드에서는 통과가 아니라 '알 수 없음'으로 찍혔다. 한 번 찔러본 것으로는 안 샌다고 단정할 수 없다는 뜻이다.

1인기업 실전 적용 포인트

  • 새 MCP 서버를 붙이기 전에 npx mcp-trustcard <패키지명>을 습관으로 만들어라. 30초짜리 절차 하나가 남의 코드에 내 파일 접근권을 주기 전의 최소한의 실사다.
  • 총점보다 '파괴적 기능'과 '인증' 두 줄을 먼저 봐라. 인증 없이 쓰기·실행 도구를 여는 서버는 에이전트가 한 번 잘못 호출하면 되돌릴 수 없다.
  • 프로토콜 버전 경고는 기능 문제가 아니라 관리 상태의 신호다. 1년 전 버전에 머물러 있다면 그 저장소는 방치됐을 가능성이 높다.
  • '알 수 없음'을 '안전'으로 읽지 마라. 비밀 노출이 알 수 없음이면, 그 서버에는 실제 API 키 대신 권한을 최소로 줄인 테스트 키부터 물려 보는 게 순서다.

전망 / 주의점

이 도구가 만능은 아니다. 저자도 인정하듯 단발성 탐침이라 한 번 돌려서 못 본 문제는 없는 것으로 잡히지 않는다. 무엇보다 도구 설명문에 숨은 프롬프트 인젝션은 스키마가 멀쩡해도 통과하기 때문에 이런 정적 점검으로는 잡히지 않는다. 점수는 결승선이 아니라 출발선이다. 그럼에도 공개 순위판이라는 접근은 현실적이다. 유지보수자가 점수에 항의하면 그것부터가 관심의 증거이고, 점수를 올리는 경쟁이 붙는 순간 생태계 전체의 바닥이 올라간다.

출처: 해커뉴스 (https://github.com/davidnichols-ops/trustcard)
← 전체 기사 보기