AVGifts — corporate gifts with logo
Server Details
Corporate gifts and branded merch in Russia: search, prices, stock, logo printing cost calculator.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
TDQS
Scored across 5 tools
Each tool targets a distinct task: browsing categories, searching products, fetching product details, listing print method references, and calculating cost. The descriptions clearly delineate the workflow (search → get_product → calc_print), with no overlapping purposes.
All five tools use snake_case with a verb_noun pattern (calc_print, get_product, list_categories, list_print_methods, search_products). The only minor variation is the abbreviation 'calc' instead of 'calculate', but the convention remains consistent.
Five tools form a well-scoped set that covers the core catalog and pricing workflow without redundancy. Each tool earns its place, and the count is appropriate for the server's purpose.
The surface covers browsing, searching, product details, print method references, and cost calculation, which addresses the main customer journey for corporate gifts. Minor gaps include no direct tool to list products by category (relying on search filters) and no delivery or order placement tool, though these may be outside the stated scope.
Available Tools
5 toolscalc_printРасчёт нанесенияARead-onlyInspect
Точная стоимость нанесения логотипа на товар — тем же калькулятором, что на сайте: цена за шт, приладка (разово на тираж), срок производства; плюс стоимость самого товара и итог за штуку и за тираж. Мест может быть несколько.
| Name | Required | Description | Default |
|---|---|---|---|
| prints | Yes | ||
| quantity | Yes | Тираж, шт | |
| product_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=false, so the safety profile is covered. Beyond that, the description discloses the composition of the computed result (unit price, one-time setup, lead time, product cost, totals) and notes that multiple placements are allowed — genuinely useful context given there is no output schema. It stops short of stating limits (e.g., the 10-placement cap) or auth/rate constraints.
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?
A single tightly packed sentence front-loads the purpose ('exact cost of logo application') before the breakdown of outputs. Every clause carries information, though the heavy semicolon/dash punctuation makes it denser than necessary.
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?
With no output schema, the description usefully describes what is returned, and it mentions multi-placement support. However, for a nested-parameter calculation tool it omits where product_id/place_id originate, the 10-placement maximum, and any assumptions about units, leaving real gaps even after accounting for the annotations.
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 low (33%), so the description must carry weight, and it only partially compensates: it flags that there can be several placements, which matters for the nested prints array, and implies product_id drives the product cost. It never explains where product_id comes from or clarifies the width/height or method fields beyond what the schema already says. Marginal value over 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 states a precise verb+resource: it computes the exact cost of applying a logo to a product using the same calculator as the website. It enumerates what the result contains (price per unit, setup fee for the run, production time, product cost, and totals per unit and per run), which is far more specific than the bare title 'Расчёт нанесения'. Siblings (get_product, search_products, list_print_methods) are lookups, so the calculator's role is plainly distinct.
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 never states when to reach for this tool versus the lookup siblings, nor any prerequisites such as needing valid product_id/place_id first. Usage is only implied by the purpose itself (an agent would invoke it when a quote is needed). No explicit when/when-not guidance is given, so it sits at the implied-usage level.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_productКарточка товараARead-onlyInspect
Полная карточка товара: описание, цена, наличие, размеры/цвета (варианты), места нанесения с максимальными размерами и доступными видами нанесения (код, название, мин. тираж, срок). place_id и code из ответа передавайте в calc_print.
| Name | Required | Description | Default |
|---|---|---|---|
| id | No | id товара из search_products | |
| url | No | Или ссылка на карточку avgifts.ru/product/… | |
| article | No | Или артикул avgifts |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=false, so the safety profile is covered and the bar is lower. The description adds meaningful value by detailing the return contents (variants, placement areas, print methods with constraints) even though no output schema exists, and by specifying the fields that feed calc_print. It does not mention auth, rate limits, or error behavior.
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 dense sentences with no filler; the payload of the card is front-loaded and the calc_print handoff comes last where it belongs. Slightly list-like but every clause describes real returned content, so nothing is wasted.
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?
With no output schema, the description must describe the return value, and it does so thoroughly (price, stock, variants, placement areas, print methods with code/name/min. run/lead time). Combined with the calc_print handoff, an agent has enough to call it and use the result, though lookup-key precedence and any error/pagination behavior are left to the 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 coverage is 100% and all three parameters (id, url, article) are documented in the schema as interchangeable lookup keys ('Или ссылка…', 'Или артикул…'), so the schema carries the semantic load. The description adds nothing about the id/url/article alternatives or precedence, making the baseline 3 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?
States a concrete resource ('Полная карточка товара') and enumerates exactly what it contains — description, price, stock, sizes/colors as variants, print placement areas with sizes, methods with code/name/min. run/length. This distinguishes it from the sibling search_products (full card vs. search), though the contrast is implicit rather than stated in the description itself.
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?
Gives an explicit downstream workflow instruction: pass 'place_id' and 'code' from the response into calc_print, which tells the agent how the tool fits into a broader task. It does not state when to prefer this over search_products (e.g. 'call after search_products to get full details'), so no exclusions or explicit alternatives are offered.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_categoriesРазделы каталогаARead-onlyInspect
Разделы каталога avgifts (id, название, ссылка). Без parent_id — верхний уровень, с parent_id — подразделы.
| Name | Required | Description | Default |
|---|---|---|---|
| parent_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=false, covering the safety profile. The description adds useful context about returned fields and filtering behavior, but does not disclose auth requirements, rate limits, or other operational 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 two concise sentences that front-load the resource and then explain the parameter behavior. No redundant or wasted text.
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 one-parameter read tool, it provides the returned fields (id, name, link) and parent_id semantics. It omits possible ordering or pagination details, but these are minor for this complexity level.
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?
With 0% schema description coverage and one parameter, the description fully compensates by explaining the semantic effect of parent_id: without it you get top-level categories, with it you get subsections. It does not document the expected ID format or valid ranges, but the core meaning is clear.
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 identifies the resource as 'Разделы каталога avgifts' (catalog sections of avgifts) and lists the returned fields (id, название, ссылка). It distinguishes from siblings by resource domain (categories vs products/print methods), but lacks an explicit action verb like 'list' or 'retrieve'.
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?
It explains how to use the parent_id parameter (absent = top level, present = subsections) but gives no guidance on when to choose this tool over alternatives such as get_product or search_products. No when-not-to-use or alternative routing is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_print_methodsВиды нанесенияARead-onlyInspect
Справочник видов нанесения: название, коды тарифов, минимальный тираж, срок производства, особенности. Название можно передать в search_products.print_method.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=false, so the safety profile is covered. The description adds valuable return-field context (name, tariff codes, minimum circulation, production time, features) even though there is no output schema, though it does not describe ordering, language, or format.
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 definition is two sentences, front-loads what the tool is, and uses the second sentence for actionable routing. No sentence is wasted.
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?
With no output schema, the description carries the burden of explaining what is returned and does so by listing the fields. The read-only nature is covered by annotations, and the integration path into search_products.print_method makes the tool's role complete.
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?
This tool has zero input parameters, so the baseline is 4. The description correctly does not invent parameter semantics, and the empty input schema leaves nothing further to document.
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 states a specific resource (справочник видов нанесения) and enumerates the fields it contains, which clearly distinguishes it from siblings like search_products and list_categories. It also routes the agent to the related tool by naming search_products.print_method.
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?
It gives clear context by explaining that a method name can be passed to search_products.print_method, which tells the agent when the returned values are useful. It does not, however, state explicit exclusions or compare against other list/reference siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_productsПоиск сувенировARead-onlyInspect
Поиск товаров каталога avgifts по словам и фильтрам. Возвращает компактный список: id, название, артикул, цена за шт (₽, НДС внутри), наличие, цвет, материал, виды нанесения, картинка, ссылка. Для подбора под тираж передавайте min_stock = тираж. Детали и места нанесения — get_product.
| Name | Required | Description | Default |
|---|---|---|---|
| eco | No | Только эко-товары | |
| new | No | Только новинки | |
| page | No | Страница выдачи | |
| sort | No | Сортировка (по умолчанию — релевантность/наличие) | |
| color | No | Базовый цвет изделия | |
| limit | No | Позиций за запрос (до 50) | |
| query | No | Что ищем: «термокружка 450 мл», «худи оверсайз», «ручка металлическая» | |
| min_stock | No | Нужное количество в наличии на складе (тираж) | |
| price_max | No | Цена за шт до, ₽ | |
| price_min | No | Цена за шт от, ₽ | |
| category_id | No | Раздел каталога (см. list_categories), включая подразделы | |
| print_method | No | Вид нанесения по названию: «лазерная гравировка», «УФ-печать», «шелкография», «тиснение», «вышивка», «DTF»… (см. list_print_methods) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=false, so safety is covered. The description adds genuine behavioral context beyond that: the exact compact return shape (id, name, article, price with VAT included, availability, etc.) and the semantic mapping of min_stock to a print run. It omits pagination/rate-limit behavior, so not a full 5.
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?
Three tightly-packed sentences: purpose first, then the return shape, then the usage tip and alternative. Every sentence carries information and nothing is padded.
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?
With no output schema present, the description compensates by enumerating the returned fields and even flagging that price includes VAT. Combined with the 100% schema coverage and a routing pointer to get_product, an agent has everything needed to call it correctly.
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 documents all 12 parameters, making 3 the baseline. The description only reinforces one parameter's intent ('min_stock = тираж'), which partly duplicates the schema's own '(тираж)' note and adds little else.
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?
States a specific verb+resource ('Поиск товаров каталога avgifts по словам и фильтрам') and clearly separates itself from siblings by routing detail requests to get_product. An agent can distinguish this search tool from get_product/list_categories without opening either schema.
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 names the alternative for a different need ('Детали и места нанесения — get_product') and gives a concrete usage tip ('Для подбора под тираж передавайте min_stock = тираж'). Clear context and an alternative, though it stops short of stating when-not to use this tool or broader selection boundaries.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
5 tool updates
- First observed
calc_print - First observed
get_product - First observed
list_categories - First observed
list_print_methods - First observed
search_products
Related MCP Connectors
Search 160k+ Russian B2B products from 8,900+ verified manufacturers (EN/RU).
Corporate gifting: catalog search, bulk GST pricing, quotes, meetings, HR welcome-kit automation.
Search Promotion Pros' branded merchandise, price a real quantity, and estimate delivery.
Russian public procurement: search tenders, documents, RPP registry, bid assembly (44-FZ, 223-FZ)
Related MCP Servers
- AlicenseAqualityAmaintenanceRussian business data with no API key: company check by INN/OGRN in FNS EGRUL/EGRIP, Bank of Russia exchange rates and key rate, late-payment interest, production calendar with business-day math, and bank details by BIK.610MIT
- AlicenseNot gradedqualityBmaintenanceMCP servers for Russian commerce and marketing APIs: Wildberries, Ozon, Yandex Market, Avito, Bitrix24, amoCRM, Yandex Direct, Yandex Metrika, Yandex Webmaster and DaData. Orders, stocks, prices, reviews, chats, CRM leads, ad stats and company lookup by INN; write actions require explicit confirmation.MIT
- AlicenseAqualityBmaintenanceEnables AI agents to search merchant catalogs, verify product prices and stock, and create purchases with budget limits and human-in-the-loop approval in Russian specialty stores.252 npmApache 2.0
- AlicenseNot gradedqualityAmaintenanceMCP server for the Russian construction market — 3,395 contractor companies and 13,436 house-building projects across 18 regions. 21 tools for search, comparison, cost analytics, contractor recommendations, and quote requests.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.