Skip to main content
Glama
la1av1a

hospital-fee-mcp

by la1av1a

병원 비급여 진료비 조회 MCP 서버

건강보험심사평가원의 비급여 진료비 정보를 조회할 수 있는 MCP(Model Context Protocol) 서버입니다.

주요 기능

  • 🏥 병원 검색: 병원명으로 병원 검색

  • 💰 비급여 항목 검색: 지역별, 항목별 비급여 진료비 검색

  • 📍 지역 필터링: 시/도, 시/군/구 단위 필터링 지원

  • 캐싱: 동일 요청에 대한 빠른 응답 (5분 TTL)

  • 🔒 CSRF 토큰 관리: 자동 토큰 갱신

  • 🏗️ 멀티모듈 구조: 클린 아키텍처 기반 설계

Related MCP server: visitkorea-medicaltourism

설치

필요 사항

  • Python 3.10 이상

  • Claude Desktop 또는 MCP 호환 클라이언트

설정

  1. 저장소 클론:

git clone https://github.com/yourusername/hospital-fee-mcp.git
cd hospital-fee-mcp
  1. 가상환경 생성 및 활성화:

python -m venv venv
source venv/bin/activate  # Windows: venv\Scripts\activate
  1. 의존성 설치:

pip install -r requirements.txt
  1. Claude Desktop 설정 (~/Library/Application Support/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "hospital-fee": {
      "command": "/path/to/hospital-fee-mcp/venv/bin/python",
      "args": ["/path/to/hospital-fee-mcp/hospital_fee_mcp.py"]
    }
  }
}
  1. Claude Desktop 재시작

사용 예시

항목별 검색

부산 해운대구에서 라섹이 제일 싼 곳은 어디야?
서울 강남구 라섹 가격 알려줘
광명시 독감 예방접종 가격

병원별 검색

서울연세안과 라섹 가격

제공 도구

search_item_by_name

항목명과 지역으로 비급여 진료비 검색

파라미터:

  • item_name (필수): 검색할 항목명 (예: 라섹, 크라운, 독감)

  • sido_name (선택): 시/도 (예: 서울, 부산, 경기)

  • sggu_name (선택): 시/군/구 (예: 강남구, 부산해운대구)

  • emdong_name (선택): 읍/면/동

  • hospital_type (선택): 병원 유형

search_hospital

병원명으로 병원 검색

파라미터:

  • hospital_name (필수): 병원명

get_hospital_fee

특정 병원의 비급여 진료비 상세 조회

파라미터:

  • hospital_name (필수): 병원명

  • hospital_index (필수): 검색 결과 인덱스

프로젝트 구조

hospital-fee-mcp/
├── apps/
│   └── mcp_server/          # MCP 서버 구현
│       ├── main.py          # 진입점
│       └── server.py        # FastMCP 서버
├── core/
│   └── hospital_fee/        # 비즈니스 로직
│       ├── services.py      # 서비스 계층
│       ├── region_codes.py  # 지역 코드 관리
│       └── constants.py     # 상수 정의
├── infra/
│   ├── hira_client/         # 건강보험심사평가원 API 클라이언트
│   │   ├── hira_api.py     # API 호출
│   │   ├── csrf.py         # CSRF 토큰 관리
│   │   └── settings.py     # API 설정
│   └── cache/               # 캐싱
│       └── memory_cache.py # 메모리 캐시 구현
├── common/
│   ├── logging_config.py   # 로깅 설정
│   └── settings.py         # 공통 설정
├── data/
│   └── region_codes.json   # 지역 코드 데이터
└── hospital_fee_mcp.py     # MCP 서버 진입점

기술 스택

  • FastMCP: MCP 서버 프레임워크

  • HTTPX: 비동기 HTTP 클라이언트

  • Playwright: CSRF 토큰 획득용 브라우저 자동화

  • asyncio: 비동기 프로그래밍

주요 기술 특징

지역 코드 자동 추출

  • API의 sidoCdsgguCd의 앞 2자리를 사용

  • 예: sgguCd=230005 (대구수성구) → sidoCd=23

메모리 캐싱

  • TTL 기반 캐싱 (기본 5분)

  • 동일 요청에 대한 빠른 응답

CSRF 토큰 관리

  • Playwright를 통한 자동 토큰 획득

  • 토큰 만료 시 자동 갱신

데이터 출처

이 서버는 건강보험심사평가원의 공개 데이터를 활용합니다.

면책 조항

⚠️ 중요: 이 서버가 제공하는 비급여 진료비 정보는 참고용입니다.

  • 비급여 항목의 경우 추가비용 등으로 실제 가격과 상이할 수 있습니다.

  • 정확한 가격은 해당 의료기관에 직접 문의해주세요.

  • 이 정보를 기반으로 한 의료 결정에 대해 개발자는 책임지지 않습니다.

  • 최신 정보는 건강보험심사평가원 공식 사이트를 참고하세요.

라이센스

MIT License - 자세한 내용은 LICENSE 파일을 참고하세요.

Related MCP Connectors

Related MCP Servers