Japan MOF Sanctions List Relay

Is this name on Japan's MOF asset-freeze list? Hosted, list-change history kept. Reference only.

사용해야 할까요

품질 및 안전성

A
설명 품질
100%
스키마 완전성
83%
이름 품질
85%
오염 위험
100%
권한 일치
100%
프로토콜 준수
100%

도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.

컨텍스트 비용

~4,033토큰 (도구 정의)
~12.0 KB일반적인 응답 크기
상당한 주의 영향 (128k 컨텍스트의 3.15%)

이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.

설치

원클릭 설치

`claude_desktop_config.json` 파일에 다음을 추가하세요:

{
  "mcpServers": {
    "jp-sanctions": {
      "url": "https://jp-sanctions-production.mk-career-planning.workers.dev/mcp"
    }
  }
}

원격 엔드포인트

https://jp-sanctions-production.mk-career-planning.workers.dev/mcpstreamable-http

할 수 있는 일

도구 목록

도구 (4)

🟢 읽기 전용🟡 쓰기🔴 삭제⚪ 알 수 없음
🟢catalog

List the tools of this server with prices, data sources, licensing, daily limits and data freshness.

입력 스키마

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}

출력 스키마

{
  "type": "object",
  "properties": {
    "server": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string"
        },
        "version": {
          "type": "string"
        },
        "stage": {
          "type": "string"
        }
      },
      "required": [
        "name",
        "version",
        "stage"
      ],
      "additionalProperties": {}
    },
    "payment": {
      "type": "object",
      "properties": {
        "protocol": {
          "type": "string"
        },
        "network": {
          "type": "string"
        },
        "asset": {
          "type": "string"
        },
        "enabled": {
          "type": "boolean"
        }
      },
      "required": [
        "protocol",
        "network",
        "asset",
        "enabled"
      ],
      "additionalProperties": {}
    },
    "daily_limits": {
      "type": "object",
      "properties": {},
      "additionalProperties": {},
      "description": "Daily limits of paid calls (calls, usd, timezone) or a misconfiguration notice."
    },
    "paused": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {
        "type": "boolean"
      },
      "description": "Operator pause flags (true = paused)."
    },
    "tools": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "price_usd": {
            "type": "number",
            "description": "Price per call in USD (0 = free)."
          },
          "description": {
            "type": "string"
          }
        },
        "required": [
          "name",
          "price_usd",
          "description"
        ],
        "additionalProperties": {}
      },
      "description": "Every tool of this server with its price."
    },
    "legal": {
      "type": "object",
      "properties": {},
      "additionalProperties": {}
    },
    "fetch_status_values": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {
        "type": "string"
      }
    },
    "provenance": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "source": {
            "type": "object",
            "properties": {
              "publisher": {
                "type": "string"
              },
              "url": {
                "type": "string"
              }
            },
            "required": [
              "publisher",
              "url"
            ],
            "additionalProperties": {},
            "description": "Publisher and URL of the upstream document or dataset."
          },
          "upstream_updated_at": {
            "description": "Update time stated by the upstream, or null when it states none.",
            "type": [
              "string",
              "null"
            ]
          },
          "retrieved_at": {
            "description": "When this service retrieved the upstream data (null if unknown).",
            "type": [
              "string",
              "null"
            ]
          },
          "content_sha256": {
            "type": [
              "string",
              "null"
            ]
          },
          "parser_version": {
            "type": "string"
          },
          "fetch_status": {
            "type": "string",
            "enum": [
              "found",
              "empty",
              "stale",
              "unavailable",
              "unsupported"
            ],
            "description": "found / empty / stale / unavailable / unsupported (see catalog fetch_status_values)."
          },
          "processed_by": {
            "type": "string"
          }
        },
        "required": [
          "source",
          "upstream_updated_at",
          "retrieved_at",
          "content_sha256",
          "parser_version",
          "fetch_status",
          "processed_by"
        ],
        "additionalProperties": {},
        "description": "Freshness receipt for one upstream source."
      },
      "description": "Freshness receipts for every upstream source used."
    },
    "terms": {
      "type": "string",
      "description": "URL of the terms of service."
    }
  },
  "required": [
    "server",
    "payment",
    "daily_limits",
    "paused",
    "tools",
    "legal",
    "terms"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": {}
}
🟢sanctions_screen_name(name, max_candidates)

Does this person or entity name (Latin or Japanese) appear on the Japan MOF asset-freeze list under the Foreign Exchange Act? Returns exact_match, candidates (similar names, not matches), no_match_in_checked_list or unknown (stale/unavailable), with entry ids, all name forms, program, notice dates, list version, freshness and attribution. Reference relay only: not a compliance determination or a statement that a transaction is permitted.

