MCP server by ridjunnie
law-open-api-mcp
대한민국 국가법령정보 공동활용 OPEN API (법제처)를 Claude Desktop 등 MCP 클라이언트에서 자연어로 호출할 수 있게 해주는 MCP 서버입니다.
법령, 행정규칙, 자치법규, 판례, 헌재결정례, 법령해석례, 위원회 결정문, 조약, 별표·서식, 중앙부처 1차 해석 등 195개 OPEN API를 단일 인터페이스로 제공합니다.
노출되는 도구
| 도구 | 설명 |
|---|---|
| list_law_apis(query, category, endpoint, limit) | 195개 API 카탈로그에서 키워드/카테고리로 검색 — 적절한 target 발견용 |
| call_law_api(target, endpoint, params) | 실제 API 호출. endpoint="search" (목록) / "service" (본문). JSON 응답 반환 |
사전 준비: OC (Open Channel) 키 발급
- https://open.law.go.kr 접속
- 회원가입 → 로그인
- 메뉴
OPEN API > 신청에서 본인의 OC 값 확인 (보통 이메일 ID)
설치 방법 ① — DXT (Windows 업무망 PC, 비개발자 권장)
Docker나 Python을 따로 설치할 필요 없이, Claude Desktop만 있으면 됩니다.
- 최신 릴리스에서
law-open-api-mcp.dxt파일 다운로드: https://github.com/ridjunnie/law-open-api-mcp/releases/latest - Claude Desktop 실행
- 다운로드한
.dxt파일을 Claude Desktop 창으로 드래그&드롭 - 팝업에서
OC 키항목에 발급받은 값 입력 → Install 클릭 - 끝. (Claude Desktop 재시작 불필요)
업데이트가 있을 때는 같은 페이지에서 새 .dxt를 받아 다시 드래그&드롭하면 됩니다.
설치 방법 ② — Docker (개발자 / 다른 MCP 클라이언트)
설정 파일 위치:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
mcpServers 항목에 다음을 추가하세요 (<your-oc> 부분에 발급받은 OC 입력):
{
"mcpServers": {
"law-open-api": {
"command": "docker",
"args": [
"run", "-i", "--rm",
"-e", "LAW_OC",
"ghcr.io/ridjunnie/law-open-api-mcp:latest"
],
"env": {
"LAW_OC": "<your-oc>"
}
}
}
}
저장 후 Claude Desktop을 완전히 종료(Cmd+Q) 후 재시작하세요.
Docker Desktop이 설치되어 있고 실행 중이어야 합니다. 첫 실행 시 이미지가 자동으로 pull 됩니다 (~80MB).
사용 예시 (Claude Desktop 채팅)
"자동차관리법 시행 예정인 조문을 찾아줘"
→ Claude가
list_law_apis(category="법령")호출 →call_law_api("eflaw", "search", {"query": "자동차관리법"})호출 → 결과 정리
"최근 음주운전 관련 대법원 판례 5건을 보여줘"
→
call_law_api("prec", "search", {"query": "음주운전", "display": 5})
카테고리 (18개)
법령, 행정규칙, 자치법규, 판례, 헌재결정례, 법령해석례, 행정심판례, 위원회 결정문, 조약, 별표ㆍ서식, 학칙ㆍ공단ㆍ공공기관, 법령용어, 모바일, 맞춤형, 법령정보 지식베이스, 중앙부처 1차 해석, 특별행정심판, 사전컨설팅 의견서
로컬 빌드 / 개발
# 가상환경 + 의존성
python3 -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
# 카탈로그 갱신 (선택, ~40초)
python crawl.py
# 직접 실행 (LAW_OC 필수)
LAW_OC=<your-oc> python law_mcp_server.py
# Docker 빌드
docker build -t law-open-api-mcp:dev .
docker run -i --rm -e LAW_OC=<your-oc> law-open-api-mcp:dev
주의사항
- OPEN API의 응답 포맷은
type=JSON으로 강제되어 있으나, 일부 API는 XML/HTML만 지원합니다. 그 경우call_law_api는error키와 함께 원문 일부를 반환합니다. - 본 MCP는 비공식 프로젝트이며, 법제처와 무관합니다.
- API 호출량은 발급받은 OC 키의 일일 한도를 따릅니다.
License
MIT