Skip to main content
Glama

지체일수 불산입 사유

delay_exemption_guide
Read-onlyIdempotent

지체일수에서 빼는(불산입) 사유 지도 — estimate_delay_penalty가 정하지 않는 부분.

"이 지연은 우리 책임이 아닌데 지체상금을 물어야 하나", "동절기 공사중지 기간도
지체일수인가", "관급자재가 늦게 와서 늦어졌다" 같은 질문에 쓰라.

**이 도구는 해당 여부를 판정하지 않는다.** 일반조건 문언 자체가 "계약담당공무원이
인정할 때"를 요건으로 두므로 판단은 발주기관 몫이다. 도구가 주는 것은 셋이다 —
①예규에 있는 사유 목록과 원문 인용 ②각 사유가 인정되려면 **확정돼야 할 사실**
(must_establish — 사용자와 하나씩 확인하라) ③기재부·행안부 회신 선례.

쓰는 순서: 이 도구로 사유를 좁힌다 → must_establish를 사용자와 확인한다 →
불산입 일수가 정해지면 estimate_delay_penalty의 excluded_days에 넣어 다시 계산한다.
(sw_requirement_change는 해당 일수의 **1/2**만 넣는다 — 예규가 절반만 빼준다.)

**ground 목록은 계약유형과 무관한 전체 열거다** — 어떤 사유는 일반조건 계열(공사/물품/
용역)뿐 아니라 계약유형까지 좁혀야 한다(예: sw_requirement_change는 같은 조건 제49조의
소프트웨어사업 전용이라 용역 계열이어도 운송·보관 계약에는 해당할 수 없다). 해당하지
않는 조합은 `ground_not_applicable`로 거부하고 가능한 사유를 알려준다. 목록 조회에서
이렇게 빠진 사유는 `grounds_excluded_by_contract_kind`에 사유와 함께 실린다 —
조용히 사라지지 않는다.

**`day_count_rules`도 계약 계열로 걸러 나간다**(2026-09-10). 공사 전용 준공신고·준공검사
규칙과 물품 전용 분할납품 규칙은 해당 계열에만 실린다 — 빠진 것은
`day_count_rules_excluded`에 이유와 적용 계열이 함께 남으므로 "그런 규칙이 없다"로
읽지 마라. 우리가 이 지도에 안 담았다는 뜻이지 규칙이 없다는 뜻이 아니다.

**`verification`은 이 인용을 되짚는 길과 우리가 못 가진 것을 함께 말한다**(2026-09-10).
`general_conditions_article_ref`를 get_law_article에 그대로 넣으면 조문 원문이 나온다
(`general_conditions_in_corpus: false`면 원문을 우리가 못 본다 — 그 계열 인용은 2차 정리를
옮긴 것이니 원문 인용처럼 옮기지 말고 그 사실을 밝혀라. 공사·물품·용역 일반조건은 지금
세 계열 모두 원문을 보유한다 — 공사계약일반조건 제25조는 2026-10-20 반입).
`admin_rule_version_in_corpus: true`면 `admin_rule_version`(발령번호 `issue_no`·`issued`·`effective`)이
**우리가 반입한 예규 판**의 버전이다 — 계약체결일 당시 시행본이라는 뜻이 아니니, 적용 시점이 쟁점이면
그때 시행본을 law.go.kr에서 확인하라. `false`면 발령번호·시행일을 우리가 모른다는 뜻이다 — 최신이라는
뜻이 아니니 답변에 '버전 미확인'을 밝혀라.
행정회신은 원문 URL이 우리에게 없다(문서번호+일자가 인용 키다) — **링크를 지어내지 마라.**

주의: `quote_truncated: true`인 항목은 우리가 회수한 조문 인용이 중간에서 끊긴 것이다
— 그대로 인용하지 말고 search_references로 전문을 확인하라. 끊긴 문장을 이어서
지어내면 그것이 이 서버가 막으려는 오답이다.

Args:
    contract_kind: estimate_delay_penalty와 같은 값. 일반조건 계열(공사/물품/용역)로
        매핑되며, 실제로 계약서에 편입된 일반조건이 진실원임을 응답이 경고한다
    ground: 특정 사유 하나만 상세히 볼 때. 생략하면 그 계약유형의 전체 목록

Input Schema

NameRequiredDescriptionDefault
groundNo
contract_kindYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / properties / ground / anyOf
      Previous value: -[
      -  {
      -    "enum": [
      -      "force_majeure",
      -      "gov_supplied_material_delay",
      -      "owner_caused_delay",
      -      "contractor_default_surety",
      -      "design_change",
      -      "innovative_product_defect",
      -      "raw_material_shortage",
      -      "sw_requirement_change",
      -      "product_owner_side_delay"
      -    ],
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "enum": [
      +      "force_majeure",
      +      "gov_supplied_material_delay",
      +      "owner_caused_delay",
      +      "contractor_default_surety",
      +      "design_change",
      +      "innovative_product_defect",
      +      "raw_material_shortage",
      +      "sw_requirement_change",
      +      "product_owner_side_delay",
      +      "other_no_fault"
      +    ],
      +    "type": "string"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
  2. Added

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly/idempotent/non-destructive, and the description goes well beyond them: it discloses that inapplicable contract-kind combinations are rejected with ground_not_applicable rather than silently dropped, that filtered items surface in grounds_excluded_by_contract_kind and day_count_rules_excluded, and that it deliberately does not adjudicate eligibility. It also warns about quote_truncated citations, missing corpus originals (general_conditions_in_corpus, admin_rule_version_in_corpus), and forbids fabricating administrative-reply URLs — exactly the failure modes an agent would otherwise fall into.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Purpose is front-loaded, then usage order, then the caveat block, so the structure is sound and each bolded paragraph carries a distinct warning. It is long and dense with dated parentheticals and corpus-versioning detail that could be trimmed, but little of it is genuinely redundant.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

There is no output schema, so the description has to explain return shape — and it does, naming verification, general_conditions_article_ref, admin_rule_version/issue_no/issued/effective, grounds_excluded_by_contract_kind, day_count_rules_excluded and quote_truncated. For a read-only lookup with two params, nothing an agent needs in order to call it and interpret the response is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, so the description must carry parameter meaning, and it largely does: contract_kind is tied to the same value as estimate_delay_penalty, mapped to a general-conditions family, with a warning that the actually-incorporated conditions are the source of truth; ground is described as selecting one ground for detail and defaulting to the full list for that contract kind. It further notes that the ground list is a cross-type enumeration that must sometimes be narrowed by contract type. It stops short of explaining the individual enum values beyond sw_requirement_change.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a precise verb+resource in the first line — a map of grounds for excluding days from the delay count — and immediately scopes it against the sibling ('estimate_delay_penalty가 정하지 않는 부분'). It also names the three things it returns (ground list with source quotes, must_establish facts, ministry precedents), so an agent can distinguish it from estimate_delay_penalty without opening either schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives concrete triggering questions ('동절기 공사중지 기간도 지체일수인가', '관급자재가 늦게 와서'), an explicit when-NOT ('이 도구는 해당 여부를 판정하지 않는다'), and an ordered workflow: narrow grounds here → confirm must_establish with the user → feed excluded_days into estimate_delay_penalty, including the halving rule for sw_requirement_change. This is the when/when-not/alternative triad done explicitly.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.