MCP 인스펙터

MCP 인스펙터(MCP Inspector) 는 MCP 서버를 테스트하고 디버깅하기 위한 대화형 개발자 도구입니다. 디버깅 가이드에서 전체 디버깅 툴킷의 일부로 인스펙터를 다루지만, 이 문서에서는 인스펙터의 기능과 활용 방법을 더 자세히 설명합니다.

시작하기

설치 및 기본 사용법

인스펙터는 별도 설치 없이 npx로 바로 실행할 수 있습니다:

npx @modelcontextprotocol/inspector <command>
npx @modelcontextprotocol/inspector <command> <arg1> <arg2>

NPM 또는 PyPI 서버 검사

가장 흔한 방식은 NPM 또는 PyPI에서 서버 패키지를 실행해 인스펙터로 붙이는 것입니다.

```bash npx -y @modelcontextprotocol/inspector npx # For example npx -y @modelcontextprotocol/inspector npx server-postgres postgres://127.0.0.1/testdb ``` ```bash npx @modelcontextprotocol/inspector uvx # For example npx @modelcontextprotocol/inspector uvx mcp-server-git --repository ~/code/mcp/servers.git ```

로컬에서 개발한 서버 검사

로컬에서 개발했거나 저장소로 내려받은 서버를 검사할 때는 보통 아래 방식이 가장 많이 사용됩니다:

```bash npx @modelcontextprotocol/inspector node path/to/server/index.js args... ``` ```bash npx @modelcontextprotocol/inspector \ uv \ --directory path/to/server \ run \ package-name \ args... ```

정확한 실행 방법은 해당 서버 저장소/패키지에 포함된 README를 반드시 확인하세요.

기능 개요

인스펙터는 MCP 서버와 상호작용하기 위한 다양한 기능을 제공합니다:

서버 연결 패널

  • 서버에 연결할 때 사용할 전송(transport)을 선택할 수 있습니다.
  • 로컬 서버의 경우, 커맨드라인 인자와 환경 변수를 커스터마이징할 수 있습니다.

리소스(Resources) 탭

  • 사용 가능한 모든 리소스를 나열합니다.
  • 리소스 메타데이터(MIME 타입, 설명)를 표시합니다.
  • 리소스 콘텐츠를 검사할 수 있습니다.
  • 구독(subscription) 동작을 테스트할 수 있습니다.

프롬프트(Prompts) 탭

  • 사용 가능한 프롬프트 템플릿을 표시합니다.
  • 프롬프트 인자와 설명을 보여줍니다.
  • 사용자 정의 인자로 프롬프트를 테스트할 수 있습니다.
  • 생성되는 메시지를 미리 볼 수 있습니다.

도구(Tools) 탭

  • 사용 가능한 도구 목록을 표시합니다.
  • 도구 스키마와 설명을 보여줍니다.
  • 사용자 정의 입력으로 도구를 테스트할 수 있습니다.
  • 도구 실행 결과를 표시합니다.

알림(Notifications) 패널

  • 서버에서 기록된 모든 로그를 표시합니다.
  • 서버에서 수신한 알림을 보여줍니다.

모범 사례

개발 워크플로

  1. 개발 시작

    • 서버와 함께 인스펙터 실행
    • 기본 연결성 확인
    • 기능(capability) 협상 확인
  2. 반복 테스트

    • 서버 변경 사항 적용
    • 서버 재빌드
    • 인스펙터 재연결
    • 영향 받은 기능 테스트
    • 메시지 모니터링
  3. 엣지 케이스 테스트

    • 잘못된 입력
    • 누락된 프롬프트 인자
    • 동시 작업
    • 오류 처리 및 오류 응답 검증

다음 단계

MCP 인스펙터 소스 코드를 확인하세요.
<Card
    title="디버깅 가이드"
    icon="bug"
    href="/docs/tools/debugging"
>
    더 넓은 범위의 디버깅 전략을 살펴보세요.
</Card>