입력 스키마

{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "maxLength": 200,
      "description": "Name of a person or entity in Latin letters or Japanese (katakana, hiragana or kanji), e.g. 'Vladimir Putin' or 'ウラジーミル・プーチン'"
    },
    "max_candidates": {
      "description": "Maximum number of similar-name candidates to return, 1-25 (default 10)",
      "type": "integer",
      "minimum": 1,
      "maximum": 25
    }
  },
  "required": [
    "name"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

출력 스키마

{
  "type": "object",
  "properties": {
    "query": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string"
        },
        "normalized": {
          "type": "string"
        }
      },
      "required": [
        "name",
        "normalized"
      ],
      "additionalProperties": {}
    },
    "status": {
      "type": "string",
      "enum": [
        "exact_match",
        "candidates",
        "no_match_in_checked_list",
        "unknown"
      ],
      "description": "exact_match = equal after normalization to a listed name, alias or former name (identity not confirmed); candidates = similar names only, NOT matches; no_match_in_checked_list = not found in the list version checked (not a statement that a transaction is permitted); unknown = data stale, still loading or unreadable."
    },
    "unknown_reason": {
      "type": [
        "string",
        "null"
      ]
    },
    "interpretation": {
      "type": "string"
    },
    "exact_matches": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "entry_id": {
            "type": "string",
            "description": "MOF's list number, e.g. 029-000001."
          },
          "type": {
            "type": "string",
            "enum": [
              "individual",
              "entity"
            ]
          },
          "program": {
            "type": "object",
            "properties": {
              "category": {
                "type": "number"
              },
              "name_ja": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "name_en": {
                "type": [
                  "string",
                  "null"
                ]
              }
            },
            "required": [
              "category",
              "name_ja",
              "name_en"
            ],
            "additionalProperties": {}
          },
          "names": {
            "type": "object",
            "properties": {
              "name_ja": {
                "type": "string"
              },
              "name_en": {
                "type": "string"
              }
            },
            "required": [
              "name_ja",
              "name_en"
            ],
            "additionalProperties": {}
          },
          "designation": {
            "type": "object",
            "properties": {
              "first_notice_date": {
                "type": [
                  "string",
                  "null"
                ]
              }
            },
            "required": [
              "first_notice_date"
            ],
            "additionalProperties": {}
          },
          "match": {
            "type": "object",
            "properties": {
              "match_type": {
                "type": "string",
                "enum": [
                  "exact",
                  "exact_on_low_quality_alias",
                  "joined_or_spelling_variant",
                  "same_tokens_different_order",
                  "transliteration_variant",
                  "partial_name"
                ]
              },
              "score": {
                "type": "number"
              },
              "form_type": {
                "type": "string",
                "enum": [
                  "name",
                  "alias",
                  "former_name",
                  "low_quality_alias"
                ]
              }
            },
            "required": [
              "match_type",
              "score",
              "form_type"
            ],
            "additionalProperties": {}
          }
        },
        "required": [
          "entry_id",
          "type",
          "program",
          "names",
          "designation",
          "match"
        ],
        "additionalProperties": {}
      }
    },
    "candidates": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "entry_id": {
            "type": "string",
            "description": "MOF's list number, e.g. 029-000001."
          },
          "type": {
            "type": "string",
            "enum": [
              "individual",
              "entity"
            ]
          },
          "program": {
            "type": "object",
            "properties": {
              "category": {
                "type": "number"
              },
              "name_ja": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "name_en": {
                "type": [
                  "string",
                  "null"
                ]
              }
            },
            "required": [
              "category",
              "name_ja",
              "name_en"
            ],
            "additionalProperties": {}
          },
          "names": {
            "type": "object",
            "properties": {
              "name_ja": {
                "type": "string"
              },
              "name_en": {
                "type": "string"
              }
            },
            "required": [
              "name_ja",
              "name_en"
            ],
            "additionalProperties": {}
          },
          "designation": {
            "type": "object",
            "properties": {
              "first_notice_date": {
                "type": [
                  "string",
                  "null"
                ]
              }
            },
            "required": [
              "first_notice_date"
            ],
            "additionalProperties": {}
          },
          "match": {
            "type": "object",
            "properties": {
              "match_type": {
                "type": "string",
                "enum": [
                  "exact",
                  "exact_on_low_quality_alias",
                  "joined_or_spelling_variant",
                  "same_tokens_different_order",
                  "transliteration_variant",
                  "partial_name"
                ]
              },
              "score": {
                "type": "number"
              },
              "form_type": {
                "type": "string",
                "enum": [
                  "name",
                  "alias",
                  "former_name",
                  "low_quality_alias"
                ]
              }
            },
            "required": [
              "match_type",
              "score",
              "form_type"
            ],
            "additionalProperties": {}
          }
        },
        "required": [
          "entry_id",
          "type",
          "program",
          "names",
          "designation",
          "match"
        ],
        "additionalProperties": {}
      },
      "description": "Similar names. Candidates are not matches."
    },
    "candidates_total": {
      "type": "number"
    },
    "candidates_truncated": {
      "type": "boolean"
    },
    "list_version": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "sha256": {
              "type": "string"
            },
            "as_of_date": {
              "type": [
                "string",
                "null"
              ]
            },
            "observed_at": {
              "type": "string"
            }
          },
          "required": [
            "sha256",
            "as_of_date",
            "observed_at"
          ],
          "additionalProperties": {}
        },
        {
          "type": "null"
        }
      ]
    },
    "freshness": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "last_successful_check_at": {
              "type": [
                "string",
                "null"
              ]
            },
            "stale": {
              "type": "boolean"
            },
            "stale_after_hours": {
              "type": "number"
            }
          },
          "required": [
            "last_successful_check_at",
            "stale",
            "stale_after_hours"
          ],
          "additionalProperties": {}
        },
        {
          "type": "null"
        }
      ]
    },
    "history": {
      "type": "object",
      "properties": {
        "tracking_since": {
          "type": [
            "string",
            "null"
          ]
        },
        "note": {
          "type": "string"
        }
      },
      "required": [
        "tracking_since",
        "note"
      ],
      "additionalProperties": {}
    },
    "legal_notice": {
      "type": "string"
    },
    "matching_note": {
      "type": "string"
    },
    "not_covered": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "attribution": {
      "type": "object",
      "properties": {
        "source_ja": {
          "type": "string"
        },
        "processed_ja": {
          "type": "string"
        },
        "source_en": {
          "type": "string"
        },
        "terms_url": {
          "type": "string"
        },
        "license_url": {
          "type": "string"
        },
        "license_note": {
          "type": "string"
        }
      },
      "required": [
        "source_ja",
        "processed_ja",
        "source_en",
        "terms_url",
        "license_url",
        "license_note"
      ],
      "additionalProperties": {}
    },
    "answered_at": {
      "type": "string"
    },
    "provenance": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "source": {
            "type": "object",
            "properties": {
              "publisher": {
                "type": "string"
              },
              "url": {
                "type": "string"
              }
            },
            "required": [
              "publisher",
              "url"
            ],
            "additionalProperties": {},
            "description": "Publisher and URL of the upstream document or dataset."
          },
          "upstream_updated_at": {
            "description": "Update time stated by the upstream, or null when it states none.",
            "type": [
              "string",
              "null"
            ]
          },
          "retrieved_at": {
            "description": "When this service retrieved the upstream data (null if unknown).",
            "type": [
              "string",
              "null"
            ]
          },
          "content_sha256": {
            "type": [
              "string",
              "null"
            ]
          },
          "parser_version": {
            "type": "string"
          },
          "fetch_status": {
            "type": "string",
            "enum": [
              "found",
              "empty",
              "stale",
              "unavailable",
              "unsupported"
            ],
            "description": "found / empty / stale / unavailable / unsupported (see catalog fetch_status_values)."
          },
          "processed_by": {
            "type": "string"
          }
        },
        "required": [
          "source",
          "upstream_updated_at",
          "retrieved_at",
          "content_sha256",
          "parser_version",
          "fetch_status",
          "processed_by"
        ],
        "additionalProperties": {},
        "description": "Freshness receipt for one upstream source."
      },
      "description": "Freshness receipts for every upstream source used."
    },
    "terms": {
      "type": "string",
      "description": "URL of the terms of service."
    }
  },
  "required": [
    "query",
    "status",
    "unknown_reason",
    "interpretation",
    "exact_matches",
    "candidates",
    "candidates_total",
    "candidates_truncated",
    "list_version",
    "freshness",
    "history",
    "legal_notice",
    "matching_note",
    "not_covered",
    "attribution",
    "answered_at",
    "provenance",
    "terms"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": {}
}
🟢sanctions_list_changes(since, entry_id, change_type, limit)

