Releases: atomno-labs/mcp-egrul
Release list
v0.1.3 — argparse CLI, dependency MAJOR-lock, classifiers sync
v0.1.3 — sync с эталоном atomno-mcp-fns-check 0.1.1
Sync-патч приводит CLI-обвязку, ограничения зависимостей и метаданные pyproject.toml
к общим конвенциям портфеля atomno-mcp-*.
Установка
uvx atomno-mcp-egrul # рекомендуется (без установки)
pipx install atomno-mcp-egrul
pip install atomno-mcp-egrulFixed
- CLI:
--helpи--versionбольше не вешают процесс. До0.1.3команда
atomno-mcp-egrul --helpзапускала FastMCP по stdio и подвисала, ожидая stdin
от MCP-клиента. Теперьmain()используетargparseи завершается с exit-code 0
без запуска сервера. - Loud-fail на невалидный
MCP_EGRUL_LOG_LEVEL. Процесс выходит с exit-code 2
и явным сообщением, без silent-INFO-fallback.
Added
- Новые CLI-флаги:
--version/-V— версия пакета;--transport {stdio,http,sse,streamable-http}— выбор транспорта (defaultstdio);--host,--port— для http/sse/streamable-http транспортов;--log-level {DEBUG,INFO,WARNING,ERROR,CRITICAL}— приоритет над env.
tests/test_cli.py— 20 тестов на CLI-обвязку (help / version / transport /
log-level precedence / loud-fail на невалидный env / парсер-дефолты).- PEP 561 маркер
py.typed— IDE и mypy теперь подхватывают type-аннотации пакета. - Дополнительные classifiers:
Natural Language :: Russian,Typing :: Typed,
Intended Audience :: Financial and Insurance Industry,Operating System :: OS Independent,
Topic :: Software Development :: Libraries :: Python Modules. - Секция
[project.urls]вpyproject.toml(Homepage, Repository, Issues,
Changelog, Documentation).
Changed
-
Development Status:3 - Alpha→4 - Beta— пакет уже опубликован
на PyPI и Smithery, прошёл 365 тестов с 100% покрытием. -
main(argv: list[str] | None = None) -> int— сигнатура изменена для
тестируемости. Возвращает exit-code (0/2). Вызов изif __name__ == "__main__":
обёрнут вraise SystemExit(main()). -
Dependency MAJOR-lock — каждая зависимость теперь имеет верхнюю границу
по SemVer. Защищает пользователей от breaking changes в мажорных релизах
вышестоящих библиотек:Было Стало fastmcp>=0.2.0fastmcp>=0.2.0,<4.0.0httpx>=0.27.0httpx>=0.27.0,<1.0.0pydantic>=2.6.0pydantic>=2.6.0,<3.0.0aiosqlite>=0.20.0aiosqlite>=0.20.0,<1.0.0python-dateutil>=2.9.0python-dateutil>=2.9.0,<3.0.0lxml>=5.2.0lxml>=5.2.0,<7.0.0apscheduler>=3.10.0apscheduler>=3.10.0,<4.0.0
Качество
- Тесты: 365 (включая 20 новых на CLI). Coverage 100% (было 100%, не упало).
- Lint:
ruff checkclean (правилаE F I B UP ASYNC). - Build:
twine checkPASSED. - Smoke-test в чистом venv:
pip install dist/*.whl→atomno-mcp-egrul --version→ OK.
Совместимость
- ✅ Обратно совместимо на уровне MCP-API. Все 8 тулзов (
ping,search_by_inn,
search_by_ogrn,search_by_name,get_full_card,get_founders,get_director,
bulk_cards) работают идентично 0.1.2. - ✅ Конфиги для Cursor / Claude Desktop / Cline не требуют изменений.
⚠️ Если вы внутренне импортировалиmcp_egrul.server.mainи ожидали возвратNone,
обновите код: теперь возвращаетсяint(exit-code).
Ссылки
- PyPI: https://pypi.org/project/atomno-mcp-egrul/0.1.3/
- Документация: https://github.com/atomno-labs/mcp-egrul#readme
- Эталон конвенций:
PRODUCTS/ATOMNO/_knowledge/MCP_BUILD_CHECKLIST.md
Полный диф
v0.1.2 — PyPI rename: atomno-mcp-egrul (brand alignment)
Брендовая унификация PyPI с парным проектом atomno-mcp-fns-check.
Старый PyPI-пакет mcp-egrul==0.1.1 помечен yanked.
⚠️ BREAKING для PyPI пользователей
Имя пакета на PyPI изменилось: mcp-egrul → atomno-mcp-egrul.
Миграция
pip uninstall mcp-egrul
pip install atomno-mcp-egrul
# или сразу через uv (рекомендуется)
uvx atomno-mcp-egrulВ claude_desktop_config.json / .cursor/mcp.json:
{
"mcpServers": {
"egrul": {
"command": "uvx",
"args": ["atomno-mcp-egrul"]
}
}
}CLI commands
| Было | Стало |
|---|---|
mcp-egrul |
atomno-mcp-egrul |
mcp-egrul-import |
atomno-mcp-egrul-import |
mcp-egrul-scheduler |
atomno-mcp-egrul-scheduler |
Установка
uvx atomno-mcp-egrul # через uv (рекомендуется)
pipx install atomno-mcp-egrul # через pipx
pip install atomno-mcp-egrul # классический pipPyPI: https://pypi.org/project/atomno-mcp-egrul/0.1.2/
Не изменилось
- Python module name внутри пакета:
mcp_egrul(импорты не правились). - GitHub repo:
atomno-labs/mcp-egrul(orgatomno-labsдаёт брендирование). - FastMCP server name в
initialize/ping:mcp-egrul(стабильный контракт). - Логика, тулзы, схемы, БД — без изменений (344 unit-теста проходят).
Полный changelog
См. CHANGELOG.md.
Парный проект: mcp-fns-check (risk-чек-слой поверх ЕГРЮЛ).
v0.1.1 — First PyPI release + catalog metadata
Catalog-патч. Основной код пакета не меняется — добавлены метаданные для индексации в каталогах MCP-серверов и опубликована первая версия на PyPI.
Установка
# Через uv (рекомендуется)
uvx mcp-egrul
# Через pipx
pipx install mcp-egrul
# Через pip
pip install mcp-egrulPyPI: https://pypi.org/project/mcp-egrul/0.1.1/
Добавлено
smithery.yamlв корне репо — конфиг для Smithery.ai (stdio-режим, опциональныйATOMNO_API_KEYдля Hosted Pro, выбор log-level).glama.jsonв корне репо — claim ownership на Glama.ai под orgatomno-labs.- Первая публикация на PyPI —
pip install mcp-egrulилиuvx mcp-egrul.
Изменено
- README дополнен секцией про установку через PyPI.
mcp.jsonsnippets для Cursor / Claude Desktop переведены наuvx mcp-egrul(без globalpip install).
Полный changelog
См. CHANGELOG.md.
Парный проект: mcp-fns-check (risk-чек-слой поверх ЕГРЮЛ).
v0.1.0 — Initial public release
First public release of mcp-egrul — MCP server for Russian EGRUL/EGRIP lookups via FNS open-data.
Highlights
- 6 MCP tools:
search_by_inn,search_by_ogrn,search_by_name,get_full_card,get_director,get_founders(+bulk_cardsfor batch lookups). - Self-host mode: ingest official FNS open-data XML dumps into local SQLite via
mcp-egrul-import/mcp-egrul-schedulerCLIs. - Hosted Pro mode (closed beta): drop-in mode via
ATOMNO_API_KEY— proxies toapi.atomno.rufor AI-summary, fresh data, history, director-name search.Pro tier is in closed betagraceful response until backend launch. - Cursor / Claude Desktop / Claude Code ready (config snippets in README).
- Docker:
Dockerfile+docker-compose.ymlfor one-command run. - Tests: 345 passed, 100% coverage on core, ruff clean.
Install
pip install mcp-egrul # PyPI publish — следующим релизом
# or
git clone https://github.com/atomno-labs/mcp-egrul && cd mcp-egrul && pip install -e .See README for full Cursor / Claude Desktop / Claude Code config snippets.
License
MIT.
Disclaimer
Не аффилирован с ФНС России. Данные из открытых источников, для proof-of-record использования полагайтесь на официальные выписки.