MCP-сервер для российских госзакупок (zakupki.gov.ru, 44-ФЗ / 223-ФЗ / 615-ПП): поиск, карточка закупки, карточка организации, справочник ОКПД2.
Server has 6 well-named tools with detailed descriptions and comprehensive parameter schemas. All tools follow verb_noun naming (search_tenders, get_tender, get_customer_history, get_supplier_stats, lookup_okpd2, ping). Descriptions are substantive (100-300+ chars) and explain WHAT, WHEN, and any prerequisites. Parameters are typed with descriptions. However, output schemas are not explicitly documented in the source code, only input schemas are visible. Error handling is minimal (no recovery guidance, no error categorization). No tool annotations (readOnlyHint, destructiveHint, idempotentHint) despite all tools being READ_ONLY. Missing structured error responses and per-item success/failure for batch-like operations.
Карточка заказчика по ИНН или ОГРН с официального сайта ЕИС. Отдаёт реквизиты и статус в реестре недобросовестных поставщиков. Сводку объёмов сайт без токена машинного обмена не считает.
Сводка по поставщику. На официальном сайте без токена машинного обмена недоступна — вернёт отказ с причиной, не пустые нули.
Получить полную карточку тендера по реестровому номеру ЕИС.
Найти код ОКПД2 / КТРУ по тексту запроса (полнотекстовый поиск). Использует vendored-справочник из 60+ топ-кодов (Phase 0–1) или полный справочник после CI-загрузки. Нет сетевых обращений.
Диагностический тул: убедиться, что сервер запущен и доступен.
Найти тендеры (44-ФЗ / 223-ФЗ / 615-ПП) по фильтрам в ЕИС zakupki.gov.ru. Возвращает структурированный массив до 100 объектов на вызов с пагинацией через `next_page_token`. Все фильтры комбинируются через AND.
Output schemas not documented. Tool descriptions explain inputs but do not specify what fields/structure the response contains. LLMs cannot plan downstream tool calls or extract required data without knowing response structure.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint). All 6 tools are READ_ONLY but lack explicit annotation. Clients cannot determine safety/idempotency without reading descriptions.
Error handling lacks recovery guidance. No error categorization (retryable vs user-fixable vs fatal). Errors do not include invalid values or constraint violations. LLMs cannot self-correct or plan recovery.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | B | 70 | <=2025-11-25 | v2 |
search_tenders accepts 18 parameters with complex interdependencies (e.g., law_type, status, date ranges) but does not document which combinations are valid or mutually exclusive. LLMs may pass invalid filter combinations.
get_customer_history and get_supplier_stats accept either INN or OGRN but do not document whether both are required, mutually exclusive, or optional. Parameter relationship is ambiguous.