Search DevTools

Jump to any tool or page

contract-compass

Korean public procurement law: rule-engine rulings, statutes search, live court precedents

sallim-app0 stars0 forksAI & Agents
View source

Install

mcp_config.json

{
  "mcpServers": {
    "app-sallim-contract-compass": {
      "url": "https://contract.sallim.app/mcp?via=official",
      "type": "streamable-http"
    }
  }
}

Documentation

계약나침반 🧭 (Contract Compass)

Korean public procurement law MCP server & web service — a deterministic rule engine for contract-method decisions (94 rules encoded directly from statutes), a searchable corpus of Korean procurement statutes/regulations/adjudication tables, and live court precedents & authoritative interpretations from law.go.kr. All MCP tools are LLM-free: your AI client does the reasoning, this server provides verifiable legal grounds. Remote endpoint: https://contract.sallim.app/mcp

공공계약 방법 결정 도우미 — 국가계약법·지방계약법 등 공공계약 법령을 기반으로, 발주하려는 계약(공사·용역·물품)에 적용 가능한 계약방법(입찰·수의계약·제한경쟁 등)과 법령 근거를 결정론적으로 안내하는 오픈소스 웹서비스 + MCP 서버입니다.

  • 결정 위저드: 계약유형·추정가격·조건을 입력하면 룰엔진(법령 직접 인코딩 94룰)이 적용 가능한 계약방법·낙찰자 결정방법·적격심사 기준을 후보와 근거 조문과 함께 제시
  • 법령 챗봇(Ask): 국가계약법령·계약예규·감사원 공공계약 실무가이드 등 공개 코퍼스 기반 RAG 검색 + 인용 답변 (웹 UI 전용)
  • MCP 서버(무LLM): Claude·ChatGPT·Cursor 등 AI 에이전트가 룰엔진 판정, 법령 조문, 예규·적격심사 세부기준(별표 포함), **판례·법령해석례(law.go.kr 실시간)**를 직접 조회
  • 기관유형 지원: 국가기관 / 지방자치단체 / 공기업·준정부기관 프로파일
  • 결정론 우선: 계약방법 결정은 LLM이 아닌 룰엔진이 수행 — 같은 입력엔 항상 같은 결과. LLM은 웹 챗봇·설명 생성에만 사용(키 없이도 핵심 기능 동작)

⚠️ 면책: 이 서비스는 정보 제공 목적이며 법적 자문·유권해석이 아닙니다. 적격심사 통과점수·낙찰하한율·각종 한도는 발주기관별 세부기준과 법령 개정에 따라 다를 수 있으므로, 실제 발주 전 반드시 소속 기관 계약 부서와 현행 법령을 확인하세요.

MCP 서버 사용하기

원격 엔드포인트(Streamable HTTP): https://contract.sallim.app/mcp 무료: IP당 50콜/일 (전 도구) · 유료 키: 한도 상향 — 요금 안내

도구 목록 (11종) — Tools / ツール

아래 표는 라이브 서버의 tools/list 응답에서 그대로 뽑은 것입니다(실측 2026-08-18, 11종 전수). MCP 디렉토리·크롤러가 이 저장소를 정적으로 읽을 때 도구 이름을 찾는 자리이므로, 서버의 실제 도구 목록과 1:1로 유지합니다(불일치는 회귀로 취급). 누구나 직접 재현할 수 있습니다:

curl -s -X POST https://contract.sallim.app/mcp \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json, text/event-stream' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
# → decide_contract_method, search_law, search_references, search_cases, get_case,
#   get_law_article, get_law_article_asof, estimate_delay_penalty,
#   delay_exemption_guide, check_price_adjustment, report_issue  (11 tools)
도구설명LLM
decide_contract_method룰엔진 결정론 판정 — 계약방법 후보·법령 근거·적격심사 파라미터
search_law법령 조문 검색(키워드·조문번호·부분매치·시맨틱 폴백)
get_law_article조문 원문 전체 조회 (현행) — 법률 자체의 미정비 인용은 notes로 경고
get_law_article_asof특정 시점에 시행 중이던 조문 — 과거 계약·처분·감사 대응(행위시법)
search_references전 코퍼스 통합 검색 — 계약예규·조달청/행안부 적격심사 세부기준(별표)·실무가이드
search_cases판례·법령해석례 검색 (law.go.kr 실시간 — 항상 현행)
get_case판시사항·판결요지·참조조문 / 질의요지·회답·이유 본문
estimate_delay_penalty지체상금·지연배상금 산정 — 법정 요율·기준금액·30% 한도 결정론 적용(국가/지방 요율이 다르다)
delay_exemption_guide지체일수 불산입(면책) 사유 지도 — 예규 사유·확인할 사실·기재부/행안부 회신 선례
check_price_adjustment물가변동 계약금액 조정 — 90일·3%·단품 문턱(국가 15%/지방 10%) 판정 + 조정금액·선금공제 산식
report_issue오류·개선 제보(오인용·개정 미반영 등) — 운영 검토 파이프라인 직결

클라이언트 설정:

# Claude Code
claude mcp add --transport http contract-compass https://contract.sallim.app/mcp
// Cursor (.cursor/mcp.json) — Streamable HTTP 직접 지원
{ "mcpServers": { "contract-compass": { "url": "https://contract.sallim.app/mcp" } } }
// Claude Desktop (claude_desktop_config.json) — mcp-remote 경유
{ "mcpServers": { "contract-compass": {
    "command": "npx", "args": ["-y", "mcp-remote", "https://contract.sallim.app/mcp"] } } }

