Skip to main content
Glama
SeoNaRu

Korean Law MCP Server

by SeoNaRu

🏛️ 한국 법률/판례 검색 MCP 서버

국가법령정보센터 Open API를 활용한 고성능 MCP (Model Context Protocol) 서버입니다.

AI 에이전트(Claude Desktop, Cursor 등)가 실시간으로 한국 법령, 판례, 행정규칙을 검색하고 분석할 수 있도록 합니다.

✨ 주요 기능

🔍 법령 검색

  • 키워드 기반 법령 검색: 민법, 상법, 근로기준법 등 다양한 법령 검색

  • 법령 상세 조회: 특정 법령의 전문(조문) 및 상세 정보 조회

  • 법령 기본 정보: 소관부처, 공포일자, 시행일자, 개정 정보 포함

⚖️ 판례 검색

  • 판례 키워드 검색: 손해배상, 계약, 부당해고 등 판례 검색

  • 판례 상세 조회: 판결요지, 판시사항, 판례 전문 조회

  • 법원 필터링: 대법원, 헌법재판소 등 법원별 필터링 지원

  • 참조조문/판례: 관련 법령 및 참조 판례 정보 제공

📋 행정규칙 검색

  • 행정규칙 검색: 각 부처의 행정규칙 검색

  • 소관부처 정보: 제정일자, 시행일자 등 상세 정보

🚀 성능 최적화

  • 전략적 캐싱: 법령/판례 데이터를 24시간 캐싱하여 API 호출 최소화

  • 빠른 응답 속도: 캐시 기반 즉시 응답

  • 안정적인 운영: 에러 핸들링 및 로깅 시스템

🎯 활용 사례

법률 전문가

  • 계약서 검토: AI가 계약서를 분석하고 관련 법령 및 판례를 자동 참조

  • 법률 자문: 특정 사안에 대한 관련 법령 및 판례를 즉시 조회

  • 판례 연구: 유사 판례를 빠르게 검색하고 비교 분석

기업 법무팀

  • 기업 컴플라이언스: 사업 관련 법령을 실시간 조회

  • 노무 관리: 근로기준법 등 노동 관련 법령 및 판례 검색

  • 소송 준비: 관련 판례 및 법령 자동 수집

스타트업/개발자

  • 서비스 법률 검토: 개인정보보호법, 전자상거래법 등 관련 법령 확인

  • 약관 작성: 관련 법령을 참조하여 약관 작성

  • 법률 리스크 분석: AI가 서비스 기획서를 분석하고 관련 법률 리스크 파악

일반 사용자

  • 법률 상담: AI 에이전트를 통한 기본적인 법률 정보 조회

  • 권리 확인: 소비자 권리, 임차권 등 관련 법령 및 판례 검색

  • 민원 준비: 행정심판, 소송 준비를 위한 법률 정보 수집

🛠️ 기술 스택

  • MCP Framework: FastMCP

  • Data Validation: Pydantic

  • HTTP Client: Requests

  • XML Parsing: xml.etree.ElementTree

  • Caching: cachetools (24시간 TTL)

  • Async Processing: asyncio

  • Environment: Python-dotenv

📦 설치 및 설정

1) 의존성 설치

pip install -r requirements.txt

💡 uv를 사용하는 경우: uv sync

2) API 키 발급

국가법령정보센터 Open API 키를 발급받아야 합니다:

  1. 국가법령정보센터 Open API 사이트 방문

  2. 회원가입 및 로그인

  3. 공동활용 서비스 > Open API 메뉴에서 API 신청

  4. 승인 후 인증키(OC) 발급받기

📌 참고: API 키 발급은 보통 즉시 승인되며, 무료로 이용 가능합니다.

3) 환경 변수 설정

프로젝트 루트에 .env 파일을 생성하고 API 키를 설정합니다:

cp env.law.example .env

.env 파일 내용:

LAW_API_KEY=your_law_api_key_here LOG_LEVEL=INFO PORT=8096

4) 서버 실행

python -m src.law_main

또는 HTTP 서버로 실행:

python src/law_main.py

🐳 Docker 실행

Docker를 사용하여 간편하게 실행할 수 있습니다:

# 이미지 빌드 docker build -t korean-law-mcp:latest . # 컨테이너 실행 docker run --rm \ -e LAW_API_KEY=your_law_api_key_here \ -p 8096:8096 \ korean-law-mcp:latest

🧰 사용 가능한 도구 (Tools)

1. health

  • 설명: 서비스 상태 및 API 키 설정 확인

  • 파라미터: 없음

  • 반환: 서비스 상태 객체

2. search_law_tool

  • 설명: 법령을 키워드로 검색

  • 파라미터:

    • query (string, 필수): 검색할 법령 키워드 (예: '민법', '상법')

    • page (integer, 선택): 페이지 번호 (기본값: 1)

    • page_size (integer, 선택): 페이지당 결과 수 (기본값: 10, 최대: 50)

  • 반환: 검색된 법령 목록 (법령명, 소관부처, 공포일자, 시행일자 등)

예시 응답:

{ "total": 152, "page": 1, "page_size": 10, "laws": [ { "법령ID": "001122", "법령명": "민법", "법령구분": "법률", "소관부처": "법무부", "공포일자": "19580222", "시행일자": "19600101" } ] }

