Skip to main content
Glama

홈택스 원천세 수정신고 초안 초기화

hometax__tax__withholding__amendment_report__init
Destructive

REQUIRES prior hometax__session__login call with same account_link_id. 귀속연월과 지급연월로 원천세 수정신고 초안을 엽니다. 이미 제출한 수정신고가 있으면 그 사본으로 다시 고치고, 없으면 마감된 원신고의 수정신고를 처음 작성합니다. draft_mode resume 으로 기관에 저장해 둔 수정신고를 이어서 작성합니다. 기관에 작성 중인 신고서를 만듭니다. 호출마다 토큰 1소진 요청 처리 시 XBOSS 작업을 생성하고 처리 결과를 저장합니다. 기관 원본의 조회 여부와 별개로 이 호출은 순수 읽기 전용이 아닙니다. 기관 데이터 변경은 도구별 실행 내용과 기존 확인 절차를 따릅니다.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "business_no": "<business_no>",
      "periods": "<periods>"
    },
    "name": "hometax__tax__withholding__amendment_report__init"
  }
}

Input Schema

NameRequiredDescriptionDefault
periodsYes신고 기간 세 값을 담은 객체입니다. submitYm(제출연월), attrYm(귀속연월), pymnYm(지급연월)을 각각 YYYYMM 여섯 자리로 입력하고, 귀속연월이 지급연월보다 늦거나 지급연월이 제출연월보다 늦으면 입력 오류로 거절합니다. JSON 문자열이 아니라 객체로 입력하며 문자열이면 입력 오류로 거절합니다.
draft_modeNo작성 방식입니다. new(기본값)는 수정신고를 새로 작성합니다. 이미 제출한 수정신고가 있으면 그것을 복사해 다시 작성하고, 없으면 마감된 원래 신고를 바탕으로 처음 작성합니다. resume 은 기관에 저장해 둔 작성 중 수정신고를 이어서 씁니다. new 인데 작성 중인 수정신고가 이미 있으면 그것을 지우지 않고 409 로 거절합니다. 다른 값은 입력 오류로 거절합니다.new
business_noYes신고할 사업자등록번호 10자리
account_link_idNo연동 ID(UUID v4). 선택 입력입니다. 비워 두면 서버가 API 키로 연동을 찾아 씁니다. 같은 기관에 인증서를 여러 개 연동했을 때만 직접 입력해 주세요. 기관마다 ID 가 다릅니다.
originalReturnIdNo수정할 기관 신고서 ID 입니다. 신고 내역 조회(history) 결과 rows 의 신고 건 식별번호(filing_reference)에서 고릅니다. 이미 제출한 수정신고를 다시 고칠 때(draft_mode 가 new)는 기관이 돌려준 그 제출 신고서의 ID 와 같아야 하고 빠지거나 다르면 409 로 거절합니다. 수정신고를 처음 작성할 때는 수정할 원래 신고의 ID 이며, 수정할 수 있는 원래 신고가 하나뿐이면 생략할 수 있고 여럿인데 고르지 않으면 409 로 거절합니다. resume 으로 이어 쓸 때 입력하면 기관이 그 작성 중 신고서에 연결해 둔 원신고 ID 와 같아야 하며 다르면 409 로 거절합니다.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.8/5.0
Behavior4/5

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

Beyond the annotations it discloses real behavioral cost and side effects: each call consumes one token, creates an XBOSS job and stores the processing result, and it explicitly warns the call is not purely read-only, which is consistent with readOnlyHint=false. It also surfaces concrete 409 failure modes (existing in-progress draft under new, mismatched or missing originalReturnId). It does not explain what the destructiveHint=true annotation actually means here, since the described behavior creates rather than removes state.

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?

The prerequisite is front-loaded in a single emphatic line, followed by purpose, draft-mode branching, and cost/effects. It loses points for near-duplication between 'draft_mode resume 으로 ... 이어서 작성합니다' and the schema's own draft_mode text, and for the closing sentence about '도구별 실행 내용과 기존 확인 절차' which is generic boilerplate that adds no actionable information.

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

Completeness3/5

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

For an initializer that gates a multi-step save/submit workflow, the definition covers the prerequisite, the new/resume branching, and the side-effect profile well. However, with no output schema there is no statement of what comes back (e.g., a draft handle or identifier the later basic_save/detail_save calls would need), which is a meaningful gap for an init tool. It is adequate but not complete.

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

Parameters3/5

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

Schema description coverage is 100%, so every parameter — business_no, account_link_id, originalReturnId, periods, draft_mode — is already fully documented in the schema, including the 409 rules and the YYYYMM ordering constraint. The description restates the draft_mode=resume behavior and the month scoping but adds no syntax, format, or edge-case meaning beyond what the schema provides. Baseline 3 is appropriate.

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

Purpose4/5

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

The description names a specific verb and resource: it opens ('엽니다') a withholding-tax amendment-report draft scoped by attribution month and payment month, and creates an in-progress return at the agency ('기관에 작성 중인 신고서를 만듭니다'). That is clearly distinguishable from sibling save/preview/submit tools. It does not explicitly contrast itself with the parallel late_report__init / regular_report__init tools, so it stops short of a 5.

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

Usage Guidelines4/5

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

It states a hard prerequisite (prior hometax__session__login with the same account_link_id) and gives concrete selection rules: draft_mode=new copies an already-submitted amendment if one exists, otherwise starts from the closed original return; draft_mode=resume continues a saved in-progress return. It does not name the downstream step (basic_save/detail_save) or cancel_draft as the way to discard a draft, so the surrounding workflow is only implied.

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.

Resources