API ВЕГА
English

Korean Law MCP

42 API, объединённые в 10 инструментов. Поиск, получение и анализ корейского законодательства — законов, судебных прецедентов, муниципальных постановлений и договоров. Включает защиту от галлюцинаций LLM при проверке юридических ссылок (законов и прецедентов: наличие и содержание), проверку цитирования прецедентов (cite_check), определение применимой редакции закона на конкретную дату (applicable_law), отслеживание изменений муниципальных постановлений (ordinance_radar) и поиск законов, пришедших на смену отменённым.

MCP-сервер и CLI для официальной базы данных законодательства Кореи (법제처 Open API). Совместимы с Claude Desktop, Cursor, Windsurf, Zed и любыми клиентами с поддержкой MCP.

Корейский

Начните с одной строки: добавьте https://mcp.gomdori.app/law?oc=YOUR_KEY как пользовательский коннектор в Claude.ai или выполните npx --ignore-scripts --omit=optional korean-law-mcp setup → «Краткое руководство»

Если проект экономит вам время, поставьте ⭐ на GitHub — это поможет другим найти его.

▶ Нажмите, чтобы посмотреть на YouTube. Озвучка — на корейском языке.


v4.15.9: Решения органов по вопросам труда

  • В search_decisions и get_decision_text добавлены толкования Министерства занятости и труда (moel), решения комиссии по рассмотрению дел о страховании от производственных травм (iaciac) и решения комиссии по рассмотрению дел о страховании по безработице (eiac). Автор изменений — @adfakdjk332 (#175). Список изменений

v4.15.8: Поиск дополнительных положений

  • get_law_text(mst, jo="부칙") возвращает дополнительные положения — даты вступления в силу и переходные положения — в порядке от новых к старым. Например, дополнительные положения Конституции, статьи 1–6. Теперь оглавление и полный текст завершаются указанием количества дополнительных положений. Список изменений

v4.15.7: Даты на границе месяца и восьмизначные номера дел

  • Исправлена ошибка, из-за которой 지난달, N개월 전 и 최근 N개월 выбирали неверный месяц на границе месяца. Например, 30 марта 지난달 теперь означает февраль.

  • Исправлена обработка восьмизначных порядковых номеров дел: раньше они терялись при проверке ссылок на прецеденты, а девятизначные номера обрезались, превращаясь в номера других дел. Список изменений, задачи #169 и #170


v4.15.6: Поиск прецедентов по тексту решения

  • Для поиска прецедентов добавлен параметр search="both": он одновременно выполняет поиск по заголовкам и полному тексту, удаляет дубликаты по идентификатору прецедента и указывает, какой поиск дал каждый результат. search_decisions(domain="precedent", options={search:"both"})

  • Если поиск по заголовкам возвращает не более трёх результатов, система предлагает повторить поиск по полному тексту. Например, поиск «학원강사 근로자» дал 1 результат по заголовку и 70 — по полному тексту.

  • Исправлена обработка строки search:"2", переданной через options: раньше она интерпретировалась как поиск по заголовку. Поведение по умолчанию не изменилось. Список изменений, задача #167


v4.15.5: Границы получения данных и проверки

  • Исправлены ошибки, связанные с отсутствующими текстами прецедентов, отменой чтения кэша и границами действия закона и его редакций при выборе диапазонов статей.

  • При проверке ссылок на прецеденты теперь учитываются номера дел с пробелами; также исправлена передача кодов статей и извлечение ключевых слов.

  • Исправлены сжатие решений и обработка правовых оснований, иерархии законов и меток примеров, а также отображение ежедневных законов и терминов.

  • Предотвращена подмена исторических редакций; усилена маскировка ключей и ограничение аргументов CLI для MCP и CLI.

  • Повторно проверены все функции. Новых функций и изменений зависимостей нет. Список изменений, отчёт о проверке


v4.15.4: Полная проверка функций и исправления

  • Исправлены сопоставление номеров дел, границы кратких изложений, выбор статей и приложений, а также трёхуровневые ответы в режиме проверки цитирования.

  • Сохранены поля решений, договоров и английского законодательства; теперь пропущенные ссылки помечаются, как и неудачные поиски по сценариям.

  • Исправлены даты муниципальных постановлений и ссылки на исходные законы; восстановлено обнаружение рисков за пределами усечённых фрагментов статей.

  • Исправлены отмена HTTP-запросов и передача ключей, маршрутизация исследований по вопросам конкуренции, официальные ссылки и ввод данных CLI.

  • Проверены все 99 внутренних инструментов и 10 доступных инструментов. Новых функций и изменений зависимостей нет. Список изменений, отчёт о проверке


v4.15.3: Точность и производительность получения данных

  • Добавлен точный поиск по номеру дела и проверка резервного поиска для каждого дела; если проверка последующей обработки отключена, статус явно указывается как неподтверждённый.

  • Для получения текстов и отслеживания цитирования добавлен общий ограниченный кэш на 20 разобранных записей о прецедентах.

  • В пределах пакета запросов к статьям совместно используются выполняющиеся запросы на чтение законов.

  • Добавлены общие временные ограничения и отмена при чтении текстов; исправлены выбор статей и приложений, а также сравнение редакций по датам вступления в силу.

  • Выпуск с исправлениями, без новых функций. Список изменений, отчёт о проверке


v4.15.2: Исправления по результатам аудита последних выпусков

Аудит версий с 4.14.0 по 4.15.1 выявил случаи, когда система незаметно выдавала неверные ответы или работала медленно. Доступные инструменты и аргументы не изменились.

  • Подсказки о следующих шагах в выводе инструментов теперь ссылаются только на доступные инструменты: ранее в 22 подсказках упоминались инструменты, которых не было в списке.

  • В текстах прецедентов больше не остаются исходные теги \n, а сокращённый текст решения больше не обрывается посреди даты.

  • В поиске по истории теперь учитываются версия административного правила на указанную дату, история законов до 1997 года, повторно принятых под тем же названием, а также пометки об отмене и текущем статусе при определении редакции на заданную дату.

  • При достижении временного ограничения цепочки сохраняют уже полученные данные; временное ограничение также добавлено для document_review и статистики по законам.

  • Версия kordoc зафиксирована на 4.18.2, автоматическое OCR для PDF отключено.


v4.15.1: Приложения в соответствии с оригиналом

Парсер приложений в kordoc 4.17.0 теперь считывает их с учётом исходного оформления HWP. В 103 из 272 приложений вся страница была оформлена таблицами в рамках с невидимыми границами, из-за чего содержимое отображалось как одна большая таблица. Теперь рамки без границ преобразуются в обычный текст, таблицами остаются только части с линиями, а дроби, составленные из двух ячеек и линии, записываются в формате $\frac{…}{…}$.

  • Количество таблиц, точно соответствующих оригиналу (всего 346): HWP — с 66 до 346, PDF с law.go.kr — с 56 до 335.

  • Описание efYd в get_law_text теперь поясняет, что указанная дата (например, дата выдачи разрешения на строительство или происшествия) используется для выбора редакции, действовавшей в этот день.


v4.15.0: Определение редакции закона на заданную дату с учётом переименований

Корейские законы часто переименовывают: например, закон о пожарной безопасности с 2004 года менял название трижды. Раньше история сопоставлялась по названию, поэтому все редакции, принятые до переименования, пропадали, а applicable_law для даты 2015 года отвечал, что закон ещё не вступил в силу. Теперь редакции связываются по идентификатору закона через поиск eflaw с LID и группируются по периодам действия. По-прежнему доступны 10 инструментов; добавлены только необязательные параметры.

  • applicable_law находит законы под прежними названиями. Например, для указа о пожарной безопасности за 2015 год список истории увеличился с 9 до 79 редакций. Также появляется предупреждение, если между редакциями была полная переработка закона с перенумерацией статей.

  • get_annexes принимает параметр date и возвращает приложение к редакции, действовавшей в указанную дату, например критерии установки оборудования на момент выдачи разрешения на строительство.

  • applicable_law также работает с административными правилами, например с уведомлениями. Для стандарта пожарной безопасности спринклерных систем (NFSC 103 → NFPC 103) учитывается единая история с 2004 года. В get_admin_rule поддерживаются номера разделов в формате NFTC, например jo: "2.7.3".

  • Если efYd не соответствует дате вступления редакции в силу (например, это сегодняшняя дата или дата происшествия), get_law_text использует её как дату, на которую нужно определить редакцию, а не завершается с ошибкой.

  • verify_citations сообщает о переименовании закона, а не об его отмене; get_article_history больше не пропускает изменения, выходящие за пределы первой страницы.

  • Лимиты размера тела ответа от источника по умолчанию увеличены до 8/24 MiB — до значений, используемых на размещённом сервере. Повторный поиск приложений ускорен с 2,4 до 0,8 секунды. См. список изменений

v4.13.0 — Мониторинг реестра соответствия требованиям: с 98 вызовов до 1–2

Три отчёта о работе сервера с реестром соответствия требованиям ISO (108 законов в 8 областях):

#157 · #158 · #159 (@thkim660207-cmd). Число тестов выросло с 738 до 758.

  • search_law_bulk: принимает массив названий законов и возвращает по одной краткой строке на каждый закон: law_id · MST · effective_date · upcoming.

Передайте previous={law_id: previous_MST}, чтобы включить режим сравнения: в ответ попадут только законы, у которых изменился MST. Благодаря этому полная проверка реестра занимает один-два вызова. В конце ответа приводится JSON-снимок, который можно напрямую использовать при следующем запуске. Поправки, уже опубликованные, но ещё не вступившие в силу, не меняют текущий MST и отображаются отдельно, а не помечаются как «без изменений».

  • История поправок по статьям теперь включается по запросу (includeHistory=true — чтобы вернуть прежнее поведение). Раньше она каждый раз выводилась начиная с момента принятия закона. Для Закона об охране труда и промышленной безопасности, принятого в 1981 году, одна только эта секция превышала лимит ответа в 50k символов и обрезала нужную пользователям таблицу сравнения старой и новой редакций.

  • Для приложений, содержащих только изображения, это теперь явно указано: в некоторых уведомлениях таблицы предельных значений сбросов передаются как `` без текстового содержимого. Раньше такая запись считалась содержащей данные, что создавало условия для того, чтобы модель начала угадывать числа. Теперь в ответ включаются предупреждение, URL источника и ссылки на исходные вложения (hwpx/pdf) — API возвращал их и раньше, но код не показывал.


v4.12.0 — Пакет из 62 исправлений и устранение ситуаций, когда система ошибочно сообщает «запись не существует»

В рамках пакета проверили три направления: юридическую корректность, эффективность использования токенов и задержку ответа. Закрыто 62 зарегистрированные задачи (#88–#149, PR #150 от @humdrum00001010). Дополнительно исправлен 31 дефект, обнаруженный при проверке предметных областей перед слиянием. Число тестов выросло с 196 до 701.

Теперь сервер не заявляет об отсутствии записи, если она просто недоступна. Для инструмента юридического поиска самая опасная ошибка — не медленная работа, а утверждение, что существующего закона или судебного прецедента нет.

  • При поиске прецедентов один пустой ответ после ошибки 503 или сетевой ошибки раньше считался подтверждением отсутствия записи. Теперь решение основывается на истории наблюдений, а не на количестве попыток.

  • При сбое HTML-резервного пути сервер сообщал [NOT_FOUND] даже для существующих прецедентов, если получал страницу обслуживания или антибот-страницу. Теперь он отличает неисправность механизма восстановления от отсутствующей записи.

  • При поиске приложений HTML-ответы без предупреждения преобразовывались в пустые списки, после чего система делала вывод, что записи «нет в базе данных 법제처».

Запросы больше не зависают и не теряются целиком.

  • Для цепочек исследовательских запросов установлен тайм-аут 45 секунд (MCP_CHAIN_DEADLINE_MS). По его истечении сервер собирает все полученные результаты и возвращает частичный ответ, отмечая отсутствующие части. Раньше медленные внешние сервисы превышали тайм-аут MCP-клиента (60 секунд), из-за чего терялся весь результат.

  • Для тел запросов размером больше 2 MiB: зависание на 300 секунд → явная ошибка за 13 мс (исправлена регрессия в v4.11.0).

  • Поиск отсутствующего прецедента: 12,5 с → 2,2 с; поиск в системном дереве: 10,6–11,6 с → 6,3–8,3 с.

  • Маршрутизация запроса длиной 8,5 тыс. символов занимает 476 мс. Регулярное выражение, обработка которого на специально подобранном вводе занимала до 45,9 с, удалено.

Проверка цитат стала точнее.

  • Теперь verify_citations проверяет не только законы, но и прецеденты и различает ситуации «такой записи быть не может» и «запись не удалось проверить».

  • impact_map сопоставляет название закона, а не только номер статьи. Поэтому статья 1 군형법 больше не влияет на запрос по статье 1 형법. Неоднозначные случаи сохраняются для проверки, а не отбрасываются, в том числе распространённые в конституционном контроле ссылки на «구 OO법».

  • cite_check теперь обрабатывает правовые позиции, переданные в виде массивов или объектов. Раньше такие случаи приводили к незаметному сбою.

Приложения и поиск. Теперь доступны приложения за пределами первых 100 результатов (проверено на 도로교통법 시행규칙: приложение 28 из 263). Исключена незаметная подмена приложения 1의2 приложением 1. Объём ответов discover_tools уменьшен на 65%, при этом сохранены 10 из 10 правильных ответов.

Два изменения, заметных пользователям: даты теперь отображаются в формате 2024.01.05 вместо 2024.1.5. (пустые даты вступления в силу показываются как N/A), а discover_tools возвращает упорядоченный список ссылок.

v4.11.0 — Усиление защиты на границах обработки запросов и выпуска

Закрыты сценарии, в которых один запрос мог приводить к сотням обращений к внешним сервисам или сервер продолжал работу после отключения клиента.

  • Лимит выполнения на запрос: повторные попытки и обращения при обходе антибот-защиты используют общий лимит (MCP_MAX_UPSTREAM_REQUESTS, по умолчанию 48).

  • Передача сигнала отмены: при отключении HTTP-соединения или отмене MCP сигнал теперь передаётся инструментам, цепочкам, запросам к внешним сервисам и ожиданиям между повторными попытками.

  • Проверка пакета: перед публикацией блокируются артефакты без исходных файлов и пакеты с отсутствующими целями exports.

⚠️ Несовместимые изменения: адрес привязки HTTP по умолчанию изменён с 0.0.0.0 на 127.0.0.1; значение TRUST_PROXY по умолчанию изменено с 1 на false (принимаются только целые числа от 1 до 10); введены ограничения для входных данных get_batch_articles (20 законов, не более 50 статей для каждого и 100 статей на запрос). Подробности о переходе см. в CHANGELOG.

v4.10.0 — Для утративших силу законов теперь указываются заменившие их акты

Раньше поиск утратившего силу закона не возвращал результатов. Теперь сервер отслеживает историю изменений и сообщает причину отмены, а также действующий сводный акт, как для законов, так и для административных правил. Поэтому запросы о законах, утративших силу, больше не заканчиваются тупиком.

v4.9.7 — Устранение всплеска ошибок 429 для пользователей без собственного ключа: резервная квота на основе token bucket

Пользователи публичного сервера (mcp.gomdori.app/law), у которых нет собственного ключа 법제처, постоянно получали ошибки 429. Резервная квота серверного ключа — это общий лимит для всех пользователей без ключа, рассчитанный по фиксированному временному окну. Если несколько пользователей исчерпывали квоту в начале окна, остальные не могли отправлять запросы до его завершения. По данным измерений в production (2026-08-12), 2 из каждых 3 запросов без ключа отклонялись сразу.

  • Фиксированное окно заменено на token bucket (src/lib/rate-limit.ts): благодаря непрерывному пополнению квоты пользователь может отправить запрос через несколько секунд после её исчерпания, не дожидаясь окончания окна. Средняя пропускная способность не меняется, но кратковременные всплески запросов обрабатываются — это соответствует тому, как MCP-клиенты вызывают несколько инструментов за один ход диалога.

  • Добавлены заголовок Retry-After и время ожидания в сообщении: теперь в ответах 429 указано retry in Ns, а ответ об ограничении по IP оформлен в формате JSON-RPC. Раньше использовался обычный ответ {error}, который MCP-клиенты не могли разобрать.

  • Добавлен FALLBACK_DAILY_CAP: параметр ограничивает общий расход квоты за скользящие 24 часа. Благодаря этому можно ослабить поминутное ограничение, не подвергая риску внешнюю квоту серверного ключа. Значение 0 отключает лимит (по умолчанию).

  • Настройки публичного сервера: поминутный лимит увеличен с 30 до 120, дневной лимит составляет 43,200 (теоретический общий объём за 24 часа при прежнем лимите 30 запросов в минуту). Общий лимит не изменился, но запас для кратковременных всплесков вырос в 4 раза.

Запросы с собственным ключом 법제처 в заголовке apikey не подпадают под это ограничение (бесплатная регистрация: https://open.law.go.kr).

v4.9.0 — Три вида записи, из-за которых проверка ссылок на законы незаметно пропускалась (текущая версия)

Если verify_citations используется в конвейере как фильтр для обнаружения галлюцинаций, опаснее всего не ситуация «проверка завершилась ошибкой», а ситуация, когда проверка вообще не запускалась. Если название закона не распознано, проверка наличия статьи не выполняется, а в результате отображается только предупреждение (⚠). Поэтому даже если в том же тексте приведена вымышленная статья, отметка ✗ не появляется. Пользователи воспринимают это как «проверка пройдена». Эти три варианта записи обнаружили благодаря реальным сообщениям:

「노인장기요양보험법」 제38조제1항 및 같은 법 시행규칙 제30조
  ("Article 38(1) of the Long-Term Care Insurance Act and Article 30 of the
    Enforcement Rule of the same Act")

before  ⚠ 0 verified / 2 needs-check — matched only '119 Emergency Report ... Enforcement Rule'
after   ✓ Article 38(1) verified · ✓ Enforcement Rule Article 30 verified
        └ Article 999 in the same text → ✗ NOT_FOUND (range: 1–44) — gate actually fires
  • Сбой извлечения внутри 「…」 (#69, @BW-YU): регулярное выражение LAW_NAME_REGEX ожидает, что название закона заканчивается на $, но закрывающая скобка в конце проверяемого фрагмента мешала срабатыванию этого условия. Ранее удалялись только конечные пробелы.

  • Несовпадение интерпункта (#69, @BW-YU): в официальных названиях законов используется корейский интерпункт ㆍ(U+318D), тогда как в реальных документах, судебных решениях и текстах LLM обычно встречается ·(U+00B7). Теперь обрабатываются варианты ·ㆍ‧•・. Защита от совпадения с посторонним законом (민법→난민법) не изменилась.

  • Анафора 같은 법 (тот же закон) (#70, @gonnarun): стандартная форма записи в законах и государственных документах. При сокращении списка кандидатов оставались только окончания названий, например 시행규칙, из-за чего находились посторонние законы; предыдущее название закона при этом не учитывалось. Теперь оно наследуется, но не через пустую строку и только при наличии предшествующего упоминания: проверка по неверному закону хуже, чем отсутствие проверки. Если подходящего кандидата нет, система сообщает ⚠ law name unclear, а не помечает отсутствие результатов поиска как ✗ NOT_FOUND.

+ v4.8.0 — Пять внешних вкладов (#63–#67)

Определение закона на заданную дату, разбор истории изменений, разрешение поисковых запросов, повторные попытки и обработка отменённых законов.

v4.7.0 — Отслеживание изменений постановлений (ordinance_radar)

«Изменился закон, на основании которого принято постановление. Не устарело ли наше постановление?» Один вызов отвечает на вопрос, который ежегодно приходится выяснять сотрудникам местных органов власти.

  • Автоматическое извлечение законов, лежащих в основе постановления: анализирует статью 1 (цели) постановления и извлекает из обозначений в 「」 ссылки на базовый закон, указ и правила его исполнения, включая сокращённую форму «같은 법 시행령». Анализ только статьи о целях помогает избежать ложных срабатываний из-за ссылок на посторонние законы в таблицах приложений.

  • Сверка изменений: сравнивает текущую дату вступления в силу каждого базового закона с датой вступления в силу постановления. Если закон был изменён после вступления постановления в силу, система сообщает: «базовый закон изменён после вступления постановления в силу → проверьте необходимость пересмотра». Для последующей проверки указываются идентификаторы MST.

  • Официальный API для связывания постановлений с законами (lnkOrd) охватывает недостаточно данных, поэтому вместо него система анализирует стандартный формат ссылок в тексте постановления.

  • В этом выпуске также добавлена обработка пакетных запросов JSON-RPC: каждый вызов tools/call учитывается при расчёте квот на частоту запросов и резервные операции (устранение риска усиления нагрузки, лимит 20 вызовов на запрос через MCP_MAX_BATCH_CALLS). Кроме того, обеспечено корректное завершение работы, а в get_article_history добавлено разрешение законов с приоритетом точного совпадения.

+ v4.7.1–v4.7.4 — Исправления точности поиска и проверки ссылок на законы

  • v4.7.4: search_law больше не возвращает неподходящий закон. Распространённое название «인공지능법» не входит в официальное название «인공지능 발전과 신뢰 기반 조성 등에 관한 기본법», поэтому поиск с оператором LIKE не находил результатов. Расширенный запрос («AI법») возвращал 50 посторонних законов, игнорируя запрос. Добавлены псевдонимы и проверка hasRelatedHit: если название или псевдоним ни одного результата не совпадает с запросом, результат отклоняется.

  • v4.7.2: verify_citations мог возвращать PARTIAL_VERIFIED и тем самым пропускать галлюцинации, если перед названием закона стояло уточняющее слово («절도죄는 형법 제329조…»). Исправлено: система повторно вызывает findLaws, постепенно удаляя начальные слова (#55). Также исправлены проблемы в hono (5 рекомендаций HIGH, #54).

  • v4.7.1: legal_research теперь обрабатывает значение scenario, ошибочно переданное вместо task, и не прерывает вызов инструмента. В ordinance_radar добавлен псевдоним query (по отзывам в рамках проверки PlayMCP).

v4.6.0 — Более глубокая проверка содержания ссылок на законы и защита от антибот-систем в облаке

  • Проверка содержания в verify_citations: теперь система не только подтверждает существование статьи, но и обнаруживает галлюцинации в её содержании, например 민법 제750조(계약해제): статья 750 существует, но указано неверное название. Система сравнивает название цитируемой статьи с фактическим и отмечает несовпадение как [CONTENT_MISMATCH]. Для этого используется citation-content-matcher из LexDiff (нормализованная общая подстрока и коэффициент Жаккара для символьных биграмм). Такая же проверка выполняется в legal_analysis(mode=verify_citations).

  • Обход JS-антибота law.go.kr: если 법제처 вместо данных API возвращает облачным IP-адресам (GCP/AWS/Fly) JS-перенаправление location.assign, клиент разбирает запутанный URL и переходит по ссылке с токеном (до 3 переходов; при ответе 404 повторяет запрос к исходному URL). Для локальных IP-адресов и зарегистрированных IP-адресов механизм не активируется. Это дополнительный уровень защиты для облачных развёртываний, где недостаточно подмены Referer (v4.0.9).

v4.5.0 — Обнаружение законов, которые вступят в силу в будущем (предотвращает ошибки «переименованный закон не найден»)

search_law выполняет дополнительный поиск с target=eflaw (дата вступления в силу) и дополняет результаты.

  • Ожидающее вступления в силу переименование: например, «데이터기반행정 활성화에 관한 법률» → «인공지능 및 데이터 기반 행정 활성화에 관한 법률» (вступает в силу 2026-08-28). Система сопоставляет прежнее и новое названия, чтобы при поиске по новому названию результат не ограничивался сообщением об отсутствии точного совпадения, которое может привести LLM к неверному выводу, что закона не существует.

  • Ожидающая вступления в силу поправка: если для действующего закона подготовлена поправка, которая ещё не вступила в силу, система показывает дату вступления в силу, номер обнародования и MST будущей редакции.

  • Новый закон, ещё не вступивший в силу: отдельно отмечаются обнародованные, но ещё не вступившие в силу законы, которые не попадают в результаты обычного поиска по действующему законодательству. Также отображается предупреждение об отсутствии юридической силы.

v4.4.1–4.4.3 — Исправления стабильности

  • v4.4.3: версия zod зафиксирована на ^4. Это устраняет сбой, при котором после чистой установки версия zod 3.x вызывала ошибку z.toJSONSchema is not a function при первом вызове listTools.

  • v4.4.2: восстановлен get_annexes для таблиц и форм административных правил: сначала анализируется ключ admrulbyl, автоматически распознаются названия, оканчивающиеся на «...시행세칙», а совпадения таблиц и форм с одинаковым bylSeq разделяются (#50/#49/#51).

  • v4.4.1: исправлена ошибка в поле required рекламируемой схемы: поля .default() (legal_research.task, search_law.display) ошибочно отображались как обязательные входные параметры. Проблема исправлена с помощью io:"input". Также добавлена передача параметров стоимости legal_analysis и предупреждения о несовместимых сценариях.

v4.4.0 — Число доступных инструментов сокращено с 19 до 9 (контекст уменьшен на 52%)

Размер данных ListTools, которые каждый MCP-клиент получает при запуске сеанса, сокращён примерно с 15,1 КБ до 7,2 КБ.

  • 8 инструментов chain_* объединены в один — legal_research (параметр task: full_research·law_system·action_basis·dispute_prep·amendment_track·ordinance_compare·procedure_detail·document_review)

  • 4 ключевые возможности (verify_citations·cite_check·applicable_law·impact_map) объединены в один инструмент — legal_analysis (параметр mode)

  • Обратная совместимость: прямой вызов по имени инструмента и маршрутизация через execute_tool по-прежнему поддерживаются; изменился только список рекламируемых инструментов.

Новое в v4.3 — Поиск по судебным прецедентам и законодательство на заданную дату

cite_check — «Сохраняет ли этот судебный прецедент силу?» (корейский аналог Shepard's)

Передайте номер дела, например 2007다27670. Система находит все более поздние решения, в которых цитируется это дело, с помощью полнотекстового поиска, тщательно проверяет решения пленума на предмет формулировок об изменении практики («…변경하기로 한다») и отслеживает ссылки под другими названиями, например «(이하 '2008년 전원합의체 판결'이라 한다)». Результат: ✅ продолжает цитироваться / ⚠️ есть последующее решение пленума / ❌ обнаружено изменение практики. Система также показывает точный контекст правовой позиции.

applicable_law — «Какая редакция закона применяется к дате моего дела?»

Передайте закон и дату. Система определяет редакцию, действовавшую на указанную дату (MST), получает текст статьи в той редакции, сравнивает его с текущим текстом и извлекает переходные положения (적용례·경과조치) из дополнений ко всем последующим поправкам. Также приводятся рекомендации по применению закона во времени (статья 1 Criminal Act и статья 14 General Act on Public Administration).


v3.5 — Защита от вымышленных ссылок на статьи законов

В реальном времени выявляет вымышленные ссылки на статьи законов в ответах ИИ. Проверяет каждую ссылку по официальной базе законодательства Кореи.

"Согласно статье 750 Гражданского кодекса, можно требовать возмещения ущерба за причинение вреда;
 пункт 1 статьи 60 Закона о трудовых стандартах предусматривает ежегодный отпуск;
 пункт 7 статьи 401-2 Коммерческого кодекса устанавливает ответственность директоров;
 статья 9999 Уголовного кодекса предусматривает усиленное наказание."

→ Запустите verify_citations (результат фактической проверки по API 법제처):

  • ✓ Статья 750 Гражданского кодекса (ответственность за причинение вреда) — существует

  • ✓ Статья 60 Закона о трудовых стандартах (ежегодный оплачиваемый отпуск), пункт 1 — существует

  • ✗ Коммерческий кодекс, статья 401-2 — пункта 7 не существует (максимум — пункт 2)

  • ✗ Уголовный кодекс, статья 9999 — такой статьи нет (действительный диапазон: статьи 1–372)

Не доверяйте ответам ChatGPT и Claude о законодательстве без проверки. Это необходимая проверка надежности для юридических ИИ-сервисов, юридических фирм, студентов и при анализе договоров.


Новое в v3.2.0+ — интеллектуальные сценарии

Те же 10 инструментов, 9 сценариев анализа. Просто сформулируйте запрос на естественном языке — ИИ определит, что вам нужно, и автоматически выполнит дополнительный анализ.

СпроситеПолучите
«Можно ли снизить штраф по Закону о санитарии пищевых продуктов?»Шкала штрафов + статьи о нарушениях + решения по апелляциям, в которых штрафы были снижены
«Проверка импорта и таможенных пошлин по FTA»Таможенный кодекс + разъяснения таможенных органов + договоры FTA + таблицы тарифов + решения налогового трибунала
«Порядок получения разрешения по Закону о строительстве»Правовая основа (закон → указ → правило) + сборы и формы + административные правила + исключения в местных постановлениях
«Делегирование полномочий по Закону о национальном медицинском страховании»Поиск делегированных положений, для которых еще не приняты исполнительные указы
«Анализ влияния Закона о строительстве»Подзаконные акты + затронутые местные постановления по всей стране + связанные административные правила
«Хронология поправок к Закону о трудовых стандартах»Сравнение старой и новой редакций + история статей + прецеденты и разъяснения в хронологическом порядке
«Проверка соответствия постановлению о парковках»Решения Конституционного суда + отмены по итогам административных апелляций + положения базового закона

Порядок использования не меняется. Задавайте вопросы обычным языком и автоматически получайте более глубокий анализ.

Изменения в v3.3.0~v3.3.1

v3.3.1 — расширен словарь альтернативных названий законов (с 11 до 52 записей, +41)

Изменение стало ответом на случай галлюцинации lexdiff: «산안기준규칙» (Правила о стандартах охраны труда и безопасности) было сопоставлено по ключевым словам с «국가표준기본법» через aiSearch в Korea Law Open API. В lib/search-normalizer.ts расширен список LAW_ALIAS_ENTRIES: добавлены часто используемые сокращения для трудового законодательства и охраны труда (산안법, 중처법, 근기법), защиты персональных данных и телекоммуникаций (개보법, 정보통신망법), борьбы с коррупцией (청탁금지법, 이해충돌방지법), государственных закупок (국가계약법, 지방계약법), недвижимости (주임법, 상임법, 부거법), антимонопольного регулирования (공정거래법, 하도급법, 약관법, 표시광고법, 가맹사업법), финансов (자본시장법, 특금법, 전금법), городского планирования (국토계획법, 도정법), охраны окружающей среды и здоровья (감염병예방법, 대기환경법), транспорта (여객운수법, 화물운수법), судопроизводства (민소법, 형소법, 민집법), социального страхования (국건법, 산재보험법, 고보법) и телекоммуникаций (전기통신사업법). Поскольку api-client.ts и law-parser.ts уже используют resolveLawAlias(), улучшение автоматически применяется в существующем конвейере поиска. Все 45 тестов пройдены: 41 новый и 4 регрессионных.

v3.3.0 — режим HTTP без сохранения состояния + kordoc 2.3.0

Устранена первопричина периодической потери сессий удаленным сервером (korean-law-mcp.fly.dev) из-за перезапусков, вызванных нехваткой памяти. Сервер переведен на официальный stateless-подход MCP (sessionIdGenerator: undefined): для каждого запроса создаются новые Server + Transport, которые освобождаются после закрытия ответа. Удалены карта сессий в памяти, InMemoryEventStore и очистка неактивных сессий — таким образом устранены сами источники утечек. Сервер устойчив к перезапускам, масштабированию и последовательным развертываниям без прерывания работы клиентов. Запросы GET /mcp и DELETE /mcp возвращают 405, как и в примере SDK. API keys изолируются для каждого запроса с помощью AsyncLocalStorage.

  • Переход HTTP на режим без сохранения состояния — src/server/http-server.ts (пример: @modelcontextprotocol/sdk/examples/server/simpleStatelessStreamableHttp.js)

  • Обновление kordoc с 2.2.5 до 2.3.0

  • Удален код управления сессиями — карта sessions, MAX_SESSIONS, setInterval для очистки бездействующих сессий через 10 минут, InMemoryEventStore, ветвление POST/GET/DELETE (в итоге примерно на 50 строк кода меньше)

v3.2.2 — прямое предоставление get_annexes. Автоматическая загрузка приложений при наличии ключевых слов, связанных с возвратом средств или сборами.

v3.2.1 — обновление kordoc до версии 2.2.5.

Изменения в v3.1.0~v3.1.5

v3.1.5 — kordoc 2.2.4 + обновление README.

v3.1.4 — обновление kordoc до версии 2.2.4. Обработка HTML `` для объединенных ячеек, улучшения markdownToHwpx.

v3.1.3 — подсказки при пустых результатах поиска для 18 инструментов. Уменьшен интервал очистки сессий.

v3.1.2 — обновление kordoc до версии 2.2.1. Экранирование таблиц GFM.

v3.1.1 — обновление kordoc с версии 2.1 до 2.2.

v3.1.0 — подготовка к промышленной эксплуатации: исправления в 20 файлах.

v3.1.3 — подсказки при пустых результатах поиска для 18 инструментов. Интервал очистки сессий уменьшен с 30 до 10 минут.

v3.1.2 — обновление kordoc до версии 2.2.1. Экранирование специальных символов в таблицах GFM и предотвращение конфликтов с символом вертикальной черты.

v3.1.1 — обновление kordoc с версии 2.1 до 2.2.

v3.1.0 — подготовка к промышленной эксплуатации: исправления в 20 файлах. Ограничение truncateResponse в 50 КБ применено к 17 инструментам, добавлен лимит HTTP-сессий (MAX_SESSIONS=100), предупреждение об использовании подстановочного знака CORS, защита от загрязнения параметров, передача ошибок авторизации в цепочечных инструментах, удаление неиспользуемого кода SSE-сервера.

Изменения в v3.0.x

В v2 41 юридический API был структурирован в 89 инструментов MCP. В v3 они объединены в 14 инструментов.

Исходные APIv2v3
Количество инструментов418914
Объем контекста ИИ-~110 КБ~20 КБ
Охват-100%100%
Управление профилями-разделение на lite/fullЕдиный вариант (не требуется)

Что изменилось: 34 отдельных инструмента поиска и получения данных о прецедентах, Конституционном суде, налоговом трибунале, FTC и других темах объединены в 2 инструмента: search_decisions(domain) + get_decision_text(domain). Они охватывают 17 областей с помощью одного параметра domain.

  • Обновление kordoc с версии 1.6 до 2.2.5 — обновлен механизм обработки документов: поддержка XLSX/DOCX, повышение безопасности, заполнение форм

  • Исправления ошибок — получение текстов решений по административным апелляциям и английских текстов законов

v2.2.0

  • 23 новых инструмента (с 64 до 87) — договоры, связи между законами и постановлениями, ведомственные правила, специальные административные апелляции, анализ документов и многое другое.

  • Механизм анализа документов — 8 типов документов, 17 правил проверки рисков, извлечение сумм и сроков, выявление противоречий между пунктами.

  • Связи между законами и постановлениями (4 инструмента) — отслеживание цепочек делегирования полномочий между национальными законами и местными постановлениями.

  • Поддержка договоров (2 инструмента) — поиск и получение двусторонних и многосторонних договоров.

  • Усиление безопасности — контроль источников CORS, передача API key только в заголовке, заголовки безопасности, маскирование идентификаторов сессий.

Возможности v1.8.0 – v1.9.0

  • 8 цепочечных инструментов — составные рабочие процессы для исследования права, выполняемые одним вызовом: chain_full_research (поиск ИИ → законы → прецеденты → разъяснения), chain_law_system, chain_action_basis, chain_dispute_prep, chain_amendment_track, chain_ordinance_compare, chain_procedure_detail.

  • Пакетное получение статей — get_batch_articles принимает массив laws для запросов по нескольким законам за один вызов.

  • Фильтр типов для поиска с помощью ИИ — search_ai_law теперь поддерживает фильтр lawTypes.

  • Структурированный формат ошибок — для всех 64 инструментов используется формат [ErrorCode] + имя инструмента + рекомендация.

  • Исправление обработки таблиц HWP — устаревший парсер HWP теперь извлекает таблицы из пути paragraph.controls[].content.


Зачем нужен этот проект

В Южной Корее действует более 1 600 законов и более 10 000 административных правил. Система прецедентов включает решения Верховного суда и Конституционного суда, налоговых трибуналов и таможенных органов. Все эти данные доступны через неудобный государственный API, которым сложно пользоваться разработчикам.

Этот проект объединяет всю правовую систему в 10 инструментов, доступных любому ИИ-ассистенту или скрипту. Его создал корейский государственный служащий, которому надоело в сотый раз вручную искать информацию на 법제처.


Быстрый старт

Вариант 1: MCP-сервер (Claude Desktop / Cursor / Windsurf)

Автоматическая настройка (рекомендуется):

npx --ignore-scripts --omit=optional korean-law-mcp setup

Интерактивный мастер поможет указать API key, выбрать клиент и зарегистрировать конфигурационный файл.

Поддерживаются Claude Desktop, Claude Code, Cursor, VS Code, Windsurf, Gemini CLI, Zed и Antigravity.

Конфигурационные файлы в папке проекта (.mcp.json для Claude Code и .vscode/mcp.json для VS Code) можно добавить в git: API key не будет записан в открытом виде.

Claude Code получает ссылку ${LAW_OC} — добавьте export LAW_OC=your-key в файл профиля оболочки. При первом запуске VS Code запросит API key.

Ручная настройка:

npm install --ignore-scripts --omit=optional -g korean-law-mcp

Добавьте запись в конфигурацию MCP-клиента:

{
  "mcpServers": {
    "korean-law": {
      "command": "korean-law-mcp",
      "env": {
        "LAW_OC": "your-api-key"
      }
    }
  }
}

Получите бесплатный API key на сайте 법제처 Open API.

КлиентКонфигурационный файл
Claude Desktop%APPDATA%\Claude\claude_desktop_config.json (Win) / ~/Library/Application Support/Claude/claude_desktop_config.json (Mac)
Cursor.cursor/mcp.json
Windsurf.windsurf/mcp.json
Continue~/.continue/config.json
Zed~/.config/zed/settings.json

Вариант 2: удалённое подключение (без установки)

Claude Desktop не поддерживает удалённые HTTP-серверы MCP напрямую. Используйте адаптер mcp-remote (для npx требуется Node.js версии 18 или выше):

{
  "mcpServers": {
    "korean-law": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://mcp.gomdori.app/law?oc=your-api-key"
      ]
    }
  }
}

Cursor, Windsurf и другие клиенты с поддержкой удалённого HTTP-подключения — используйте URL напрямую:

{
  "mcpServers": {
    "korean-law": {
      "url": "https://mcp.gomdori.app/law?oc=your-api-key"
    }
  }
}

Для веб-клиентов (Claude.ai и других) — используйте тот же URL. По умолчанию доступны только 10 инструментов; выбирать профиль не нужно.

10 инструментов (исследование, анализ, 3 инструмента по законам, радар муниципальных нормативных актов, 2 универсальных и 2 служебных) охватывают все 42 API. Для доступа к специализированным инструментам используйте discover_tools → execute_tool.

Передача API key (в порядке приоритета):

МетодПримерПримечания
Параметр URL?oc=your-keyСамый простой способ для веб-клиентов. Применяется ко всему сеансу автоматически
HTTP-заголовокapikey: your-keyТакже поддерживаются law-oc, x-api-key и Authorization: Bearer
Параметр инструментаapiKey: "your-key"Переопределение для отдельного инструмента

Получите бесплатный API key на сайте 법제처 Open API.

Вариант 3: CLI

npm install --ignore-scripts --omit=optional -g korean-law-mcp
export LAW_OC=your-api-key

korean-law search_law --query "관세법"
korean-law get_law_text --mst 160001 --jo "제38조"
korean-law search_precedents --query "부당해고"
korean-law list                          # all tools
korean-law list --category 판례          # filter by category
korean-law help search_law               # tool help

Вариант 4: Docker

docker build -t korean-law-mcp .
docker run -e LAW_OC=your-api-key -e MCP_HTTP_HOST=0.0.0.0 \
  -e MCP_AUTH_TOKEN=replace-with-a-secret -p 3000:3000 korean-law-mcp

Структура инструментов (10 инструментов)

В версии v4.4.0 число объявляемых инструментов было сокращено, что уменьшило расход контекста на 52%. Прежние 8 инструментов chain_* стали значениями task инструмента legal_research, а 4 функции анализа — значениями mode инструмента legal_analysis. Другие специализированные инструменты по-прежнему доступны через discover_tools → execute_tool. Для обратной совместимости можно вызывать и старые названия инструментов. В версии v4.7.0 добавлен ordinance_radar, доведя общее число инструментов до 10.

КатегорияИнструментОписание
Исследование (1)legal_researchМногоэтапное правовое исследование — выберите одно из 8 значений task
Анализ (1)legal_analysisПроверка и анализ — выберите одно из 4 значений mode
Законы (3)search_lawПоиск законов → получение lawId и MST
get_law_textПолучение полного текста статьи
get_annexesПолучение приложений и форм (таблиц сборов и тарифов, бланков; укажите date, чтобы получить редакцию, действовавшую на эту дату)
Муниципальные нормативные акты (1)ordinance_radarОтслеживание изменений муниципальных нормативных актов: автоматически сравнивает упомянутые в них законы верхнего уровня (v4.7.0)
Универсальные (2)search_decisionsЕдиный поиск по 18 категориям: судебные прецеденты, Конституционный суд, налоговый трибунал, NTS, FTC, NLRC, таможня, разъяснения, административные апелляции, PIPC, ACR, специальные дела ACR, пересмотр апелляций, школьные правила, государственные корпорации, государственные учреждения, договоры и законодательство на английском языке
get_decision_textПолучение полного текста документов из 18 категорий
Служебные (2)discover_toolsПоиск специализированных инструментов (термины, приложения, история, сравнение и другие)
execute_toolЗапуск найденного специализированного инструмента

Примеры использования

User: "관세법 제38조 알려줘"
→ search_law("관세법") → get_law_text(mst, jo="003800")

User: "화관법 최근 개정 비교"
→ "화관법" → "화학물질관리법" auto-resolved → compare_old_new(mst)

User: "근로기준법 제74조 해석례"
→ search_interpretations("근로기준법 제74조") → get_interpretation_text(id)

User: "산업안전보건법 별표1 내용"
→ get_annexes("산업안전보건법 별표1") → HWPX download → Markdown table

Возможности

  • 42 API → 10 инструментов — законы, судебные прецеденты, административные правила, муниципальные нормативные акты, решения Конституционного суда, налоговые разъяснения, таможенные толкования, договоры, правила учреждений и юридическая терминология

  • MCP + CLI — используйте сервер из Claude Desktop или командной строки

  • 17 категорий решений — search_decisions позволяет искать судебные прецеденты, решения Конституционного суда и налогового трибунала, материалы FTC, NLRC и таможни, а также документы ещё из 11 категорий

  • Анализ корейского законодательства — автоматически распознаёт сокращения (화관법 → 화학물질관리법), преобразует номера статей (제38조 ↔ 003800) и визуализирует трёхуровневое делегирование полномочий

  • Извлечение приложений — загружает приложения в форматах HWPX/HWP/PDF/XLSX/DOCX и преобразует их в Markdown с помощью движка kordoc

  • 8 инструментов для цепочек операций — объединяют несколько этапов исследования в один вызов (например, chain_full_research: поиск с помощью AI → законы → судебные прецеденты → разъяснения)

  • Кэширование — результаты поиска хранятся в кэше 1 час, тексты статей — 24 часа

  • Удалённая конечная точка — подключайтесь без установки по адресу https://mcp.gomdori.app/law (прежняя конечная точка korean-law-mcp.fly.dev/mcp сохраняет обратную совместимость)


Переменные окружения

ПеременнаяОбязательнаяЗначение по умолчаниюОписание
LAW_OCДа—API key 법제처 (получить бесплатно)
PORTНет8000Порт HTTP-сервера
CORS_ORIGINНет*Разрешённый источник CORS. Если указать значение явно, этот источник также будет принят при проверке Origin
ALLOWED_ORIGINSНет—Список разрешённых источников, разделённых запятыми. Запросы с заголовком Origin отклоняются, если источник не включён в список (защита от DNS rebinding)
MCP_AUTH_TOKENНет—Если задано значение, для доступа к /mcp требуется x-mcp-token или Authorization: Bearer. Обязательно для развёртываний за пределами локального интерфейса, если явно не задано иное
MCP_HTTP_HOSTНет127.0.0.1Адрес привязки. Для адреса за пределами локального интерфейса требуется MCP_AUTH_TOKEN, если не задано указанное ниже намеренное переопределение
MCP_ALLOW_UNAUTHENTICATED_REMOTEНет0Установите значение 1 только для намеренно открытого развёртывания за пределами локального интерфейса без аутентификации доступа к MCP
TRUST_PROXYНетfalseУкажите положительное число промежуточных прокси (например, 1 при использовании одного прокси Fly/ingress). Не используйте true или all
ALLOW_QUERY_API_KEYНет1Установите значение 0, чтобы запретить API key в строке запроса ?oc= (ключ может попасть в журналы доступа прокси)
ACCESS_LOGНет0Установите значение 1, чтобы записывать каждый запрос в журнал. В журнал попадает только req.path, без строки запроса, поэтому ключ oc= туда не попадёт
RATE_LIMIT_RPMНет60Вызовы инструментов в минуту на один IP-адрес. Значение 0 отключает только ограничение на число запросов с одного IP; ограничения на пакетные вызовы и выполнение остаются активными
MCP_MAX_BATCH_CALLSНет20Максимальное число элементов tools/call в одном HTTP-конверте JSON-RPC
MCP_MAX_BODY_BYTESНет102400Максимальный размер входящего JSON-запроса. Для совместимости также поддерживается прежняя переменная MCP_BODY_LIMIT (100kb и другие значения)
MCP_MAX_UPSTREAM_REQUESTSНет48Общий лимит попыток отправки запросов к внешним сервисам на один запрос, включая повторы и переходы при защите от ботов
MCP_MAX_UPSTREAM_BODY_BYTESНет2097152Максимальный объём данных, считываемых из тела одного ответа внешнего сервиса
MCP_MAX_TOTAL_UPSTREAM_BODY_BYTESНет8388608Максимальный суммарный объём данных из тел ответов внешних сервисов, считываемых для одного внешнего запроса
MCP_MAX_TOOL_RESPONSE_CHARSНет50000Максимальное число символов в ответе инструмента MCP

Все числовые ограничения проверяются при запуске: значения должны быть целыми числами. При некорректном значении запуск завершается с ошибкой, а ограничение не ослабляется. legal_research и другие документированные инструменты для цепочек операций используют общий лимит в 48 попыток на запрос; пакетные элементы JSON-RPC учитываются совместно, но каждый из них сохраняет собственный сигнал отмены MCP.

Параметры развертывания HTTP по умолчанию

По умолчанию HTTP-режим работает локально: сервер принимает подключения только на 127.0.0.1, не доверяет заголовку X-Forwarded-For, а проверка токена для такого режима, ограниченного loopback-интерфейсом, необязательна. Для развертывания за обратным прокси явно укажите публичный адрес привязки и точное количество доверенных промежуточных узлов. Например:

MCP_HTTP_HOST=0.0.0.0 TRUST_PROXY=1 MCP_AUTH_TOKEN=replace-with-a-secret \
  korean-law-mcp --mode http --port 8000

Параметр MCP_ALLOW_UNAUTHENTICATED_REMOTE=1 позволяет сохранить намеренно открытые для доступа удалённые развертывания, созданные по прежней схеме. При запуске сервер выдаст предупреждение. Используйте этот параметр только при наличии другого уровня контроля доступа.

Границы зависимостей и установки

kordoc остаётся в составе проекта, поскольку разбор приложений к документам — доступная функция сервера. Проверенная версия pdfjs-dist@4.10.38 на чистом JavaScript закреплена как обычная зависимость; серверу не требуются дополнительные средства OCR, машинного обучения и нативные модули. При установке плагина, документированной установке и установке через Docker используются параметры --omit=optional --ignore-scripts. В CI и при публикации сохраняются привязки необязательных инструментов разработки, а проверка выполняется с отключёнными скриптами. Затем зависимости сокращаются до производственного набора, после чего запускается smoke-тест обработки PDF-приложений. Отчёты сканеров по транзитивным пакетам HTTP-фреймворков следует оценивать с учётом доступного серверу пути выполнения, а не считать доказательством того, что сервер использует уязвимое промежуточное ПО.

Часто задаваемые вопросы

Как искать корейские законы и судебные прецеденты с помощью Claude или ChatGPT?

Подключите этот MCP-сервер. В Claude.ai добавьте https://mcp.gomdori.app/law?oc=YOUR_KEY как пользовательский коннектор. Инструкции для Claude Desktop, Cursor, Windsurf и Zed см. в разделе «Краткое руководство»; для ChatGPT — в видеоинструкции (озвучка на корейском).

Это бесплатно?

Да. Код распространяется по лицензии MIT, а необходимый ему ключ Open API от 법제처 предоставляется бесплатно (open.law.go.kr).

Может ли сервер выявлять вымышленные языковой моделью ссылки на законодательство?

legal_analysis(mode="verify_citations") проверяет указанные в тексте статьи законов и номера судебных дел по официальным данным 법제처: существуют ли они и соответствует ли им содержание текста. mode="cite_check" позволяет узнать, сохраняет ли прецедент юридическую силу.

Какие материалы охватывает сервер?

Законы, судебные прецеденты, административные правила, местные постановления, договоры и правовые толкования, в том числе от Национальной налоговой службы, а также приложения и формы. Сервер также находит прежние редакции законов и указывает, какие акты пришли на смену отменённым.

Документация

Благодарности

  • 법제처 Open API — официальная правовая база Кореи

  • Anthropic — Model Context Protocol

  • kordoc — парсер HWP/HWPX от того же автора

Лицензия

MIT


Создано корейским госслужащим из AI-клуба администрации округа Кванжингу — AI.Do.