What was added to, removed from or modified in the Japan MOF asset-freeze list since a date? From this service's own record of list versions (MOF publishes only the current list). Each change has the entry id, names, program, before/after fields and the versions compared. History starts at tracking_since; nothing earlier was observed. Free window: last 30 days (an earlier since is clamped; see history_window). Reference relay only.

입력 스키마

{
  "type": "object",
  "properties": {
    "since": {
      "type": "string",
      "maxLength": 40,
      "description": "ISO 8601 date or date-time with time zone, e.g. 2026-10-01 or 2026-10-01T00:00:00Z"
    },
    "entry_id": {
      "description": "Optional filter: MOF list number, e.g. 029-000001",
      "type": "string",
      "maxLength": 20
    },
    "change_type": {
      "description": "Optional filter: added, removed or modified",
      "type": "string",
      "enum": [
        "added",
        "removed",
        "modified"
      ]
    },
    "limit": {
      "description": "Maximum number of changes, 1-200 (default 100)",
      "type": "integer",
      "minimum": 1,
      "maximum": 200
    }
  },
  "required": [
    "since"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

출력 스키마

{
  "type": "object",
  "properties": {
    "query": {
      "type": "object",
      "properties": {
        "since": {
          "type": "string"
        }
      },
      "required": [
        "since"
      ],
      "additionalProperties": {}
    },
    "tracking_since": {
      "description": "When this service downloaded its first list version. Nothing before it was observed.",
      "type": [
        "string",
        "null"
      ]
    },
    "history_window": {
      "type": "object",
      "properties": {
        "free_days": {
          "type": "number",
          "description": "Days of recorded history served free of charge."
        },
        "requested_since": {
          "type": "string",
          "description": "The since you asked for (normalized to ISO 8601)."
        },
        "served_since": {
          "type": "string",
          "description": "The since actually applied: requested_since, or the start of the free window if requested_since was earlier."
        },
        "clamped": {
          "type": "boolean",
          "description": "true when requested_since was earlier than the free window and the answer covers only the window."
        },
        "older_history": {
          "type": "string",
          "description": "Status of recorded history older than the free window."
        }
      },
      "required": [
        "free_days",
        "requested_since",
        "served_since",
        "clamped",
        "older_history"
      ],
      "additionalProperties": {},
      "description": "Free history window applied to this answer."
    },
    "coverage": {
      "type": "object",
      "properties": {
        "since_before_tracking": {
          "type": "boolean"
        },
        "note": {
          "type": "string"
        },
        "versions_in_window": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "sha256": {
                "type": "string"
              }
            },
            "required": [
              "sha256"
            ],
            "additionalProperties": {}
          }
        }
      },
      "required": [
        "since_before_tracking",
        "note",
        "versions_in_window"
      ],
      "additionalProperties": {}
    },
    "changes": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "observed_at": {
            "type": "string"
          },
          "entry_id": {
            "type": "string"
          },
          "change_type": {
            "type": "string",
            "enum": [
              "added",
              "removed",
              "modified"
            ]
          },
          "program": {
            "type": "object",
            "properties": {
              "category": {
                "type": "number"
              },
              "name_ja": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "name_en": {
                "type": [
                  "string",
                  "null"
                ]
              }
            },
            "required": [
              "category",
              "name_ja",
              "name_en"
            ],
            "additionalProperties": {}
          },
          "list_version": {
            "type": "object",
            "properties": {
              "sha256": {
                "type": "string"
              }
            },
            "required": [
              "sha256"
            ],
            "additionalProperties": {}
          },
          "previous_version": {
            "type": "object",
            "properties": {
              "sha256": {
                "type": "string"
              }
            },
            "required": [
              "sha256"
            ],
            "additionalProperties": {}
          }
        },
        "required": [
          "observed_at",
          "entry_id",
          "change_type",
          "program",
          "list_version",
          "previous_version"
        ],
        "additionalProperties": {}
      },
      "description": "Per-entry differences between list versions observed by this service, oldest first."
    },
    "truncated": {
      "type": "boolean"
    },
    "legal_notice": {
      "type": "string"
    },
    "history_note": {
      "type": "string"
    },
    "not_covered": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "attribution": {
      "type": "object",
      "properties": {
        "source_ja": {
          "type": "string"
        },
        "processed_ja": {
          "type": "string"
        },
        "source_en": {
          "type": "string"
        },
        "terms_url": {
          "type": "string"
        },
        "license_url": {
          "type": "string"
        },
        "license_note": {
          "type": "string"
        }
      },
      "required": [
        "source_ja",
        "processed_ja",
        "source_en",
        "terms_url",
        "license_url",
        "license_note"
      ],
      "additionalProperties": {}
    },
    "answered_at": {
      "type": "string"
    },
    "provenance": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "source": {
            "type": "object",
            "properties": {
              "publisher": {
                "type": "string"
              },
              "url": {
                "type": "string"
              }
            },
            "required": [
              "publisher",
              "url"
            ],
            "additionalProperties": {},
            "description": "Publisher and URL of the upstream document or dataset."
          },
          "upstream_updated_at": {
            "description": "Update time stated by the upstream, or null when it states none.",
            "type": [
              "string",
              "null"
            ]
          },
          "retrieved_at": {
            "description": "When this service retrieved the upstream data (null if unknown).",
            "type": [
              "string",
              "null"
            ]
          },
          "content_sha256": {
            "type": [
              "string",
              "null"
            ]
          },
          "parser_version": {
            "type": "string"
          },
          "fetch_status": {
            "type": "string",
            "enum": [
              "found",
              "empty",
              "stale",
              "unavailable",
              "unsupported"
            ],
            "description": "found / empty / stale / unavailable / unsupported (see catalog fetch_status_values)."
          },
          "processed_by": {
            "type": "string"
          }
        },
        "required": [
          "source",
          "upstream_updated_at",
          "retrieved_at",
          "content_sha256",
          "parser_version",
          "fetch_status",
          "processed_by"
        ],
        "additionalProperties": {},
        "description": "Freshness receipt for one upstream source."
      },
      "description": "Freshness receipts for every upstream source used."
    },
    "terms": {
      "type": "string",
      "description": "URL of the terms of service."
    }
  },
  "required": [
    "query",
    "tracking_since",
    "history_window",
    "coverage",
    "changes",
    "truncated",
    "legal_notice",
    "history_note",
    "not_covered",
    "attribution",
    "answered_at",
    "provenance",
    "terms"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": {}
}
🟢get_receipt(receipt_id)

