# contract-compass MCP server

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

## Links
- Registry page: https://www.getdrio.com/mcp/build-naru-contract-compass
- Repository: https://github.com/kwenhwang/contract-compass
- Website: https://contract.naru.build

## Install
- Endpoint: https://contract.naru.build/mcp
- Auth: Not captured

## Setup notes
- Remote endpoint: https://contract.naru.build/mcp

## Tools
- decide_contract_method - 계약방법 결정론 판정 — 룰엔진이 적용 가능한 계약방법 후보와 법령 근거를 반환.

    Args:
        contract_type: "construction"(공사) | "service"(용역) | "product"(물품)
        estimated_price: 추정가격(원)
        org_type: "national"(국가기관) | "local"(지자체) | "public_corp"(공기업·준정부, 기본)
        service_type: 용역일 때 "technical"|"academic"|"facility"|"it_service"|"other"
        construction_specialty: 공사일 때 "general"(종합)|"electrical"|"ict"|"fire_safety" 등
        is_sme_competition_product: 중소기업자간 경쟁제품 여부
        negotiation_reason: 수의 사유 "urgent"|"rebid_failure"|"technical_difficulty"|
            "patent_new_tech"|"specific_person"|"small_repeat"|"other_justified"
        is_women_enterprise: 여성기업 여부 — 지자체 물품·용역 2천만원 초과 1억원 이하
            수의계약(시행령 제25조제1항제5호바목) 판정에 필요. 사용자가 "여성기업",
            "장애인기업", "사회적기업"이라고 말하면 **반드시 해당 플래그를 세워라** —
            빠뜨리면 수의계약 후보가 통째로 빠지고 경쟁입찰만 제시된다.
        is_disabled_enterprise: 장애인기업 여부 (위와 같은 목)
        is_social_enterprise: 사회적기업·사회적협동조합·자활기업·마을기업 여부 (위와 같은 목).
            이 유형은 행정안전부 고시 취약계층 고용비율 충족이 추가 요건이다.
        is_youth_startup: 청년창업기업 여부 — 지자체 물품·용역 2천만원 초과 5천만원
            이하 수의계약(같은 조 제5호 다목, 중소기업창업 지원법 제2조제11호)
     Endpoint: https://contract.naru.build/mcp
- search_law - 법령 조문 검색 — 키워드 또는 조문번호로 조문 스니펫 반환(상위 top_k건).

    전문이 필요하면 get_law_article(ref)로 이어서 조회.

    Args:
        query: "수의계약", "시행령 제26조", "제21조" 등
        top_k: 반환 건수 (기본 8, 최대 20)
     Endpoint: https://contract.naru.build/mcp
- search_references - 전 코퍼스 통합 검색 — 법령+계약예규+조달청·행안부 세부기준+실무가이드. LLM 미사용.

    search_law가 법령 조문 전용인 것과 달리 예규·적격심사 세부기준·실무가이드까지
    검색한다. 낙찰하한율·적격심사 배점·실무 절차 등 법령 본문 밖 질문에 사용하라.
    AI 생성 없이 검색 근거 원문만 반환한다(백엔드 LLM 예산 미차감).

    Args:
        query: 자연어 검색어 (예: "적격심사 낙찰하한율 50억 미만")
        top_k: 반환 건수 (기본 6, 최대 12)
     Endpoint: https://contract.naru.build/mcp
- search_cases - 판례·법령해석례 검색 — law.go.kr 실시간 조회(항상 현행). LLM 미사용.

    분쟁·처분취소·해석 다툼("~해도 되나", "~취소될 수 있나")에 조문만으로 부족할 때
    쓰라. 본문은 get_case(kind, case_id)로 이어서 조회.

    Args:
        query: 핵심 명사 위주 검색어 (예: "부정당업자 제한", "유찰 수의계약")
        top_k: 종류당 반환 건수 (기본 5, 최대 10)
        kind: "prec"(법원 판례) | "expc"(법제처 법령해석례) | "all"(둘 다, 기본)
     Endpoint: https://contract.naru.build/mcp
- get_case - 판례/해석례 본문 조회 — 판시사항·판결요지·참조조문(판례) 또는 질의요지·회답·이유(해석례).

    Args:
        kind: "prec" | "expc" (search_cases 결과의 kind)
        case_id: search_cases 결과의 case_id
     Endpoint: https://contract.naru.build/mcp
- get_law_article - 법령 조문 원문 전체 조회.

    응답의 `notes`가 비어 있지 않으면 **법률 자체의 미정비 상호인용**이 탐지된
    것이다(예: 제5항이 '제2항 각 호'를 인용하나 제2항에 각 호가 없음). 원문은
    law.go.kr 현행 그대로이며 우리가 고치지 않는다 — 그 조문을 근거로 답할 때는
    notes의 내용을 사용자에게 함께 알리고 단정을 피하라.

    Args:
        ref: 정확한 조문 참조 (예: "국가계약법 시행령 제26조")
     Endpoint: https://contract.naru.build/mcp
- get_law_article_asof - **특정 시점에 시행 중이던** 조문 원문 조회 (law.go.kr 연혁 라이브).

    get_law_article은 항상 현행이다. 과거 사건에 현행 조문을 적용하면 조용히 틀린
    답이 된다 — 계약 체결·입찰공고·처분 시점이 과거이면 **반드시 이 도구를 쓰라**:
      - "2023년에 체결한 계약인데 지체상금률이 맞나"
      - "재작년 부정당업자 제재가 당시 기준으로 적법했나"
      - 감사·분쟁·소송 대응(적용법령은 행위시법이 원칙)

    응답 필드:
      effective_date  그 시점에 시행 중이던 판의 시행일자
      is_current      그 판이 지금도 현행인가 (False면 이후 개정됨)
      prev/next_effective_date  직전·직후 개정 시행일 — 경계 판단용
      notes           미정비 상호인용 경고 (get_law_article과 동일)

    Args:
        ref: 조문 참조 (예: "국가계약법 제27조", "국가계약법 시행령 제26조")
        date: 기준일 "YYYY-MM-DD" 또는 "YYYYMMDD" (예: 계약 체결일)
     Endpoint: https://contract.naru.build/mcp
- report_issue - 오류·개선 제보 — 운영자에게 전달된다(웹 피드백과 같은 검토 파이프라인).

    사용자가 "틀렸다"고 지적하면 **먼저 이 도구로 제보한 뒤** 정정 답을 제시하라.
    도구 결과가 조문·수치·판례와 명백히 불일치할 때도 제보하라. 추측으로 부르지 말 것.
    서버가 직전 도구 호출 기록을 자동 첨부하므로 도구명·인자를 기억으로 적을 필요 없다.

    Args:
        category: "wrong_citation"(오인용) | "outdated_law"(개정 미반영) |
            "wrong_ruling"(룰엔진 오판정) | "tool_error"(도구 오류) |
            "feature_request"(기능 요청) | "other"
        message: 무엇이 어떻게 잘못됐는지 구체적으로 (근거 조문·기대값 포함 권장)
        related_tool: 문제가 난 도구명 (예: "search_references")
        related_query: 문제를 재현하는 질의·입력
        expected: 올바르다고 생각하는 값·조문 (알고 있다면)
     Endpoint: https://contract.naru.build/mcp

## Resources
Not captured

## Prompts
Not captured

## Metadata
- Owner: build.naru
- Version: 1.1.0
- Runtime: Streamable Http
- Transports: HTTP
- License: Not captured
- Language: Not captured
- Stars: Not captured
- Updated: Jul 30, 2026
- Source: https://registry.modelcontextprotocol.io
