sinmb79/KCSC-MCP

KCSC-MCP-국가건설기준센터에서 제공하는 건설기준에 관한 문서(시방서 등)을 MCP로 활용합니다.

2
GitHub 스타
0
포크
Python
언어
미표기
라이선스
2026.04.03
최근 푸시
2026.04.03
별표한 날

AI 분석

설치 난이도: 보통
큐레이터 노트
이 프로젝트는 한국 건설 기준 문서를 AI 어시스턴트와 통합하려는 모든 개발자나 엔지니어에게 유용합니다. 특히 Claude Desktop, Claude Code, Codex 등 MCP를 지원하는 클라이언트를 사용 중이고, 건설 기준 검색 업무를 자동화하려는 경우 적극 도입할 가치가 있습니다.

강점

  • 국가건설기준(KCS/KDS)을 AI 대화 내에서 직접 검색하고 조회할 수 있어 업무 효율성이 크게 향상됩니다.
  • 4가지 도구(목록 조회, 검색, 본문 조회, 섹션 검색)를 제공하여 문서 탐색이 체계적입니다.
  • code와 fullCode를 모두 지원하며 자동 변환해 주어 사용자 편의성이 높습니다.
  • 캐싱 기능을 제공하여 반복 호출 시 성능을 최적화합니다.
  • SSL 인증서 문제에 대한 우선순위별 해결 방법을 제시하여 다양한 네트워크 환경을 고려합니다.

약점

  • README에 라이선스 파일이나 기여 가이드라인이 명시되어 있지 않습니다.
  • 테스트 커버리지나 CI/CD 파이프라인에 대한 정보가 부족합니다.
  • API 키 발급이 필수적이므로 키 없이는 사용이 불가능합니다.

주의사항

  • KCSC API 키를 반드시 발급받아야 하며, 키가 없으면 서버가 동작하지 않습니다.
  • Windows/사내망 환경에서 SSL 인증서 오류가 발생할 수 있으므로 환경에 맞는 설정이 필요합니다.
  • SSL 검증 비활성화(`KCSC_VERIFY_SSL=false`)는 보안상 권장되지 않으며 최후의 수단으로만 사용해야 합니다.
  • 캐시 TTL이 기본 600초이므로 실시간 업데이트가 필요한 경우 주의해야 합니다.

시작 가이드

  • KCSC API 키를 발급받고 `.env` 파일에 설정합니다.
  • README의 빠른 시작 가이드에 따라 설치 및 서버를 실행합니다.
  • Claude Desktop 또는 Claude Code에 MCP 서버를 연결합니다.
  • 제공된 예시를 따라 콘크리트 기준 검색 등 실제 사용 사례를 테스트합니다.
  • 필요시 캐시 TTL이나 SSL 설정을 환경에 맞게 조정합니다.

README 한국어 번역

이 번역은 AI가 원문 README를 옮긴 것입니다. 원문이 항상 우선합니다.

KCSC MCP Server

국가건설기준(KCS/KDS)을 AI 대화 안에서 바로 검색하고 읽습니다


소개

KCSC MCP Server는 국가건설기준센터(KCSC) OpenAPI를 MCP 서버로 감싸서, Claude Desktop/Claude Code/Codex 등 AI 클라이언트 안에서 KCS(건설기준)와 KDS(설계기준)를 바로 검색하고, 본문을 읽고, 특정 조항을 찾을 수 있게 합니다.

브라우저를 열고, 키워드를 바꾸고, 페이지를 넘기는 대신 -- AI에게 물어보세요.


이런 분들에게 유용합니다

대상 활용 예시
건설 엔지니어 설계 검토 중 KDS 기준 조항을 즉시 확인
시공 관리자 KCS 시공 기준 본문을 AI 대화 안에서 바로 조회
건축사/감리원 관련 기준 문서를 키워드로 빠르게 검색
공무원 사업 기획 시 적용 기준 확인
학생/연구자 건설기준 학습 및 조항 검색

제공 도구

# 도구 설명
1 kcsclistcodes KCS/KDS 코드 목록 조회 (타입, 키워드, 페이지네이션)
2 kcscsearchcodes 코드명 기반 빠른 검색
3 kcscgetcontent 특정 문서 전체 본문 조회 (HTML 제거 옵션)
4 kcscsearchsections 문서 내부 제목/본문 키워드 검색

빠른 시작 가이드

1단계: 설치

git clone https://github.com/sinmb79/KCSC-MCP.git
cd KCSC-MCP

python -m venv.venv

# Windows:.venv\Scripts\activate
# macOS/Linux:
source.venv/bin/activate

# 설치
pip install -e ".[dev]"

2단계: API 키 설정

KCSC API 키를 https://www.kcsc.re.kr/support/api에서 발급받으세요.

# Windows:
copy.env.example.env
# macOS/Linux:
cp.env.example.env

.env 파일을 편집합니다:

KCSC_API_KEY=your_real_kcsc_api_key

3단계: 서버 실행

# 방법 1: Python 직접 실행
python server.py

# 방법 2: 설치된 스크립트
kcsc-mcp

4단계: AI 클라이언트 연결

Claude Desktop

%AppData%\Claude\claudedesktopconfig.json (Windows):