Re-fetch the stored result of a settled paid call by its receipt_id, for when the response was lost after payment. Free. Unknown or unsettled receipt ids return RECEIPT_NOT_FOUND. Results are kept for 90 days after settlement.

입력 스키마

{
  "type": "object",
  "properties": {
    "receipt_id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 80,
      "description": "The receipt_id returned with a paid result (\"rcpt_\" + 64 hex characters)."
    }
  },
  "required": [
    "receipt_id"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

출력 스키마

{
  "type": "object",
  "properties": {
    "receipt_id": {
      "type": "string",
      "description": "Receipt id of the settled paid call (\"rcpt_\" + 64 hex). Use with get_receipt."
    },
    "tool": {
      "type": "string",
      "description": "Name of the paid tool that produced the result."
    },
    "settled_at": {
      "type": [
        "string",
        "null"
      ]
    },
    "payment": {
      "type": "object",
      "properties": {
        "network": {
          "type": [
            "string",
            "null"
          ]
        },
        "transaction": {
          "type": [
            "string",
            "null"
          ]
        }
      },
      "required": [
        "network",
        "transaction"
      ],
      "additionalProperties": {}
    },
    "result": {
      "description": "The stored result, exactly as returned by the paid call."
    },
    "provenance": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "source": {
            "type": "object",
            "properties": {
              "publisher": {
                "type": "string"
              },
              "url": {
                "type": "string"
              }
            },
            "required": [
              "publisher",
              "url"
            ],
            "additionalProperties": {},
            "description": "Publisher and URL of the upstream document or dataset."
          },
          "upstream_updated_at": {
            "description": "Update time stated by the upstream, or null when it states none.",
            "type": [
              "string",
              "null"
            ]
          },
          "retrieved_at": {
            "description": "When this service retrieved the upstream data (null if unknown).",
            "type": [
              "string",
              "null"
            ]
          },
          "content_sha256": {
            "type": [
              "string",
              "null"
            ]
          },
          "parser_version": {
            "type": "string"
          },
          "fetch_status": {
            "type": "string",
            "enum": [
              "found",
              "empty",
              "stale",
              "unavailable",
              "unsupported"
            ],
            "description": "found / empty / stale / unavailable / unsupported (see catalog fetch_status_values)."
          },
          "processed_by": {
            "type": "string"
          }
        },
        "required": [
          "source",
          "upstream_updated_at",
          "retrieved_at",
          "content_sha256",
          "parser_version",
          "fetch_status",
          "processed_by"
        ],
        "additionalProperties": {},
        "description": "Freshness receipt for one upstream source."
      },
      "description": "Freshness receipts for every upstream source used."
    },
    "terms": {
      "type": "string",
      "description": "URL of the terms of service."
    }
  },
  "required": [
    "receipt_id",
    "tool",
    "settled_at",
    "payment",
    "result",
    "provenance",
    "terms"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": {}
}

커뮤니티

이 서버 평가하기

증거

최근 관측

검증됨버전이 기록되지 않음도구 4개