3. get_law_detail_tool

  • 설명: 특정 법령의 상세 정보 및 전문(조문) 조회

  • 파라미터:

    • law_id (string, 필수): 법령 ID (법령 검색 결과에서 얻은 법령ID)

  • 반환: 법령의 상세 정보와 모든 조문 내용

예시 응답:

{ "법령ID": "001122", "법령명": "민법", "법령구분": "법률", "소관부처": "법무부", "공포일자": "19580222", "시행일자": "19600101", "조문수": 1118, "조문": [ { "조문번호": "제1조", "조문제목": "법원", "조문내용": "민사에 관하여 법률에 규정이 없으면..." } ] }

4. search_precedent_tool

  • 설명: 판례를 키워드로 검색

  • 파라미터:

    • query (string, 필수): 검색할 판례 키워드 (예: '손해배상', '계약')

    • page (integer, 선택): 페이지 번호 (기본값: 1)

    • page_size (integer, 선택): 페이지당 결과 수 (기본값: 10, 최대: 50)

    • court (string, 선택): 법원 구분 (예: '대법원', '헌법재판소')

  • 반환: 검색된 판례 목록

예시 응답:

{ "total": 2453, "page": 1, "page_size": 10, "precedents": [ { "판례일련번호": "202012345", "사건명": "손해배상(기)", "사건번호": "2020다123456", "선고일자": "20201015", "선고": "파기환송", "법원명": "대법원", "사건종류명": "민사", "판시사항": "...", "판결요지": "..." } ] }

5. get_precedent_detail_tool

  • 설명: 특정 판례의 상세 정보 조회

  • 파라미터:

    • precedent_id (string, 필수): 판례 일련번호

  • 반환: 판례의 상세 정보 (판결요지, 참조조문, 판례 전문 등)

예시 응답:

{ "판례일련번호": "202012345", "사건명": "손해배상(기)", "사건번호": "2020다123456", "선고일자": "20201015", "선고": "파기환송", "법원명": "대법원", "판시사항": "...", "판결요지": "...", "참조조문": "민법 제750조, 제751조", "참조판례": "대법원 2019다234567...", "판례내용": "【전문】..." }

6. search_administrative_rule_tool

  • 설명: 행정규칙을 키워드로 검색

  • 파라미터:

    • query (string, 필수): 검색할 행정규칙 키워드

    • page (integer, 선택): 페이지 번호 (기본값: 1)

    • page_size (integer, 선택): 페이지당 결과 수 (기본값: 10, 최대: 50)

  • 반환: 검색된 행정규칙 목록

💡 사용 예시

Claude Desktop에서 사용

  1. Claude Desktop 설정 파일 (claude_desktop_config.json) 수정:

{ "mcpServers": { "korean-law": { "command": "python", "args": ["-m", "src.law_main"], "env": { "LAW_API_KEY": "your_api_key_here" } } } }
  1. Claude Desktop 재시작

  2. Claude에게 질문:

    • "민법 제750조에 대해 알려줘"

    • "부당해고 관련 판례 찾아줘"

    • "개인정보보호법 검색해줘"

Cursor에서 사용

Cursor의 MCP 설정에서 위와 동일하게 추가하면 됩니다.

📁 프로젝트 구조

korean-law-mcp/ ├── src/ │ ├── __init__.py │ ├── law_main.py # MCP 서버 메인 파일 │ └── law_tools.py # 법률 API 호출 도구 ├── .env # 환경 변수 파일 (API 키 등) ├── env.law.example # 환경 변수 예시 파일 ├── requirements.txt # Python 의존성 ├── README_LAW.md # 프로젝트 문서 (이 파일) └── pyproject.toml # 프로젝트 설정

🚀 로드맵

  • 법령 개정 이력 조회

  • 법령/판례 전문 PDF 다운로드

  • 자연어 기반 법령 해석

  • 법령 비교 분석 기능

  • 판례 유사도 분석

  • 법률 용어 사전

💰 비즈니스 모델

이 MCP 서버는 판매용 제품으로 개발되었습니다:

타겟 고객

  • 🏢 법률사무소/로펌: 법률 리서치 자동화

  • 🏭 기업 법무팀: 컴플라이언스 관리

  • 🚀 스타트업: 법률 리스크 분석

  • 🎓 법학 연구자: 판례 연구 도구

가격 책정 (참고)

  • Basic: 30만원 (기본 검색 기능)

  • Pro: 100만원 (AI 분석 기능 추가)

  • Enterprise: 200만원+ (커스터마이징, 기술 지원)

차별화 포인트

  • ✅ 국가 공식 데이터 활용

  • ✅ AI 에이전트 직접 통합

  • ✅ 실시간 최신 법령/판례 조회

  • ✅ 한국어 완벽 지원

  • ✅ 복잡한 API 처리 자동화

⚠️ 저장소 이전 안내 (Repository Moved)

본 프로젝트는 더 확장된 구조와 명확한 목적을 반영하여
아래 저장소로 이전 및 계속 개발되고 있습니다.

👉 LexGuard MCP
https://github.com/SeoNaRu/lexguard-mcp

이 저장소(korean-law-mcp)는 더 이상 유지보수되지 않습니다.
최신 기능 및 업데이트는 새로운 저장소를 이용해주세요.

-
security - not tested
F
license - not found
-
quality - not tested

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/SeoNaRu/korean-law-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server