{
  "mcpServers": {
    "kcsc": {
      "command": "D:/Workspace/KCSC-MCP/.venv/Scripts/python.exe",
      "args": ["D:/Workspace/KCSC-MCP/server.py"],
      "env": {
        "KCSC_API_KEY": "your_kcsc_api_key"
      }
    }
  }
}

Claude Code

claude mcp add --transport stdio kcsc -- python server.py

Codex

codex mcp add kcsc -- python server.py

실전 사용 예시

추천 사용 흐름

가장 효율적인 순서입니다. 처음부터 본문을 열지 마세요.

1. kcsc_search_codes  -->  관련 문서 후보 찾기
2. kcsc_list_codes    -->  범위 좁히기 (필요 시)
3. kcsc_search_sections --> 문서 내부에서 필요한 조항 확인
4. kcsc_get_content   -->  전체 문맥 읽기

예시 1: 콘크리트 관련 기준 찾기

AI에게 이렇게 말하세요:

콘크리트 관련 KCS 기준을 찾아줘

AI가 호출하는 도구:

kcsc_search_codes(keyword="콘크리트", code_type="KCS")

결과 예시:

[
  {"code": "114010", "fullCode": "2010114010", "codeName": "콘크리트 공사 일반"},
  {"code": "114020", "fullCode": "2010114020", "codeName": "콘크리트 배합"},
  {"code": "114030", "fullCode": "2010114030", "codeName": "콘크리트 타설"}
]

예시 2: 문서 내부 조항 검색

콘크리트 공사 일반 기준에서 거푸집 관련 내용을 찾아줘
kcsc_search_sections(code_type="KCS", code="114010", keyword="거푸집", limit=5)

문서 전체를 읽지 않고도, 해당 키워드가 등장하는 제목과 본문 단락만 빠르게 확인할 수 있습니다.

예시 3: 기준 문서 본문 조회

KCS 114010 전문을 보여줘
kcsc_get_content(code_type="KCS", code="114010", plain_text=True)

plain_text=True로 설정하면 HTML 태그가 제거된 깨끗한 텍스트를 받습니다.

예시 4: 도로 설계기준 목록 조회

도로 관련 KDS 기준 목록을 보여줘
kcsc_list_codes(code_type="KDS", keyword="도로", limit=20)

code와 fullCode

KCSC API 응답에는 code(6자리)와 fullCode(10자리)가 함께 나옵니다:

필드 예시 설명
code 114010 문서 본문 조회에 사용하는 6자리 코드
fullCode 2010114010 목록에서 보이는 10자리 전체 코드

이 서버에서는 둘 다 입력으로 받을 수 있습니다. 내부적으로 적절한 코드로 변환하여 API를 호출합니다.


캐시

반복 호출을 줄이기 위해 메모리 캐시를 사용합니다.

항목 설명
코드 목록 전체 코드 목록 캐시
문서 본문 문서별 본문 캐시
기본 TTL 600초 (10분)
# 캐시 TTL 조정 (초)
KCSC_CACHE_TTL_SECONDS=600

SSL/네트워크 설정

일부 Windows/사내망 환경에서 SSL 인증서 문제가 발생할 수 있습니다.

검증 우선순위:

순위 방법 설정
1 (권장) 기본 설정 그대로 (설정 불필요)
2 사내 CA 번들 지정 KCSCCABUNDLE=C:\certs\corp-ca.pem
3 (비권장) SSL 검증 비활성화 KCSCVERIFYSSL=false

프로젝트 구조

KCSC-MCP/
|-- server.py          # MCP 서버 (4개 도구)
|-- pyproject.toml     # 프로젝트 메타데이터
|-- requirements.txt   # 의존성
|--.env.example       # 환경변수 템플릿
+-- tests/
    +-- test_server.py # 테스트

테스트 실행

pytest

테스트 항목: 코드 타입 검증, HTML 제거, 오류 정규화, 섹션 검색, 캐시 불변성


환경 변수 목록

변수 필수 설명
KCSCAPIKEY 필수 KCSC OpenAPI 키
KCSCCACHETTL_SECONDS 선택 캐시 TTL (기본: 600초)
KCSCCABUNDLE 선택 사내 CA 인증서 번들 경로
KCSCVERIFYSSL 선택 SSL 검증 비활성화 (false)

자주 묻는 질문

API 키를 넣었는데 동작하지 않아요

  • 키 만료 여부 확인
  • .env 파일이 프로젝트 루트에 있는지 확인
  • Claude Desktop 설정의 env에도 키를 넣었는지 확인

SSL 인증서 오류가 나요

  • 먼저 기본 설정으로 재시도
  • 사내망이면 KCSCCABUNDLE에 사내 CA 번들 지정
  • 최후 수단으로만 KCSCVERIFYSSL=false 사용

code와 fullCode가 헷갈려요

  • 둘 다 입력 가능합니다. 서버가 자동으로 변환합니다.

라이선스

MIT License -- 자유롭게 사용, 수정, 배포할 수 있습니다.


만든 사람

22B Labs (sinmb79) -- The 4th Path

문의사항이나 기여는 Issues를 이용해 주세요.

원본 저장소: sinmb79/KCSC-MCP

라이선스: 미표기

게재 제외를 원하시면 삭제 요청을 보내주세요.