laws
Кодексы и законы РФ: поиск по смыслу
Поиск по законодательству Российской Федерации (24 кодекса и 563 закона) обычными словами. Спрашиваете «что грозит за неуплату алиментов» — получаете статью 115 Семейного кодекса, хотя дословно этих слов в ней нет. Работает без интернета, целиком на вашей машине: ни запросы, ни тексты никуда не уходят.
Искать можно двумя способами: из терминала одной командой или подключив репозиторий к Claude Code как MCP-сервер — тогда поиск доступен прямо в разговоре.
Что внутри
data/ тексты документов, разобранные по статьям (29 039 статей, каждая — отдельный JSON)
CATALOG.md перечень всех документов сборки: редакция, число статей, slug для поиска
index/ векторный индекс: по нему и идёт поиск
src/ сам поиск — MCP-сервер, команда для терминала и общий код под нимиТексты выгружены 25 сентября 2026 года — редакции актуальны на эту дату. Источник — официальный
портал pravo.gov.ru, консолидированные тексты из «Эталонного банка правовой информации».
Дата редакции каждого документа по отдельности видна командой --codes-list (см. ниже)
и в CATALOG.md: документы меняются в разное время, и у некоторых последняя редакция заметно
старше даты выгрузки.
Related MCP server: code-memory-rs
Подготовка (один раз)
Нужен Python 3.11 или новее. Видеокарта не нужна — всё считается на процессоре.
# создать виртуальное окружение
python -m venv .venvДальше самое простое — попросить Claude Code: /x-prepare-system. Скилл поставит
библиотеки, скачает модели и проверит, что всё работает.
То же самое одной командой, если Claude Code под рукой нет:
# Windows
.\setup.cmd --install
# Linux и macOS
./setup --installСкачается поисковая модель (~2,3 ГБ) и вспомогательная модель-переоценщик (~0,5 ГБ). Это единственный шаг, которому нужен интернет. В репозиторий модели не входят — они слишком велики для git.
Проверить готовность в любой момент: та же команда без --install ничего не меняет,
только рассказывает, что на месте, а чего не хватает.
# Windows
.\setup.cmd
# Linux и macOS
./setupПопробовать прямо в терминале
В комплекте есть короткая обёртка — она сама подставляет пути и кодировку:
# Windows
.\laws.cmd "что грозит за неуплату алиментов"
# Linux и macOS
./laws "что грозит за неуплату алиментов"Ответ выглядит так:
=== что грозит за неуплату алиментов ===
1. sk-rf ст. 115 — Ответственность за несвоевременную уплату алиментов [0.0164]
РАЗДЕЛ V. АЛИМЕНТНЫЕ ОБЯЗАТЕЛЬСТВА > ГЛАВА 17. ПОРЯДОК УПЛАТЫ И ВЗЫСКАНИЯ | действует
1. При образовании задолженности по вине лица, обязанного уплачивать алименты...Что ещё умеет команда (на Linux и macOS вместо .\laws.cmd пишите ./laws):
# несколько вопросов за один запуск: так быстрее, модель грузится один раз
.\laws.cmd "увольнение по собственному желанию" "продолжительность отпуска"
# статья целиком, по номеру
.\laws.cmd --article uk-rf:105
# искать только в одном документе
.\laws.cmd --code=koap-rf "превышение скорости"
# список документов с датами редакций
.\laws.cmd --codes-list
# точнее на расплывчатых вопросах, но на 4 секунды медленнее
.\laws.cmd --rerank "сосед залил квартиру кто возмещает ущерб"
# показать и статьи, утратившие силу: по умолчанию они скрыты
.\laws.cmd --repealed "запрос"Первый запрос занимает около 6 секунд — столько грузится модель. Дальше, если вопросов несколько в одной команде, каждый следующий считается за 0,2 секунды.
Совет по формулировкам: пишите вопрос так, как спросили бы человека, а не ключевыми словами.
И помните, что одно и то же слово живёт в разных документах — «испытательный срок» найдёт
и трудовой, и условное осуждение из Уголовного кодекса. Если знаете, где искать, добавьте
--code=tk-rf.
Если обёртка почему-то не подходит, то же самое полной командой:
# Windows, PowerShell
$env:PYTHONPATH="src"; $env:PYTHONIOENCODING="utf-8"
.venv\Scripts\python.exe -m laws_mcp.cli "вопрос"# Linux и macOS
PYTHONPATH=src .venv/bin/python -m laws_mcp.cli "вопрос"Подключить к Claude Code (MCP-сервер)
Если поиском пользуетесь часто, удобнее поднять сервер: модель останется в памяти, и каждый запрос будет занимать доли секунды вместо шести.
Проще всего попросить Claude Code: /x-run-mcp — скилл подключит и проверит.
Вручную — одной строкой:
# Windows, PowerShell
claude mcp add laws -e PYTHONPATH=C:\путь\к\репозиторию\src -e LAWS_ROOT=C:\путь\к\репозиторию -e PYTHONIOENCODING=utf-8 -- C:\путь\к\репозиторию\.venv\Scripts\python.exe -m laws_mcp.server# Linux и macOS
claude mcp add laws -e PYTHONPATH=/путь/к/репозиторию/src -e LAWS_ROOT=/путь/к/репозиторию -- /путь/к/репозиторию/.venv/bin/python -m laws_mcp.serverПути обязательно полные: Claude Code запускает сервер из своего каталога, и относительные пути не найдутся. После подключения перезапустите сессию — список инструментов читается при старте.
Сервер даёт три инструмента: найти статьи по смыслу, показать статью целиком по номеру и перечислить документы сборки.
Что этот поиск не умеет
Стоит знать заранее, чтобы не полагаться на него зря:
Только законы, и не всё законодательство. Внутри — кодексы и федеральные законы (24 кодекса и 563 закона), их перечень целиком лежит в
CATALOG.md. Подзаконных актов (постановлений Правительства, приказов ведомств), регионального законодательства, судебной практики и разъяснений Пленума Верховного Суда здесь нет и найти их нельзя.Ответ верен на дату выгрузки. Право меняется; дату показывает
--codes-list.Это поиск, а не юридическая консультация. Он показывает, что написано в законе; выводы и решения остаются за человеком.
По умолчанию ищутся только действующие статьи. Утратившие силу — с флагом
--repealed.
Развернуть на сервере или доработать под себя
Claude Code с этим поможет: репозиторий устроен так, чтобы агент мог сам разобраться —
рядом лежит CLAUDE.md с описанием внутреннего устройства, а в комплекте есть Dockerfile
для сборки образа с поиском внутри.
Попросите его словами, например:
«разверни этот поиск на моём сервере в docker»
«подними MCP-сервер и подключи к моему Claude Code»
«сделай веб-интерфейс к этому поиску»
«проверь, всё ли готово к работе» — он запустит проверку и объяснит, чего не хватает
Из коробки есть образ, который включает и данные, и модели, так что контейнеру не нужен интернет:
# собрать образ и запустить сервер
docker build -t laws-mcp .
docker run -i --rm laws-mcpФлаг -i у docker run обязателен: MCP-сервер общается через стандартный ввод и вывод,
без него контейнер сразу завершится. Перед сборкой образа выполните подготовку — модели
копируются в образ из папки models/.
This server cannot be deployed
Maintenance
Related MCP Connectors
Semantic search over Polish law and case law, citing the exact in-force article.
Structured access to 10 major Indian legal texts (BNS, IPC, etc) for AI agents.
Semantic retrieval across 292,000+ Indonesian regulations and 5.4M+ legal provisions, updated daily. Give AI direct access to Indonesian regulatory knowledge before reasoning.
LawOracle — 20 legal AI tools: case law search, contracts, EU regulations, citation graph.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceRAG-powered document search server that enables semantic search across large collections of legal and business documents (PDF, Word, Excel, PowerPoint) using local embeddings with no API costs.4MIT
- FlicenseNot gradedqualityDmaintenanceEnables local semantic code search across repositories using natural language, with AST-aware chunking and hybrid vector/FTS5 retrieval.-
- AlicenseAqualityCmaintenanceProvides offline access to the French legal corpus (Legifrance/DILA) with full-text search, verbatim article retrieval, and citation grounding to prevent hallucinations.4125 npmMIT
- AlicenseNot gradedqualityDmaintenanceProvides local semantic search over files using embeddings, enabling directory indexing and natural language queries without external services.51 PyPIMIT