ChatGPT: Settings → Connectors → Developer mode에서 위 URL을 커넥터로 추가.

설치했으면 AI에게 이렇게 물어 30초 안에 확인하세요 — "국가기관이 2,000만원짜리 물품을 사려는데 어떤 계약방법을 쓸 수 있어? 근거 조문도." 소액수의계약과 국가계약법 시행령 제26조 제1항 제5호가 나오면 정상입니다.

도구 명세·아키텍처·한도 정책 상세는 docs/MCP.md 참조.

평가셋 — 우리 판정을 남이 되짚을 수 있게

이 서버가 무엇을 맞히고 무엇을 못 맞히는지는 evaluation.xml에 공개돼 있습니다(20문항, 답은 전부 실측값). 지어낸 문항은 없습니다 — 미검증 문항은 회귀 검사를 거짓 실패시키기 때문입니다.

기계 검증은 결정론 회귀 하네스가 합니다. LLM을 쓰지 않아 비용 없이 재현됩니다:

python3 tools/mcp_regression.py --endpoint https://contract.sallim.app/mcp
# 28 케이스 · exit 0=전부 PASS / 1=회귀 존재 / 2=서버 미도달

각 케이스는 과거에 실제로 발견·수리된 결함의 회귀입니다(삭제된 조문을 근거처럼 반환하던 문제, 지자체 판정에 국가 수치가 섞이던 문제 등). 무료 티어는 IP당 50콜/일이고 이 스위트가 28콜을 쓰므로 하루 1회가 한계입니다.

금액구간별 계약방법·수의계약 사유·용어 가이드 페이지(/g/)의 생성·검증·배포 절차는 docs/PROGRAMMATIC_SEO.md 참조 — 룰셋에서 파생 생성하므로 페이지를 수기 편집하지 말 것. 로컬 stdio 실행: python3 mcp/server.py (등록: codex mcp add contract-compass -- python3 /path/to/mcp/server.py)

구성

backend/    FastAPI — 룰엔진·RAG·LLM 연동 (frontend/dist 정적 서빙 포함, :8402)
frontend/   React + TypeScript (Vite) — 위저드 UI
mcp/        MCP 서버 — stdio(로컬) / Streamable HTTP(:8403, 원격) · 무LLM 도구 11종
edge/       Cloudflare Worker (contract-edge) — 장애 폴백 게이트 · law API 엣지 캐시
rules/      계약 룰셋 JSON (contract_rules·law_registry 등) ← 결정론 핵심
tools/      법령·예규·별표 수집/인덱싱 파이프라인 (law.go.kr Open API) · 가이드 페이지 생성기
etl/        PDF/DOCX → 청크 → ChromaDB 파이프라인
docs/       MCP 명세 · 장애 전환 런북 · 가이드 페이지 파이프라인
scripts/    스탠바이 동기화 · 반출 전 기밀 검사
tests/      단위·회귀 테스트 + Ask 질문뱅크

빠른 시작

# 1) 백엔드 의존성 (+ MCP 서버까지 쓰려면 mcp/requirements.txt 추가)
pip install -r backend/requirements.txt

# 2) 프론트 빌드 (Node.js는 빌드 때만 필요)
cd frontend && npm install && npm run build && cd ..

# 3) 환경설정 (선택 — LLM 키 없이도 동작)
cp .env.example .env

# 4) 실행 (rate limiter는 SQLite 공유 — 다중 워커 가능, 코어 수에 맞춰 조정)
python3 -m uvicorn backend.main:app --host 0.0.0.0 --port 8402

RAG 코퍼스 구축 (선택)

법령 챗봇·근거 검색을 쓰려면 공개 코퍼스를 인덱싱합니다:

# 법령 XML을 tools/laws/ 에 준비(law.go.kr Open API — tools/lib/lawgo.py 헬퍼 참조) 후 인덱싱
python3 tools/index_laws.py            # → law_articles 컬렉션

# 계약예규(행정규칙) 수집·인덱싱
python3 tools/fetch_admin_rules.py && python3 tools/parse_admin_rules.py
python3 tools/index_admin_rules.py     # → admin_rules 컬렉션

# 법령 별표·적격심사 세부기준 전문 PDF (부정당 제재기준·하자담보기간·낙찰하한율 별표)
python3 tools/fetch_law_tables.py

# 공개 간행물(감사원 공공계약 실무가이드 등)을 data/source_docs/ 에 넣고
python3 tools/reindex_qa.py            # → public_guides 컬렉션

# BM25 하이브리드 인덱스
python3 tools/build_bm25_index.py

코퍼스가 없으면 위저드(룰엔진)는 정상 동작하고, RAG 검색 결과만 비어 있습니다. 판례·법령해석례 조회는 코퍼스와 무관하게 law.go.kr Open API 키(LAW_API_KEY)만 있으면 동작합니다.

데이터 출처 (전부 공개 자료)

  • 법령·시행령·시행규칙·별표·판례·법령해석례: 국가법령정보센터 Open API (출처표시)
  • 계약예규(적격심사기준·정부 입찰·계약 집행기준 등): 기획재정부 행정규칙
  • 적격심사 세부기준: 조달청·행정안전부 행정규칙
  • 공공계약 실무가이드: 감사원 공개 간행물
  • 물품분류·중소기업자간 경쟁제품: 조달청·중소벤처기업부 고시

라이선스

MIT

Sourced from the repository README.

More in AI & Agents