atomno-mcp-zakupki
MCP-сервер госзакупок: поиск тендеров на zakupki.gov.ru, история заказчиков и поставщиков, справочник ОКПД2. Законы 44-ФЗ, 223-ФЗ и 615-ПП — прямо в Cursor, Claude и любом клиенте MCP.
Russian public procurement search for AI agents.
Установили локально, прописали в конфиге Cursor / Claude Desktop / Cline — и в одном промпте просите: «Покажи свежие тендеры за сегодня по ОКПД2 62.0 в Москве с НМЦК ≤ 5 млн ₽». Сервер сходит в выбранный источник данных, нормализует ответ и вернёт LLM готовую структуру.
Зачем
| Боль | Сейчас | С atomno-mcp-zakupki |
|---|---|---|
| Каждое утро 30–60 мин просеивать ЕИС вручную или платить 16–67 K ₽/год за Контур / Seldon | Excel-сводки + email-уведомления | Один MCP-вызов из Cursor → LLM сама фильтрует, объясняет, сравнивает |
Скрипты на Python с ftp.zakupki.gov.ru сломались с января 2025 | Ищут замену через коммерческие API | Официальный сайт ЕИС: поиск, XML-карточка, карточка организации |
| AI-агент не может прочитать тендер сам | Копи-паст в чат | get_tender(reg_number) отдаёт всю карточку как JSON |
Что внутри (open-клиент)
| Tool | Что делает |
|---|---|
search_tenders | Поиск закупок на официальном сайте zakupki.gov.ru. Ключ не нужен. |
get_tender | Карточка закупки по реестровому номеру (официальная XML-печатная форма). |
lookup_okpd2 | Поиск кода ОКПД2 / КТРУ по тексту (локальный справочник, без сети). |
get_customer_history | Карточка заказчика по ИНН и статус в реестре недобросовестных. Сводку объёмов сайт не считает. |
get_supplier_stats | Сводка по поставщику. Без токена машинного обмена ЕИС недоступна — тулза вернёт отказ, не нули. |
Источник по умолчанию — официальный сайт ЕИС. Покупной посредник отключён. Сводка объёмов и статистика поставщика без токена машинного обмена недоступны.
Quick start
1. Установка
# Через uvx (рекомендуется — без установки в систему):
uvx atomno-mcp-zakupki --help
# Через pipx:
pipx install atomno-mcp-zakupki
atomno-mcp-zakupki --version
# В виртуальное окружение проекта:
pip install atomno-mcp-zakupki
Опциональный экстра для официального ЕИС-токена (требует сертификат Минфина):
pip install "atomno-mcp-zakupki[eis-official]"
2. Конфигурация
Поиск и карточка закупки работают без ключа — источник zakupki.gov.ru.
Покупной посредник и SOAP-токен ЕИС не обязательны.
| Переменная | Описание | Где взять |
|---|---|---|
MCP_ZAKUPKI_DAMIA_KEY | API-ключ DaMIA API-Закупки | https://damia.ru/apizakupki (free-тариф «Старт» ≈ 100 запросов/мес) |
MCP_ZAKUPKI_GOSPLAN_KEY | API-ключ ГосПлан API v2 | https://wiki.gosplan.info (sandbox без регистрации: fz44test.gosplan.info) |
MCP_ZAKUPKI_NAVODKI_KEY | API-ключ navodki.ru | https://navodki.ru |
MCP_ZAKUPKI_EIS_TOKEN | Токен ЕИС (через pmd/auth/welcome) | https://zakupki.gov.ru/pmd/auth/welcome + сертификат Минфина |
MCP_ZAKUPKI_API_KEY | Pro hosted — обязателен для get_customer_history / get_supplier_stats и будущих AI-тулов | https://atomno-mcp.ru/pricing#zakupki-pro |
MCP_ZAKUPKI_LOG_LEVEL | DEBUG / INFO / WARNING / ERROR / CRITICAL | по умолчанию INFO |
MCP_ZAKUPKI_CACHE_DB | Путь к SQLite-кэшу | каталог данных пользователя (%LOCALAPPDATA%/atomno/ или ~/.local/share/atomno/) |
MCP_ZAKUPKI_PROVIDERS | Цепочка источников | по умолчанию eis_public |
MCP_ZAKUPKI_RPS | Лимит запросов в минуту | по умолчанию 30 |
3. Подключение к Cursor
Откройте ~/.cursor/mcp.json (или Cursor → Settings → Model Context Protocol) и добавьте:
{
"mcpServers": {
"zakupki": {
"command": "uvx",
"args": ["atomno-mcp-zakupki"],
"env": {
"MCP_ZAKUPKI_LOG_LEVEL": "INFO"
}
}
}
}
4. Подключение к Claude Desktop
%APPDATA%\Claude\claude_desktop_config.json (Windows) или
~/Library/Application Support/Claude/claude_desktop_config.json (macOS):
{
"mcpServers": {
"zakupki": {
"command": "uvx",
"args": ["atomno-mcp-zakupki"]
}
}
}
5. Подключение к Cline / Goose / Kiro
Любой MCP-клиент: запустите atomno-mcp-zakupki (по умолчанию stdio
транспорт) и пропишите в его конфиге команду запуска.
Для HTTP-режима:
atomno-mcp-zakupki --transport http --host 127.0.0.1 --port 8765
Примеры
Утренний мониторинг тендеров
[Cursor]: Покажи свежие тендеры за сегодня по ОКПД2 62.0 в УрФО
с НМЦК 500K-3M ₽, СМП-only.
→ search_tenders(
okpd2_codes=["62.01", "62.02", "62.09"],
regions=["66", "74", "59", "45", "72", "86", "89"],
price_min_rub=500000, price_max_rub=3000000,
smp_only=True,
publish_date_from="2026-04-26",
status=["applications_open"]
)
← 7 тендеров найдено за 412 мс.
Карточка тендера
[Cursor]: Расскажи подробно про реестровый номер 0173100007426000018.
→ get_tender(reg_number="0173100007426000018", include_documents=True)
← Все поля: заказчик, НМЦК, документация (PDF), сроки, площадка...
Анализ заказчика (Pro)
[Cursor]: Кто такой ИНН 7449023800? Покажи историю закупок за 2 года.
→ get_customer_history(inn="7449023800", period_from="2024-01-01")
← Требуется MCP_ZAKUPKI_API_KEY (hosted Pro).
Подбор кода ОКПД2
[Cursor]: Какой ОКПД2 у разработки веб-портала?
→ lookup_okpd2(query="разработка веб-портала", limit=5)
← [{"code":"62.01.11.000","name":"Услуги по проектированию ИС","match":0.94}, ...]
CLI
atomno-mcp-zakupki --help
atomno-mcp-zakupki --version
atomno-mcp-zakupki --check-config
atomno-mcp-zakupki --log-level DEBUG
atomno-mcp-zakupki --transport http --host 127.0.0.1 --port 8765
atomno-mcp-zakupki --transport sse --port 9000
Полный список опций — в atomno-mcp-zakupki --help.
Источники данных
| Источник | Что отдаёт | Когда используется |
|---|---|---|
| ЕИС, официальный сайт | Поиск, XML-карточка, карточка организации, реестр недобросовестных | По умолчанию, без ключа |
SOAP ЕИС (int.zakupki.gov.ru) | Машинная выгрузка | Только с токеном после регистрации на портале |
| DaMIA / ГосПлан / navodki | Коммерческие API | Только если явно заданы в MCP_ZAKUPKI_PROVIDERS и есть ключ |
Цепочка по умолчанию: MCP_ZAKUPKI_PROVIDERS=eis_public.
Если источник не ответил, тулза вернёт типизированную ошибку
provider_unavailable или not_implemented — не пустой список.
Архитектура (вкратце)
AI-клиент (Cursor / Claude / Cline) ──MCP──▶ atomno-mcp-zakupki
│
├──▶ lookup_okpd2 (offline)
├──▶ Self-hosted API (search/get)
└──▶ hosted Pro (api.atomno-mcp.ru) — production
Все провайдеры реализуют общий BaseProvider-интерфейс. Ответы
нормализуются в Pydantic-модели Tender, Customer, Document,
OrgHistorySummary.
Разработка
git clone https://github.com/atomno-mcp/mcp-zakupki.git
cd mcp-zakupki
python -m venv .venv
source .venv/bin/activate # Linux/macOS
# .venv\Scripts\activate # Windows
pip install -e ".[dev]"
pytest -v --cov=src/mcp_zakupki
ruff check src tests
Disclaimer
- Сервис не аффилирован с Министерством финансов РФ, ФАС, оператором ЕИС или конкретными ЭТП.
- Данные берём с официального сайта ЕИС (
zakupki.gov.ru) по обычным публичным адресам, с официальными корневыми сертификатами Минцифры. - Машинный обмен SOAP требует токен и регистрацию на портале — без этого сводка объёмов и статистика поставщика недоступны.
- Используйте на свой риск. Решения о подаче заявок на тендеры — на ответственности пользователя.
Лицензия
MIT © 2026 Atomno.
Семья MCP-серверов atomno
atomno-mcp-zakupki — пятый сервер семьи atomno-mcp-*:
atomno-mcp-cbr-rates— курсы ЦБ РФatomno-mcp-egrul— реквизиты юр.лиц из ЕГРЮЛatomno-mcp-fns-check— налоговая благонадёжностьatomno-mcp-fssp— задолженности и исп. производства (готовится)atomno-mcp-zakupki— вы здесьatomno-mcp-rosreestr— недвижимость, кадастр (готовится)atomno-mcp-sudact— судебная практика (готовится)
Подключите все вместе — и получите полное B2G-досье по тендеру за один промпт.