Krasoft Russian Public Procurement
Server Details
Search and analytics for Russian public procurement (44-FZ/223-FZ): tenders, contracts, market data
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
Full call logging
Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.
Tool access control
Enable or disable individual tools per connector, so you decide what your agents can and cannot do.
Managed credentials
Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.
Usage analytics
See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.
Tool Definition Quality
Average 4.5/5 across 8 of 8 tools scored. Lowest: 3.9/5.
Each tool targets a distinct aspect: customer profiles, execution summaries, contract cards, tender cards, market snapshots, and searches for specs, objects, and tenders. No two tools have overlapping purposes.
Tool names mostly follow a verb_noun or noun_noun pattern (e.g., search_tenders, get_contract, market_snapshot). However, there is minor inconsistency with 'executions_summary' and 'market_snapshot' not using a verb prefix like the others.
With 8 tools, the server covers search, retrieval, and aggregation for public procurement without being overwhelming or too sparse. Each tool serves a clear purpose.
The set covers search and retrieval for both tenders and contracts, plus profiles and aggregated summaries. Missing a dedicated supplier search tool, but the overall surface is solid for data access.
Available Tools
8 toolscustomer_profileПрофиль заказчикаARead-onlyInspect
Публичный профиль заказчика по ИНН: название и регион, сводные показатели закупок (количество, суммы, динамика по годам), структура по ОКПД2, ключевые поставщики. Подходит для быстрой оценки «кто это и сколько закупает». Квоты: аноним — 20 поисков и 50 карточек в сутки; бесплатный аккаунт (ключ krsp_ с zakupki.krasoft.ru/me) — 100 поисков и 200 карточек; платный тариф — без лимитов. При превышении инструмент вернёт isError с инструкцией.
| Name | Required | Description | Default |
|---|---|---|---|
| inn | Yes | ИНН заказчика: 10 цифр (юрлицо) или 12 (ИП) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true; description adds detailed behavioral context: public profile, aggregated data, quota limits, and error response format. No contradictions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no wasted words. First sentence lists contents, second provides use case and quota info. Front-loaded with key verb and resource.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema, but description adequately covers return content and error case. For a simple profile tool with one parameter, this is largely complete. Lacks exact field structure but acceptable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the single parameter 'inn'. Description adds only 'по ИНН' and that it's public, but no additional value beyond schema. Baseline of 3 is appropriate as schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the verb ('Публичный профиль заказчика'), resource (by INN), and lists contents (name, region, procurement stats, OKPD2 structure, suppliers). It distinguishes itself from sibling tools by specifying a use case ('quick assessment of who this is and how much they buy').
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Description explicitly states when to use ('для быстрой оценки...'), includes quota details and error behavior. Does not explicitly mention when NOT to use or compare to siblings, but context is clear enough.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
executions_summaryKPI-сводка исполнений контрактовARead-onlyInspect
Агрегированная сводка по позициям исполнения контрактов под заданным фильтром: totalSum — сумма позиций, totalQty — количество, totalPaid — фактически оплачено, contracts — число контрактов, suppliers — число поставщиков. Список позиций не возвращает — только KPI; подходит для оценки объёма рынка и доли поставщика. Квоты: аноним — 20 поисков и 50 карточек в сутки; бесплатный аккаунт (ключ krsp_ с zakupki.krasoft.ru/me) — 100 поисков и 200 карточек; платный тариф — без лимитов. При превышении инструмент вернёт isError с инструкцией.
| Name | Required | Description | Default |
|---|---|---|---|
| fz | No | Закон: 44 и/или 223 | |
| query | No | Текст поиска по позиции исполнения и контракту | |
| period | No | Период публикации записи об исполнении: "2y" (default) — последние 2 года, "5y" — 5 лет, "older" — старше 5 лет, "all" — весь корпус (медленнее) | 2y |
| okpdCode | No | Код ОКПД2 позиции (префиксный матч, напр. "21.20") | |
| productName | No | Наименование товара/услуги (поиск только по названию позиции) | |
| regionCodes | No | Коды регионов РФ: 2 цифры ("77" — Москва) либо полный 13-значный код | |
| customerInns | No | ИНН заказчиков | |
| supplierInns | No | ИНН поставщиков |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds value beyond the readOnlyHint annotation by specifying the exact KPIs returned, that no item list is returned, and includes quota limits and error behavior. It does not disclose potential performance implications or data freshness.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with key information first (aggregated summary, KPIs) followed by usage and quotas. It is moderately concise; the quota details are useful but could be considered slightly verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the tool's return values (KPIs), what it does not return, and provides quota information. Given the absence of an output schema, this is sufficient for basic understanding, though deeper behavioral details (e.g., pagination, response structure) are missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All 8 parameters are fully described in the input schema (100% coverage). The description briefly mentions that query searches by position and contract, and productName searches by position name, but adds minimal extra meaning beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it is an aggregated summary of contract execution items, listing specific KPIs (totalSum, totalQty, etc.) and explicitly distinguishes itself from tools that return lists of items. The title 'KPI-сводка' reinforces the purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains that the tool returns only KPIs and is suitable for market volume and supplier share assessment, providing implicit guidance on when to use. It also mentions quota limits, but does not explicitly compare with sibling tools or state when not to use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_contractКарточка контрактаARead-onlyInspect
Карточка заключённого контракта по внутреннему ID (cctUniqID): шапка (реестровый номер, заказчик, поставщик, цена, сроки исполнения, снижение от НМЦК) и позиции спецификации (наименование, ОКПД2/КТРУ, количество, цена, сумма). На бесплатных тирах значения позиций могут быть замаскированы (тизер) — полные данные на платном тарифе. Квоты: аноним — 20 поисков и 50 карточек в сутки; бесплатный аккаунт (ключ krsp_ с zakupki.krasoft.ru/me) — 100 поисков и 200 карточек; платный тариф — без лимитов. При превышении инструмент вернёт isError с инструкцией.
| Name | Required | Description | Default |
|---|---|---|---|
| uniqId | Yes | Внутренний ID контракта (cctUniqID из поиска/карточки извещения) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes beyond the readOnlyHint annotation by detailing that values may be masked on free tiers (teaser), specifies exact daily quotas for different account types, and states the tool returns isError with instructions on quota exceed. This fully discloses behavioral traits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise: first sentence states core functionality, second sentence covers edge cases (masking, quotas, error handling). Every sentence is informative with no waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite lacking an output schema, the description covers the return structure (header and specification fields), notes data masking behavior, and specifies quota limits. This is sufficient for an agent to understand the tool's capabilities and limitations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single required parameter uniqId is described as 'internal ID of contract (cctUniqID from search/tender card)', adding practical context on how to obtain the ID. Schema coverage is 100%, so the description adds marginal but useful enrichment.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool returns the contract card by internal ID (cctUniqID), specifying both header fields (registry number, customer, supplier, price, deadlines) and specification positions (name, OKPD2/KTRU, quantity, price, sum). It distinguishes from siblings like search_contract_specs by targeting a single contract retrieval.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear usage context including quota limits for anonymous, free, and paid tiers. It implicitly tells when to use (to fetch a specific contract by ID) and warns about masked data on free tiers. However, it does not explicitly compare to sibling tools like search_contract_specs or get_tender.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_tenderКарточка извещенияARead-onlyInspect
Детальная карточка извещения о закупке по внутреннему ID (поле ntfUniqID из результатов search_tenders): предмет и условия, заказчик, НМЦК, этапы и даты, площадка, обеспечения, ссылки на первоисточник. Квоты: аноним — 20 поисков и 50 карточек в сутки; бесплатный аккаунт (ключ krsp_ с zakupki.krasoft.ru/me) — 100 поисков и 200 карточек; платный тариф — без лимитов. При превышении инструмент вернёт isError с инструкцией.
| Name | Required | Description | Default |
|---|---|---|---|
| uniqId | Yes | Внутренний ID извещения (ntfUniqID из search_tenders) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnlyHint annotation, the description adds behavioral context about daily quotas and error responses (isError with instructions) when limits are exceeded, which is valuable for an agent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with purpose and contents, followed by quota details and error handling. It is slightly lengthy but well-organized, with each sentence serving a distinct purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read tool with one parameter and no output schema, the description covers input requirements, output components (listed items), quota limits, and error behavior, providing sufficient context for correct usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a single parameter that is well-described in the schema. The description reinforces the parameter's origin (ntfUniqID from search_tenders) but adds no new semantic meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves a detailed procurement notice card by internal ID, lists included data (subject, conditions, customer, NMCC, etc.), and distinguishes it from sibling tool search_tenders by specifying the ID source.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains where to obtain the required ID (from search_tenders) and mentions quota limits, which implies usage constraints, but does not explicitly provide when-to-use or when-not-to-use guidance compared to sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
market_snapshotСрез рынка по кодуARead-onlyInspect
Агрегированный срез рынка госзакупок по коду классификатора: kind=okpd2 — категория ОКПД2 (напр. "21.20.10"), kind=ktru — позиция каталога КТРУ, kind=mnn — лекарство по МНН (slug латиницей с zakupki.krasoft.ru, напр. "ibuprofen"). Возвращает счётчики закупок и контрактов, суммы, тренд по годам, топ-заказчиков/регионов. Без товарных цен — те доступны на платном тарифе через search_purchase_objects/search_contract_specs. Квоты: аноним — 20 поисков и 50 карточек в сутки; бесплатный аккаунт (ключ krsp_ с zakupki.krasoft.ru/me) — 100 поисков и 200 карточек; платный тариф — без лимитов. При превышении инструмент вернёт isError с инструкцией.
| Name | Required | Description | Default |
|---|---|---|---|
| code | Yes | Код ОКПД2 / код КТРУ / slug МНН | |
| kind | Yes | Тип кода: okpd2 — классификатор продукции, ktru — каталог товаров/работ/услуг, mnn — лекарство по МНН |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true. Description adds details: returns counters, sums, trends, top customers/regions; no item prices; quota limits; error behavior. No contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single paragraph of 4-5 sentences, front-loaded with main purpose, then explains parameters, distinguishes from siblings, and adds quotas. Every sentence is informative without fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 2 params, full schema coverage, no output schema, and annotations, the description is complete. It explains return types, trade-offs (no prices), and quota handling.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, but description adds context: examples of OKPD2 code (21.20.10), MNN slug (ibuprofen from zakupki.krasoft.ru), and explains how kind values map to code formats. This enriches the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool returns an aggregated market snapshot for government procurement by classifier code (OKPD2, KTRU, MNN). It also mentions what it does NOT return (item prices) and distinguishes itself from sibling tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states when to use (get aggregated counters, sums, trends, top customers/regions) and when not (if need item prices, use the other tools). Also provides quota limits for different account types and behavior when quotas exceeded.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_contract_specsПоиск спецификаций контрактовARead-onlyInspect
Поиск по строкам спецификаций заключённых контрактов — фарма/МИ-уровень: МНН, торговое наименование, лекарственная форма и дозировка, производитель, страна, количество, цена, сумма, поставщик. Ответ содержит Aggregates по всей выборке: общая сумма и количество, число контрактов и поставщиков — удобно для оценки объёма рынка препарата. На бесплатных тирах ценовые значения замаскированы (тизер). Квоты: аноним — 20 поисков и 50 карточек в сутки; бесплатный аккаунт (ключ krsp_ с zakupki.krasoft.ru/me) — 100 поисков и 200 карточек; платный тариф — без лимитов. При превышении инструмент вернёт isError с инструкцией.
| Name | Required | Description | Default |
|---|---|---|---|
| fz | No | Закон: 44 и/или 223 | |
| mnn | No | МНН (международное непатентованное наименование), напр. "Ибупрофен" | |
| page | No | Страница выдачи (0-based) | |
| query | No | Текст поиска по строке спецификации и контракту | |
| period | No | Период публикации контракта: "2y" (default) — последние 2 года, "5y" — 5 лет, "older" — старше 5 лет, "all" — весь корпус (медленнее) | 2y |
| country | No | Страна происхождения | |
| pageSize | No | Размер страницы | |
| tradeName | No | Торговое наименование препарата | |
| regionCodes | No | Коды регионов РФ: 2 цифры ("77" — Москва) либо полный 13-значный код | |
| customerInns | No | ИНН заказчиков | |
| includeTotal | No | Точный счёт найденного (обрезан 10 000) | |
| manufacturer | No | Производитель | |
| supplierInns | No | ИНН поставщиков |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnlyHint annotation, the description discloses that price values are masked on free tiers, specifies daily quotas (anonym: 20 searches, 50 cards; free account: 100/200; paid: unlimited), and explains that exceeding quotas returns isError with instructions. This provides valuable behavioral context not captured in annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single dense paragraph that conveys all key information without unnecessary words. While it could benefit from bullet points or clearer structure, it remains concise and front-loads the main purpose. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the 13 parameters and no output schema, the description covers the main use case, output aggregates, masking behavior, and quotas. It is fairly complete for a search tool with good annotations, though it could explicitly mention pagination behavior (e.g., max page 9) which is only in schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already describes all 13 parameters. The tool description adds aggregate output context (total sum, quantity, contract count, supplier count) but does not expand on individual parameter meanings. With full schema coverage, a baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it searches contract specifications and lists the specific fields (MNN, trade name, manufacturer, etc.). It also mentions aggregates for market assessment. This distinguishes it from siblings like search_tenders or search_purchase_objects, which target different entities.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides when to use the tool (pharma/MI contract spec search) and includes important usage context like quotas for different account types and price masking on free tiers. It lacks explicit 'when not to use' or alternative tool references, but the context is still helpful.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_purchase_objectsПоиск товарных позиций извещенийARead-onlyInspect
Поиск по товарным позициям извещений (одна строка = один объект закупки: наименование, код и категория ОКПД2, количество, цена за единицу, сумма) с данными родительского извещения (заказчик, регион, НМЦК, победитель). Это уровень товара, а не закупки целиком — подходит для вопросов «кто и почём закупает конкретный товар». На бесплатных тирах значения цен/количеств и поставщики замаскированы (тизер) — полные данные на тарифе «Отраслевой». Квоты: аноним — 20 поисков и 50 карточек в сутки; бесплатный аккаунт (ключ krsp_ с zakupki.krasoft.ru/me) — 100 поисков и 200 карточек; платный тариф — без лимитов. При превышении инструмент вернёт isError с инструкцией.
| Name | Required | Description | Default |
|---|---|---|---|
| fz | No | Закон: 44 и/или 223 | |
| page | No | Страница выдачи (0-based) | |
| query | No | Текст поиска по позиции и извещению. Все слова обязательны (AND) и должны встретиться в одном поле, поэтому длинная фраза сужает выдачу — для оценки объёма рынка лучше короткий запрос или okpdCode | |
| period | No | Период публикации: "2y" (default) — последние 2 года, "5y" — 5 лет, "older" — старше 5 лет, "all" — весь корпус (медленнее) | 2y |
| priceTo | No | Цена за единицу до, руб. | |
| okpdCode | No | Код ОКПД2 позиции (префиксный матч, напр. "21.20") | |
| pageSize | No | Размер страницы | |
| priceFrom | No | Цена за единицу от, руб. | |
| objectName | No | Наименование объекта закупки (поиск только по названию позиции) | |
| regionCodes | No | Коды регионов РФ: 2 цифры ("77" — Москва) либо полный 13-значный код | |
| includeTotal | No | Точный счёт найденного (обрезан 10 000) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true. Description adds significant behavioral details: free-tier masking (tizer), quota limits (20 searches/50 cards for anonymous, 100/200 for free account, unlimited for paid), and error behavior (isError with instructions on exceeding limits). No contradictions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is concise (few sentences) and well-structured: purpose first, then additional context, limitations, quotas. Every sentence adds value with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite no output schema, the description lists key return fields (name, code, category, quantity, unit price, sum, and parent notice data). Covers data level, tier restrictions, quotas, and error handling. Complete for a search tool with 100% schema coverage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with detailed parameter descriptions. The main description adds extra context: AND logic for query words, advice for market volume estimation, and clarification that search is across both item and notice fields, exceeding baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it searches for purchase items (товарные позиции извещений) and distinguishes from tool-level procurement by specifying 'Это уровень товара, а не закупки целиком'. Provides specific use case: 'кто и почём закупает конкретный товар'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly describes when to use (item-level product queries) and provides context on data masking and quotas. Does not explicitly name siblings or when not to use, but the context is clear enough.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_tendersПоиск закупок (извещения)ARead-onlyInspect
Поиск извещений о госзакупках РФ (44-ФЗ и 223-ФЗ) по тексту и фильтрам: регион, заказчик (ИНН), диапазон НМЦК, период. Возвращает список: номер и название извещения, НМЦК, заказчик, регион, ключевые даты (публикация, дедлайн подачи, итоги), победитель и цена контракта, если закупка разыграна. period по умолчанию "2y" — покрывает последние 2 года; "all" — весь корпус, заметно медленнее. includeTotal=true даёт точный счёт найденного (обрезан 10 000). Квоты: аноним — 20 поисков и 50 карточек в сутки; бесплатный аккаунт (ключ krsp_ с zakupki.krasoft.ru/me) — 100 поисков и 200 карточек; платный тариф — без лимитов. При превышении инструмент вернёт isError с инструкцией.
| Name | Required | Description | Default |
|---|---|---|---|
| fz | No | Закон: 44 (госзакупки) и/или 223 (закупки госкомпаний) | |
| page | No | Страница выдачи (0-based) | |
| query | No | Текст поиска: предмет закупки, ключевые слова или номер извещения | |
| nmckTo | No | НМЦК до, руб. | |
| period | No | Период публикации: "2y" (default) — последние 2 года, "5y" — 5 лет, "older" — старше 5 лет, "all" — весь корпус (медленнее) | 2y |
| nmckFrom | No | НМЦК от, руб. | |
| pageSize | No | Размер страницы | |
| regionCodes | No | Коды регионов РФ: 2 цифры ("77" — Москва) либо полный 13-значный код | |
| customerInns | No | ИНН заказчиков | |
| includeTotal | No | Точный счёт найденного (обрезан 10 000) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, and the description adds valuable behavioral details: quotas (anonymous vs free vs paid), performance warning for 'all' period, and error handling with instructions. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with key information front-loaded. Every sentence adds value, no fluff. It efficiently covers purpose, behavior, and parameter hints.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description adequately lists return fields. It covers all necessary context for usage: filters, defaults, quotas, error behavior, and performance. Complete for a search tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description adds value by clarifying default values, performance notes for 'period', and the cap of 10,000 for includeTotal. This goes beyond the schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it searches for Russian government procurement notices (44-ФЗ and 223-ФЗ) with filters like region, customer, NMCC range, and period. It lists return fields and distinguishes from sibling tools like search_contract_specs and get_tender.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description specifies default period ('2y') and notes performance implications for 'all'. It also explains quotas and error behavior on limit exceedance. However, it does not explicitly state when not to use this tool versus alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!
Related MCP Servers
- Flicense-qualityCmaintenanceEnables searching and retrieving Russian tenders (закупки) through the Kontur.Zakupki API. Supports filtering by date, text, laws, procedures, statuses, and more.
- AlicenseAqualityAmaintenanceMCP server for Russian government procurement data that enables AI assistants to search tenders, get detailed cards, and analyze customer/supplier history.61MIT
- Alicense-qualityDmaintenanceEnables search and analysis of European public procurement tenders, including EU above-threshold (TED) and below-threshold from 11 national sources, with hybrid search and filtering.MIT
- Flicense-qualityDmaintenanceProvides comprehensive access to Chinese bidding and tendering data, enabling users to search for companies, analyze bidding statistics, query tender announcements, and discover project opportunities for market analysis and business development.9