The full upstream README, mirrored here for reference. Install config, tool schemas, adoption signals, and an original overview live on the MCP Fns Check listing page.
MCP-сервер проверки российских контрагентов: ЕГРЮЛ, банкротство, налоговые долги, приставы и арбитражные дела. Для разведки компаний — подключается к Cursor, Claude и любому клиенту MCP.
Russian counterparty check for AI agents.
Готов к подключению в Claude Desktop, Cursor, Claude Code, Cline и любой другой клиент, совместимый с Model Context Protocol (MCP).
AI-агент (Claude, Cursor, etc.) обычно ничего не знает о российских контрагентах: ЕГРЮЛ не индексируется поисковиками нормально, данные в Прозрачном бизнесе ФНС — за POST-запросами и CAPTCHA, ЕФРСБ отдаёт HTML. Этот MCP-сервер даёт агенту семь тулзов, через которые он за один вызов получит полную картину:
Главный тул — check_contractor(identifier) — принимает ИНН или ОГРН и возвращает агрегированный отчёт с вердиктом (safe_to_proceed / manual_review_required / high_risk_do_not_proceed / impossible_contractor_defunct) и список конкретных рекомендаций.
Или через uv / pipx:
По умолчанию пакет запускается как stdio-MCP-сервер: агент общается с ним через stdin/stdout JSON-RPC. Напрямую из шелла вы его не «потыкаете» — подключите к MCP-клиенту. Для сетевых сценариев доступен флаг --transport {http,sse,streamable-http} с --host/--port.
Отредактируйте mcp.json (Cursor → Settings → Cursor Settings → MCP):
Перезапустите Cursor. В чате спросите: «Проверь контрагента ИНН 7707083893» — агент сам вызовет check_contractor.
Отредактируйте claude_desktop_config.json (macOS: ~/Library/Application Support/Claude/, Windows: %APPDATA%\Claude\):
Перезапустите Claude Desktop.
В cline_mcp_settings.json:
| Тул | Назначение | Вход | Источники |
|---|---|---|---|
check_contractor | Главный. Полная проверка по одному идентификатору + детерминированный вердикт и рекомендации | identifier: str (ИНН 10/12 или ОГРН 13/15) | все 5 |
check_inn | Базовая карточка ЕГРЮЛ | inn: str | egrul.nalog.ru |
check_ogrn | Базовая карточка по ОГРН/ОГРНИП | ogrn: str | egrul.nalog.ru |
get_legal_status | Жизненный статус с обогащением | inn или ogrn | ЕГРЮЛ + ЕФРСБ |
get_okveds | Коды ОКВЭД с расшифровкой | inn или ogrn | ЕГРЮЛ + словарь ОКВЭД-2 |
get_directors_history | Текущий руководитель (+ история по мере Open Data) | inn: str | ЕГРЮЛ |
check_for_red_flags | 7 проверок риска (4 базовые + 3 расширенные) | inn: str | все источники |
Используемые публичные источники:
atomno-mcp-fns-etl из Open Data ФНС).Проверки непредставления налоговой отчётности в наборе нет: публичного источника этих сведений не существует, а отвечать «отчётность сдаётся» без данных сервис не будет.
check_contractorcheck_contractor поднимает SourceUnavailableError (агент получит человекочитаемое сообщение).risks.errors[] и НЕ валит отчёт. Верхнеуровневый вердикт становится manual_review_required.Все настройки — через переменные окружения. Никаких креденшелов не требуется (источники публичные).
| Переменная | Описание | По умолчанию |
|---|---|---|
MCP_FNS_CACHE_DB | Путь к SQLite-файлу кэша карточек | каталог данных пользователя (%LOCALAPPDATA%/atomno/ или ~/.local/share/atomno/), не папка проекта |
MCP_FNS_REGISTRIES_DB | Путь к SQLite-файлу реестров (массовые адреса/руководители/дисквалификации) | <cache>.registries.sqlite |
MCP_FNS_CACHE_TTL_HOURS | TTL кэшированных карточек, часов | 168 (7 суток) |
MCP_FNS_HTTP_TIMEOUT | Таймаут HTTP, секунд | 15 |
MCP_FNS_USER_AGENT | User-Agent HTTP-клиента | atomno-mcp-fns-check/0.1 (+https://github.com/atomno-mcp/mcp-fns-check) |
MCP_FNS_LOG_LEVEL | Уровень логирования (DEBUG/INFO/WARNING/ERROR) | INFO |
Шаблон — .env.example.
Реестры массовых адресов / руководителей — это CSV-выгрузки открытых данных ФНС. Без загруженной выгрузки эти проверки отвечают «не выполнена» и не влияют на вердикт так, будто источник ответил. В поставке есть учебный файл registries_seed.json только для тестов; сервер его в рабочую базу не подгружает.
Для рабочих проверок загрузите срезы через CLI atomno-mcp-fns-etl:
Источники Open Data:
mass_addresses → nalog.gov.ru/opendata/7707329152-masaddress/mass_directors → nalog.gov.ru/opendata/7707329152-massleaders/disqualified → service.nalog.ru/disqualified.doПо умолчанию CLI работает в --dry-run (парсит и печатает sample); для записи нужен явный --commit. Meta-поля <registry>.last_etl, <registry>.last_etl_source, <registry>.last_etl_count сохраняются автоматически — используйте их для cron-мониторинга свежести данных.
Внешние API в тестах никогда не вызываются напрямую — только через respx (мокинг httpx) + локальные фикстуры в tests/fixtures/.
403 / проверка «человек или робот»). Автоматически эта проверка часто не выполняется; в отчёте это ошибка источника, а не «банкротства нет». Готового обхода нет — нужен официальный доступ Федресурса либо ручная проверка на bankrot.fedresurs.ru.errors[] с причиной captcha_required.451 (защита DDoS-Guard). Это не ошибка сертификата: сайт подписан Let's Encrypt. Официальный доступ — у оператора картотеки. В отчёте это «не проверено», не «судов нет».unknown), а не «низкий». Пустой flags[] сам по себе не означает «чисто».errors[] — «совпадений нет» по устаревшим данным не выдаётся.Pro-tier (hosted backend в atomno-mcp-fns-check-server — закрытый бэк) убирает эти ограничения через: кэш Redis 24h, ротация прокси для обхода CAPTCHA, полный срез Open Data ЕГРЮЛ, batch-проверки до 100 ИНН, AI-summary через LLM. Сам backend не опубликован.
XXX*****YY).Сервис — агрегатор и удобный интерфейс над публичными данными ФНС. Не аффилирован с ФНС России, ЕФРСБ, КАД, ФССП. Используется на ваш риск.
Информация в ответах сервиса не заменяет полноценной юридической или финансовой оценки. Решение о заключении договора с контрагентом принимаете вы.
MIT — см. LICENSE.