hptsu MCP server
OfficialThe hptsu MCP server enables AI assistants to search, retrieve, and download Russian and EAEU vehicle compliance documents from the hpt.su registry, using 20+ tools across three categories:
Search & Retrieval
Cross-registry search (
search_documents) — search by document number across all kindsFetch a single document (
get_document) — by slug and kindConformity certificates (
search_certificates) — filter by number, applicant, manufacturer, scheme, status, regulations, TN VED code, or INNDeclarations of conformity (
search_declarations) — filter by number, applicant, manufacturer, scheme, status, or regulationsОТТС vehicle type approvals (
search_otts) — filter by brand, model, category, VIN, eco class, wheel formula, axle count, issuerОТШ chassis type approvals (
search_otch) — similar filters to ОТТСЗОТТС / ЗОТШ (
search_zotts,search_zotch) — vehicle/chassis conformity assessment conclusionsСБКТС (
search_sbkts) — vehicle safety-of-design certificates, filterable by VIN, brand, year, engine, issue date rangeЗОЕТС (
search_zoets) — vehicle technical expertise conclusions, similar filters to СБКТССУТ (
search_sout) — type-approval notifications, filterable by brand, type, numberAggregated VIN search (
search_by_vin) — searches across ОТТС, ОТШ, ЗОТТС, ЗОТШ, СБКТС, and ЗОЕТС simultaneouslyFull-text search (
fulltext_search) ⭐ Paid — search inside PDF bodies of type approval documents
File Access
List document files (
list_document_files) — enumerate PDFs attached to a documentDownload document PDF (
download_document_file) ⭐ Paid — generate a signed, time-limited download URL
Reference Dictionaries
list_brands— vehicle brand nameslist_vehicle_models— model names within a brandlist_test_labs— accredited testing laboratorieslist_certification_bodies— accredited certification bodieslist_tnved_codes— EAEU customs classifier codeslist_registry_kinds— all registry types exposed by the API
Many search tools accept human-readable names (brand, issuer, eco class, etc.) and auto-resolve them to internal IDs; ambiguous inputs return candidates. All search tools support pagination with configurable page sizes (up to 50).
hpt.su MCP Server
Model Context Protocol server for the hpt.su registry of Russian and EAEU vehicle compliance documents — type approvals (ОТТС / СБКТС / ОТШ), conformity certificates (ТР ТС / ТР ЕАЭС), declarations of conformity, type-approval notifications (СУТ), and single-vehicle evaluation reports.
What this is
hptsu-mcp lets any MCP-compatible AI assistant (Claude Desktop, Cursor, Cline, Continue, Goose, Cherry Studio, 5ire, LM Studio, ChatGPT Desktop, …) search the hpt.su registry directly — without you copy-pasting numbers between the chat window and the website.
hpt.su is the largest aggregated database in the Russian Federation and the EAEU customs union for:
Сертификаты соответствия — conformity certificates issued under TR CU / TR EAEU technical regulations. Browse at hpt.su/documents/cert/.
Декларации о соответствии — declarations of conformity. Browse at hpt.su/documents/decl/.
ОТТС — Vehicle Type Approval (Одобрение типа транспортного средства) under TR CU 018/2011 — covers automobiles, trucks, buses, trailers, motorcycles. Browse at hpt.su/documents/otts/.
СБКТС — Vehicle Safety-of-Design Certificate (Свидетельство о безопасности конструкции транспортного средства). Browse at hpt.su/documents/sbkts/.
ОТШ — Chassis Type Approval (Одобрение типа шасси). Browse at hpt.su/documents/otch/.
СУТ — Notification of Type Approval (Сообщение об утверждении типа транспортного средства). Browse at hpt.su/documents/sout/.
ЗОЕТС / ЗОТШ / ЗОТТС — single-vehicle / chassis / vehicle evaluation reports issued by accredited testing laboratories. Browse at hpt.su/documents/zoets/, zotch/, zotts/.
Use cases an LLM agent can solve through this server:
"Find the type approval for a 2024 KAMAZ-43118 truck."
"What is the status of EAC declaration ЕАЭС N RU Д-RU.HA67.B.12345/24?"
"List recent conformity certificates issued to applicant 'Group GAZ' under scheme 1с."
"Has SBKTS been issued for VIN-derived chassis number XYZ123…?"
"Fetch type-approval notifications (СУТ) issued for manufacturer X."
Related MCP server: mcp-fns-check
Quick start
1. Install
uv tool install hptsu-mcp
# or
pipx install hptsu-mcp
# or with plain pip
pip install hptsu-mcp2. Get an API key
Two tiers exist for MCP:
Tier | Throttle | Price | Where to get |
Free MCP | 50 requests/day; site subscribers: 500/day on subscribed registries (+50/day elsewhere) | Free, signup required | |
Paid MCP | 10 000 requests/day, fulltext + downloads | See pricing |
The free tier is plenty for demos and personal use. Upgrade unlocks fulltext_search, download_document_file, the VIN aggregator, and the higher daily limit.
Create an account at hpt.su/accounts/signup/.
Click "Get free MCP key" in hpt.su/user/mcp/.
(Optional) Upgrade on hpt.su/pricing/.
API documentation (Swagger UI): https://hpt.su/api/v1/docs/ · OpenAPI schema: https://hpt.su/api/v1/schema/
3. Wire it into your MCP client
Claude Desktop (claude_desktop_config.json)
{
"mcpServers": {
"hpt-su": {
"command": "hptsu-mcp",
"env": {
"HPTSU_API_KEY": "your-key-here"
}
}
}
}Cursor (.cursor/mcp.json)
{
"mcpServers": {
"hpt-su": {
"command": "hptsu-mcp",
"env": { "HPTSU_API_KEY": "your-key-here" }
}
}
}Cline / Continue / Goose / etc.
Any MCP client that supports stdio transport works the same way — point it at the hptsu-mcp executable and pass HPTSU_API_KEY in the environment.
HTTP / SSE transport
For hosted MCP gateways set HPTSU_TRANSPORT=streamable-http (or sse) and call the server over the network.
Tools
Search & retrieval
Tool | What it does | Tier |
| Cross-registry search by document number (any kind). | Free |
| Fetch a single Document by UUID. | Free |
| Conformity certificates — filter by number, applicant, status, scheme, TN VED code. | Free |
| Declarations of conformity. | Free |
| Vehicle (ОТТС) or chassis (ОТШ) type approvals — filter by brand / model / year / applicant. | Free |
| СБКТС / СУТ / ЗОЕТС / ЗОТШ / ЗОТТС feeds. | Free |
| Aggregated VIN search across ОТТС / СБКТС / ЗОЕТС / ЗОТТС. | Free |
| Full-text search inside PDF bodies. | Paid |
| Issue a time-limited signed PDF download URL. | Paid |
Reference dictionaries
Tool | What it does |
| Resolve vehicle brand names. |
| Resolve vehicle model names within a brand. |
| Accredited testing laboratories. |
| Accredited certification bodies. |
| TN VED EAEU classifier (cert/decl context only). |
| Enumerate registry kinds the API exposes. |
Reference filters accept names, not internal ids. The search tools resolve human-readable values automatically — pass
issuer="НАМИ",brand="KAMAZ",eco_class="5",wheel_formula="4x2",axis_count="2"and the server looks up the reference id for you (issuer/brandalso take a numeric id directly). An ambiguous name returns the matching candidates to pick from.
Configuration
Variable | Default | Meaning |
| required | Bearer key from hpt.su cabinet. |
|
| Override for staging / on-prem deployments. |
|
|
|
|
| Per-request HTTP timeout (s). |
|
| User-Agent header. |
|
| Standard |
SEO description (for catalogue listings)
hpt.su MCP server — let your AI assistant search the hpt.su database of Russian and EAEU vehicle compliance documents directly. Covers type approvals (ОТТС, ОТШ), safety-of-design certificates (СБКТС), conformity certificates and declarations under TR CU / TR EAEU technical regulations, and type-approval notifications (СУТ). Source registry: https://hpt.su. API documentation: https://hpt.su/api/v1/docs/. Read-only, Bearer-key auth, MIT licence.
Russian-language version:
MCP-сервер hpt.su — поиск по крупнейшей базе российских и ЕАЭС документов соответствия для автотранспорта: ОТТС, СБКТС, ОТШ, СУТ (сообщения об утверждении типа), сертификаты соответствия и декларации (ТР ТС / ТР ЕАЭС). Источник: https://hpt.su. REST API: https://hpt.su/api/v1/docs/. Только чтение, Bearer-аутентификация, лицензия MIT.
Keywords
mcp · model-context-protocol · hpt.su · vehicle certification · type approval · ОТТС · СБКТС · EAEU · TR CU 018 · conformity certificate · declaration of conformity · сертификат соответствия · декларация о соответствии · СУТ · Russian compliance database · AI agent · Claude · Cursor · Cline
Development
git clone https://github.com/hpt-su/hptsu-mcp
cd hptsu-mcp
uv sync --all-groups
uv run pytest
uv run hptsu-mcp # launch via stdioLicense
MIT — see LICENSE.
Links
Source registry: https://hpt.su
MCP landing page: https://hpt.su/mcp/
MCP key cabinet: https://hpt.su/user/mcp/
API documentation: https://hpt.su/api/v1/docs/
OpenAPI schema: https://hpt.su/api/v1/schema/
Public pricing: https://hpt.su/pricing/
Issue tracker: https://github.com/hpt-su/hptsu-mcp/issues
Contact: mcp@hpt.su
Model Context Protocol: https://modelcontextprotocol.io
mcp-name: su.hpt/hptsu-mcp
Available Tools
21 toolsdownload_document_fileAInspect
Issue a signed URL to download the document PDF from hpt.su.
Returns {download_url, file_name, kind, document_id}. The URL is
encrypted with the user_id behind the API key — opening it works only
if the user is signed in to hpt.su under the same account. The
dl_counter is decremented on the website at actual download time, not
here.
Requires an active subscription covering the document's kind or a stand-alone DOC_PURCHASE. On the free tier returns 403 with an upgrade prompt to https://hpt.su/pricing/.
| Name | Required | Description | Default |
|---|---|---|---|
| file_uid | Yes | DocumentFile UID (from list_document_files). |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses return format, user-binding of URL, subscription requirements, free-tier behavior (403 with upgrade prompt), and that dl_counter decrements at download time, providing excellent transparency.
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 sentences, front-loaded with purpose, no redundant information. 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?
For a single-parameter tool with output schema, the description covers behavior, auth, subscription, and error handling comprehensively.
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 the schema already describes file_uid. The description adds context about the return value but does not enhance parameter semantics 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 starts with 'Issue a signed URL to download the document PDF from hpt.su,' which is a specific verb-resource pair. It clearly distinguishes from sibling tools like list_document_files (which lists files) by focusing on download functionality.
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 context on when to use the tool (to download a PDF) and mentions subscription requirements, but does not explicitly state when not to use it or compare to alternatives, leaving implicit guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fulltext_searchAInspect
Full-text search inside type-approval document bodies (PDF text).
Covers ОТТС / ОТШ / ЗОТТС / ЗОТШ — kinds where Document.fulltext index
is populated. СБКТС / ЗОЕТС / СУТ / cert / decl don't have fulltext
index and are not searchable here.
Premium feature — requires a paid MCP key with use_fulltext +
subscription on at least one type-approval kind.
| Name | Required | Description | Default |
|---|---|---|---|
| kind | No | Filter by registry kind. One of: otts, otch, zotts, zotch. Default: search across all 4 type-approval kinds. | |
| page | No | 1-based page index. | |
| query | Yes | Free-text query (Russian, tsquery-syntax allowed). | |
| page_size | No | Rows per page (max 50). |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses premium requirement, index limitations, and the set of supported kinds. It could mention that the tool is read-only with no side effects, but the search nature implies safety.
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 succinct with three short paragraphs. The first sentence immediately states the core function. Every sentence provides essential information without 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?
Given the presence of an output schema, the description adequately covers scope, constraints, and premium requirement. It could mention the nature of results (e.g., matching documents with snippets), but the output schema likely handles this.
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 listing the four kind values explicitly, clarifying the default behavior, and noting Russian query syntax and tsquery support, providing context 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 it performs full-text search inside type-approval document bodies (PDF text). It specifies which kinds are covered (ОТТС/ОТШ/ЗОТТС/ЗОТШ) and explicitly excludes others, distinguishing it from sibling metadata search 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?
The description provides explicit guidance on which kinds are searchable and which are not, and notes the premium feature requirement. It could be improved by directly comparing to sibling kind-specific search tools, but the context is sufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_documentAInspect
Fetch a single Document by slug+kind.
| Name | Required | Description | Default |
|---|---|---|---|
| kind | Yes | One of: otts, otch, zotts, zotch, sbkts, zoets, sout, cert, decl. Slug isn't globally unique between kinds, so kind is required. | |
| slug | Yes | Document slug — URL-form of the number (the same as in site URL). |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description indicates a read operation ('Fetch'), but no annotations are provided. It does not disclose behavioral traits like auth needs, rate limits, or error handling for missing documents. The presence of an output schema partially compensates.
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 front-loaded sentence with no wasted words. Every part is 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?
For a simple fetch tool with full schema coverage and output schema, the description is nearly complete. It lacks usage guidelines, but overall is sufficient for an agent to understand the tool's purpose.
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 both parameters. The description adds 'slug+kind' but no new meaning beyond what the schema provides. Baseline 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 the tool fetches a single Document using slug and kind. The verb 'Fetch' and resource 'Document' are explicit, and it distinguishes from sibling search tools that return multiple results.
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 implies usage when you have a specific slug and kind but lacks explicit guidance on when to use this tool versus alternatives like search_documents. No exclusions or context are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_brandsBInspect
Resolve a vehicle brand name to its canonical record (used to filter type approvals).
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | Brand name substring (e.g. 'KAMAZ'). | |
| page | No | 1-based page index. | |
| page_size | No | Rows per page (max 50). |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states the tool resolves to a canonical record but does not clarify whether this is a list operation (despite the tool name) or a single lookup, nor does it mention side effects, permissions, or pagination behavior. The presence of page and page_size parameters suggests a list, but the description implies a single resolution.
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 sentence with no unnecessary words. It is front-loaded with the core purpose and is highly concise, meeting the criterion for appropriate sizing.
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 tool has 3 parameters (all optional) with pagination, and an output schema exists but is not detailed. The description does not explain the behavior of the 'name' parameter (substring match, exact match), the nature of the result (single record or list), or how pagination interacts with the resolution. This incompleteness leaves significant gaps for an agent.
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 each parameter (name, page, page_size) already has a description in the schema. The function-level description adds only the context of filtering type approvals, which does not significantly enhance understanding of the parameters. Therefore, baseline score 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 the tool resolves a vehicle brand name to its canonical record and specifies the use case of filtering type approvals. The verb 'resolve' and resource 'vehicle brand name to canonical record' are specific, and the purpose is distinct from sibling tools like list_vehicle_models or list_certification_bodies.
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 implies usage for resolving brand names when filtering type approvals, but it does not explicitly state when to use this tool versus alternatives. There are no exclusions or conditional guidance provided, leaving the agent to infer the context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_certification_bodiesAInspect
Lookup accredited certification bodies (issuers of сертификатов/деклараций).
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | Body name substring. | |
| page | No | 1-based page index. | |
| page_size | No | Rows per page (max 50). |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided; the description reveals the tool is a read operation ('lookup') but adds no behavioral details beyond the basic function, such as pagination behavior or that it is safe.
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, efficient sentence with no wasted words, placed at the start.
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 tool's simplicity (list with optional filters and pagination) and the presence of an output schema, the description is sufficient for an agent to understand and invoke the tool 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 baseline is 3. The description does not add meaning beyond the schema; it only repeats the param name context.
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 what the tool does: 'Lookup accredited certification bodies' with a specific resource and purpose, distinguishing it from siblings that list other entities like brands or registry kinds.
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 does not specify when to use this tool versus alternatives, nor does it mention any exclusions or prerequisites. Usage is implied but not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_document_filesAInspect
List the files attached to a document.
Returns [{file_uid, file_name, kind, pages_count, published_at}] —
each entry's file_uid can be passed to download_document_file.
A document often has several PDFs (e.g. cleaned + original); use this tool to enumerate them and pick the right one before download.
| Name | Required | Description | Default |
|---|---|---|---|
| kind | Yes | One of: otts, otch, zotts, zotch, sbkts, zoets, sout, cert, decl. Slug isn't globally unique between kinds, so kind is required. | |
| document_slug | Yes | Document slug (from search.slug field). |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries burden. Discloses return format, field meanings, and that file_uid is used for download. No mention of side effects (likely none), but sufficient for a list tool.
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?
Four sentences, front-loaded with main action. No redundant words. Efficient and well-structured.
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?
Complete for a listing tool: explains output, usage pattern, and relationship with sibling. With output schema implied, description covers all needed context.
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 parameters are well-described in schema. Description adds no extra parameter meaning beyond the schema, but context is adequate. Baseline 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?
Clearly states 'list the files attached to a document' with specific verb and resource. Distinguishes from sibling tool download_document_file by noting file_uid usage. No ambiguity.
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?
Describes when to use: before downloading to pick the right file. Mentions common scenario (cleaned vs original). Does not explicitly exclude other uses or mention alternatives, but context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_registry_kindsBInspect
Return the catalogue of registry kinds exposed by the hpt.su public API.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description must disclose behaviors. It only states the return value, but does not mention that it is a read-only safe operation, any rate limits, or data freshness. The agent must infer behavior from the tool name and default assumptions.
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 concise sentence (12 words) that includes the key information: what it returns and from which API. It is appropriately front-loaded and efficient.
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 tool has no parameters and an output schema exists, the description is largely complete. It identifies the resource and source. Additional details about when to use it would be beneficial, but the simplicity keeps this from being a significant gap.
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 tool has zero parameters, so schema coverage is 100%. The description adds the context that the API is public, but parameter semantics are not applicable. Baseline score of 4 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 the tool returns a catalogue of registry kinds from the hpt.su public API. The verb 'Return' is adequate and the resource is specific, differentiating it from sibling list_* tools that return different entities. However, it does not explicitly distinguish from siblings.
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 no guidance on when to use this tool versus alternatives. No context, prerequisites, or exclusions are mentioned. For a parameterless tool, this is a minor gap but still a lack of guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_test_labsBInspect
Lookup accredited testing laboratories (issuers of СБКТС/ЗОЕТС).
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | Lab name substring. | |
| page | No | 1-based page index. | |
| short_id | No | Lab short identifier. | |
| page_size | No | Rows per page (max 50). |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided. The description does not disclose behavioral traits such as read-only nature, pagination, or filtering logic beyond the literal 'lookup'. It relies entirely on the schema for details.
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 sentence, no redundancy, front-loaded action. Every word earns its place.
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?
Output schema exists, so return values are covered. However, the description omits mention of pagination behavior (despite page parameters) and does not explicitly state that results are a list of labs. Adequate but not fully 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?
Schema description coverage is 100%; each parameter (name, page, short_id, page_size) has a description. The tool description adds no extra meaning beyond the schema, so baseline score applies.
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 'Lookup accredited testing laboratories' with a specific context 'issuers of СБКТС/ЗОЕТС'. It uniquely identifies the tool's purpose among siblings that handle different entities like brands, VINs, or documents.
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?
No guidance on when to use this tool versus alternatives (e.g., search_zoets). The description only defines what it does, not when it's appropriate or when to prefer a sibling.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_tnved_codesAInspect
TN VED EAEU classifier lookup.
Note: TN VED codes are linked only to certificates and declarations — not to vehicle type approvals or safety reports.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | 1-based page index. | |
| query | No | Free-text description search. | |
| prefix | No | TN VED code prefix (e.g. '8704'). | |
| page_size | No | Rows per page (max 50). |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It describes the tool as a 'lookup' but does not disclose behavioral traits such as pagination behavior, rate limits, or error handling. The note adds scope context but not 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 sentences: the first states the purpose, the second adds critical usage context. Every sentence earns its place with no wasted words.
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 that an output schema exists, the description does not need to explain return values. The description is complete for a lookup tool with well-documented schema parameters. Minor gap: could mention pagination behavior, but schema implies it.
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 the baseline is 3. The description adds a scope context (linkage) but does not add additional meaning beyond what the schema already provides for parameters like page, query, prefix, and page_size.
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 'TN VED EAEU classifier lookup' with a specific verb ('lookup') and resource ('TN VED codes'). The note about linkage distinguishes it from sibling tools that might involve different code types.
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 note explicitly clarifies that TN VED codes are linked only to certificates/declarations, not to vehicle type approvals or safety reports. This provides clear context on when to use this tool and when not, though alternative tools are not named.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_vehicle_modelsCInspect
Resolve a vehicle model name (within a brand) to canonical record.
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | Model name substring. | |
| page | No | 1-based page index. | |
| brand | No | Brand name (auto-resolved to id) or numeric brand id. | |
| page_size | No | Rows per page (max 50). |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It does not disclose that the tool returns a list (supporting pagination) rather than a single canonical record. Behavior like fuzzy matching or error handling is not mentioned.
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 sentence, concise but lacks structure. Could be improved with clearer separation of purpose and behavior.
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 4 parameters and an output schema, the description is somewhat complete but misses key behavioral aspects like listing/pagination. It does not fully align with the tool's name and input 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%. The description adds high-level intent but does not clarify parameter specifics beyond what the schema already provides, such as how the name substring works or the role of page.
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 'Resolve a vehicle model name (within a brand) to canonical record' suggests a single-record resolution, but the tool name 'list_vehicle_models' and input schema with pagination indicate it returns multiple records. This ambiguity reduces clarity.
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?
No guidance on when to use this tool versus alternatives like list_brands or search tools. No mention of prerequisites or context for use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_by_vinAInspect
Aggregated search by VIN across all car-kinds (ОТТС/ОТШ/ЗОТТС/ЗОТШ/ СБКТС/ЗОЕТС). Open for any active API key — no subscription required.
Returns substring matches via UNION across kind-tables sorted by
issue_date DESC. For exact full-VIN match within a single kind,
use the per-kind tool (search_otts/search_sbkts/…) — they autoroute
substring↔DAWG by VIN validity.
| Name | Required | Description | Default |
|---|---|---|---|
| vin | Yes | VIN substring or full code (5-17 chars). |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses that the search returns substring matches via UNION across kind-tables sorted by issue_date DESC, and states it's open for any active API key with no subscription required. Since no annotations are provided, the description carries the full burden and does well, though rate limits or other limitations are not mentioned.
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 efficiently written in two paragraphs, with no redundant information. Each sentence serves a purpose: stating scope, access, behavior, and alternatives. It is appropriately sized for the complexity.
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 simple input schema (one parameter), the presence of an output schema, and the clear explanation of search behavior, sorting, and alternatives, the description is fully complete for an agent to understand and use the tool 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?
The schema covers 100% of parameters, but the description adds value by explaining that the parameter is used for substring matching across kinds and that results are sorted by issue_date. It also clarifies the difference between substring and exact matching, enhancing the parameter meaning.
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 performs an aggregated search by VIN across all car-kinds, listing specific kinds. It distinguishes itself from per-kind tools by mentioning the scope is across all kinds, making the purpose very specific.
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 explicitly advises using per-kind tools (e.g., search_otts, search_sbkts) for exact full-VIN matches within a single kind, providing clear when-to-use and when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_certificatesCInspect
Search conformity certificates (ТР ТС / ТР ЕАЭС).
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | 1-based page index. | |
| number | No | Certificate number, full or partial. | |
| scheme | No | Certification scheme — '1с'…'9с'. | |
| status | No | Certificate status code. | |
| product | No | Product full name (icontains). | |
| applicant | No | Applicant name (icontains). | |
| page_size | No | Rows per page (max 50). | |
| regulations | No | Technical regulation code (e.g. 'ТР ТС 018/2011'). | |
| manufacturer | No | Manufacturer name (icontains). | |
| applicant_inn | No | Applicant INN (exact match). |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description must cover behavioral traits. It only states 'Search conformity certificates' with no disclosure about read-only nature, pagination, rate limits, or any mutations. This is insufficient for agent decision-making.
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 sentence with no wasted words, but it is somewhat sparse. It could include a bit more context without losing conciseness.
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 does not mention output format, pagination, or filtering behavior despite the tool having 10 parameters and an output schema. It is incomplete for a search tool of this complexity.
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 10 parameters have detailed descriptions in the input schema (100% coverage), so the description adds no additional meaning beyond the schema. Baseline score applies.
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 searches for conformity certificates with specific regulatory frameworks (ТР ТС / ТР ЕАЭС). It uses a specific verb and resource, but does not explicitly differentiate from sibling search tools like search_declarations or search_documents, though the domain is 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 provides no guidance on when to use this tool versus alternatives. It does not mention prerequisites, exclusions, or typical use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_declarationsBInspect
Search declarations of conformity (ТР ТС / ТР ЕАЭС).
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | 1-based page index. | |
| number | No | Declaration number, full or partial. | |
| scheme | No | Declaration scheme — '1д'…'6д'. | |
| status | No | Declaration status code. | |
| product | No | Product full name (icontains). | |
| applicant | No | Applicant name (icontains). | |
| page_size | No | Rows per page (max 50). | |
| regulations | No | Technical regulation code (e.g. 'ТР ТС 018/2011'). | |
| manufacturer | No | Manufacturer name (icontains). | |
| applicant_inn | No | Applicant INN (exact match). |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It does not disclose behavioral traits such as read-only nature, pagination behavior, or any side effects. The description is too sparse to inform the agent about what happens when the tool is invoked.
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 sentence, which is concise but too brief given the tool's complexity (10 parameters). It is front-loaded with the key action, but does not earn its place by adding value beyond the name. An appropriate size would include at least one more sentence for context.
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 the tool having 10 parameters and many sibling tools, the description lacks any contextual information such as output structure, typical use cases, or differentiation. It is insufficient for an agent to understand when or how to use this tool effectively.
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 individual parameter descriptions are already available. The tool-level description adds no extra meaning beyond stating the purpose. With full schema coverage, baseline score is 3; description does not improve or degrade.
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 searches declarations of conformity, specifies the regulatory scope (ТР ТС / ТР ЕАЭС), and uses a specific verb 'search' with a distinct resource, differentiating it from sibling tools like search_certificates.
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 no guidance on when to use this tool versus alternatives such as search_certificates or search_documents. It does not mention exclusions, prerequisites, or context of use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_documentsBInspect
Cross-registry search by document number across all hpt.su kinds.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | 1-based page index. | |
| number | No | Document number, full or partial. | |
| page_size | No | Rows per page (max 50). |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description bears full burden for behavioral disclosure. It does not mention that results are paginated, nor does it describe any limits, side effects, or authentication requirements. The description only states what the tool does, not how it behaves.
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, concise sentence that fully conveys the tool's core purpose without any extraneous information. Every word 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 complexity (pagination parameters) and the presence of an output schema, the description is adequate but incomplete. It does not explain that the search is only by document number or that results are paginated, though the schema covers parameter details.
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 parameters. The description adds no additional meaning beyond what the schema provides, meeting the baseline of 3.
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 verb ('search') and the resource ('documents across all hpt.su kinds'), and the phrase 'cross-registry' distinguishes this tool from sibling search tools that are registry-specific, making the purpose unambiguous.
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 no guidance on when to use this tool versus alternatives like fulltext_search or registry-specific searches. It does not mention that the search is limited to document number, nor does it exclude use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_otchCInspect
Search ОТШ (chassis type approvals).
| Name | Required | Description | Default |
|---|---|---|---|
| vin | No | VIN substring (5-17 chars). | |
| page | No | 1-based page index. | |
| type | No | Type / model. | |
| brand | No | Brand. | |
| issuer | No | Certification body name — auto-resolved to id (or pass numeric id). | |
| number | No | ОТШ number, full or partial. | |
| category | No | Vehicle category. | |
| comm_name | No | Commercial name. | |
| eco_class | No | Ecological class — '5' or name; auto-resolved to reference id. | |
| page_size | No | Rows per page (max 50). | |
| axis_count | No | Axle count (e.g. '2') or exact 'axes / wheels' (e.g. '2 / 4') — auto-resolved to reference id. A bare axle count may match several wheel configs; then candidates are returned to pick from. | |
| wheel_formula | No | Wheel formula (e.g. '4x2'); auto-resolved to reference id. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavioral traits. It only states the search action, omitting details about pagination, result format, or that it is likely read-only. The agent gets no behavioral insight beyond the operation name.
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 very concise at one sentence with no fluff. However, it could be more informative without becoming verbose, such as mentioning the scope of the search or result details.
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 complexity of 12 parameters and the existence of an output schema, the description is too minimal. It does not explain the search's purpose, result structure, or constraints like auto-resolution behavior, leaving significant gaps.
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 each parameter is documented in the schema. The tool description adds no extra meaning beyond the schema, meeting the baseline of 3.
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 'Search ОТШ (chassis type approvals)', specifying verb and resource. However, it does not differentiate from sibling search tools like search_otts or search_sbkts, which have similar names.
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?
No guidance on when to use this tool versus alternatives. The description lacks context about prerequisites or scenarios for chassis type approval search, leaving the agent without decision support.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_ottsCInspect
Search ОТТС (vehicle type approvals, ТР ТС 018/2011).
| Name | Required | Description | Default |
|---|---|---|---|
| vin | No | VIN substring (5-17 chars) — backend autoroute substring/DAWG. | |
| mods | No | Modifications (icontains). | |
| page | No | 1-based page index. | |
| type | No | Vehicle type / model (icontains). | |
| brand | No | Vehicle brand (e.g. 'Toyota'). | |
| issuer | No | Certification body name — auto-resolved to id (or pass numeric id). See list_certification_bodies. | |
| number | No | ОТТС number, full or partial. | |
| chassis | No | Chassis identifier (icontains). | |
| category | No | Vehicle category (M1, N2, L3, …). | |
| comm_name | No | Commercial name (icontains). | |
| eco_class | No | Ecological class — pass '5' or the name; auto-resolved to reference id. | |
| page_size | No | Rows per page (max 50). | |
| axis_count | No | Axle count (e.g. '2') or exact 'axes / wheels' (e.g. '2 / 4') — auto-resolved to reference id. A bare axle count may match several wheel configs; then candidates are returned to pick from. | |
| wheel_formula | No | Wheel formula (e.g. '4x2'); auto-resolved to reference id. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description does not disclose any behavioral traits such as whether the search is read-only, if it requires authentication, or what the response structure looks like. For a search tool with no annotations, the description should provide more context.
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 sentence, front-loading the core purpose without any fluff. It is efficiently concise, though it could benefit from a bit more context.
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 14 parameters and an output schema, the description is minimal. The schema covers parameter details, but the description lacks guidance on typical usage or filtering strategies. It is adequate but not comprehensive.
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 parameters thoroughly. The description adds no additional parameter-level information, but baseline 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?
Description clearly states it searches for vehicle type approvals (ОТТС) under a specific regulation, which is a specific verb+resource. However, it does not differentiate from sibling search tools like search_zoets or search_zotts, which could be confusing for an agent.
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?
There is no guidance on when to use this tool versus alternatives like search_certificates or search_declarations. The agent must infer from the name alone, which is unclear given multiple similar tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_sbktsCInspect
Search СБКТС (vehicle safety certificate).
| Name | Required | Description | Default |
|---|---|---|---|
| vin | No | VIN (10-17 chars; substring/exact). | |
| page | No | 1-based page index. | |
| type | No | Type. | |
| year | No | Manufacture year (YYYY). | |
| brand | No | Brand. | |
| motor | No | Electric motor model (icontains). | |
| engine | No | ICE engine model (icontains). | |
| issuer | No | Testing lab name — auto-resolved to id (or pass numeric id). See list_test_labs. | |
| number | No | СБКТС number. | |
| date_to | No | Issue date to (YYYY-MM-DD). | |
| category | No | Vehicle category. | |
| comm_name | No | Commercial name. | |
| date_from | No | Issue date from (YYYY-MM-DD). | |
| eco_class | No | Ecological class — '5' or name; auto-resolved to reference id. | |
| page_size | No | Rows per page (max 50). | |
| axis_count | No | Axle count (e.g. '2') or exact 'axes / wheels' (e.g. '2 / 4') — auto-resolved to reference id. A bare axle count may match several wheel configs; then candidates are returned to pick from. | |
| motor_power | No | Motor power (kW). | |
| wheel_formula | No | Wheel formula (e.g. '4x2'); auto-resolved to reference id. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description does not disclose any behavioral traits like pagination, filtering logic, or result format. For a search tool with 18 parameters, this is a significant omission.
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 extremely short (one sentence), but it is under-specified rather than efficient. Essential information about usage and behavior is missing.
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 18 parameters and no annotations, the description is severely incomplete. It omits details about output format, pagination, auto-resolution of parameters, and error 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% with detailed parameter descriptions, so the baseline is 3. The tool description adds no additional semantic meaning beyond what's in the schema, so it stays at 3.
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 the tool searches for vehicle safety certificates (СБКТС), which is clear but fails to distinguish it from sibling tools like search_certificates or search_declarations that also search for certificate types.
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?
No guidance on when to use this tool versus alternatives such as search_declarations or search_otts. The description lacks any context for tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_soutBInspect
Search СУТ (vehicle type notification — small dataset, only basic fields).
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | 1-based page index. | |
| type | No | Type. | |
| brand | No | Brand. | |
| number | No | СУТ number. | |
| page_size | No | Rows per page (max 50). |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavioral traits. It adds that the dataset is small and contains only basic fields, which sets expectations about result size and detail. However, it does not mention pagination behavior, rate limits, or any implications of the search (e.g., partial vs. exact matching).
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 sentence that is front-loaded with the core purpose and includes a useful qualifier. Every word earns its place with no repetition or 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?
Given 5 parameters (none required) and an output schema, the description is minimal but sets expectations about data size and field richness. However, it lacks details on search behavior, exact fields available, and how this tool differs from similarly named siblings (e.g., search_ots, search_otch). More context would be beneficial.
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 baseline is 3. The tool description does not add any additional meaning to the parameters beyond what is already in the schema. It only says 'basic fields' generically.
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 the verb 'Search' and the resource 'СУТ (vehicle type notification)'. The qualifier 'small dataset, only basic fields' differentiates it from potentially more comprehensive sibling tools like search_otts, making its scope immediately clear.
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 only hints at usage context ('small dataset, only basic fields') but provides no explicit guidance on when to use this tool versus any of the 20 sibling search tools. No alternatives are named, and no exclusion criteria are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_zoetsCInspect
Search ЗОЕТС (vehicle technical expertise conclusion).
| Name | Required | Description | Default |
|---|---|---|---|
| vin | No | VIN (10-17 chars). | |
| page | No | 1-based page index. | |
| type | No | Type. | |
| year | No | Manufacture year. | |
| brand | No | Brand. | |
| motor | No | Electric motor model. | |
| engine | No | ICE engine model. | |
| issuer | No | Testing lab name — auto-resolved to id (or pass numeric id). | |
| number | No | ЗОЕТС number. | |
| date_to | No | Issue date to (YYYY-MM-DD). | |
| category | No | Vehicle category. | |
| comm_name | No | Commercial name. | |
| date_from | No | Issue date from (YYYY-MM-DD). | |
| eco_class | No | Ecological class — '5' or name; auto-resolved to reference id. | |
| page_size | No | Rows per page (max 50). | |
| axis_count | No | Axle count (e.g. '2') or exact 'axes / wheels' (e.g. '2 / 4') — auto-resolved to reference id. A bare axle count may match several wheel configs; then candidates are returned to pick from. | |
| motor_power | No | Motor power (kW). | |
| wheel_formula | No | Wheel formula (e.g. '4x2'); auto-resolved to reference id. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. However, it only states the action ('Search') without revealing any behavioral traits such as idempotency, read-only nature, rate limits, or side effects.
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 sentence, making it concise. However, it is too brief given the complexity of the tool (18 parameters); it could include more contextual information without losing conciseness.
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 lacks essential context for a search tool with many optional parameters and an output schema. It does not explain how the search works, the significance of the results, or how parameters interact. The presence of an output schema mitigates the need to explain return values, but other aspects 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?
Schema coverage is 100%, and each parameter already has a description in the schema that explains its meaning. While some descriptions (e.g., axis_count, issuer) provide extra context about auto-resolution, the tool description does not add significant value beyond what the schema offers.
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 searches for 'ЗОЕТС (vehicle technical expertise conclusion)', providing a specific resource. However, it does not distinguish this from sibling tools like search_otts or search_certificates, which have similar naming patterns.
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?
No guidance is provided on when to use this tool versus alternatives. All parameters are optional, but there is no mention of typical use cases, prerequisites, or when not to use this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_zotchCInspect
Search ЗОТШ (chassis conformity assessment conclusion).
| Name | Required | Description | Default |
|---|---|---|---|
| vin | No | VIN substring. | |
| page | No | 1-based page index. | |
| type | No | Type. | |
| brand | No | Brand. | |
| issuer | No | Certification body name — auto-resolved to id (or pass numeric id). | |
| number | No | ЗОТШ number. | |
| category | No | Vehicle category. | |
| eco_class | No | Ecological class — '5' or name; auto-resolved to reference id. | |
| page_size | No | Rows per page (max 50). | |
| axis_count | No | Axle count (e.g. '2') or exact 'axes / wheels' (e.g. '2 / 4') — auto-resolved to reference id. A bare axle count may match several wheel configs; then candidates are returned to pick from. | |
| wheel_formula | No | Wheel formula (e.g. '4x2'); auto-resolved to reference id. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description must convey behavioral traits. It fails to mention pagination, result format, destructive potential, or any constraints beyond the schema, leaving the agent uninformed.
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 sentence, front-loaded with purpose. It is concise but overly minimal, lacking structure that could convey usage context—acceptable but not optimal.
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 tool's 11 parameters and 19 siblings, the description is fundamentally incomplete. It omits guidance on result structure, pagination, and how this search differs from others, making it insufficient for effective agent decision-making.
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%, minimizing the need for additional parameter detail. The tool description itself adds no value, but the baseline is met by the schema, resulting in an adequate score.
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 'Search ЗОТШ (chassis conformity assessment conclusion)', identifying the verb and resource. However, it does not differentiate this search from sibling tools like search_certificates or search_declarations, making it somewhat vague for an agent with many options.
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?
No guidance is provided on when to use this tool versus alternatives, nor any exclusion criteria. The agent receives no hints about prerequisite filters or typical use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_zottsCInspect
Search ЗОТТС (vehicle conformity assessment conclusion).
| Name | Required | Description | Default |
|---|---|---|---|
| vin | No | VIN substring. | |
| page | No | 1-based page index. | |
| type | No | Type. | |
| brand | No | Brand. | |
| issuer | No | Certification body name — auto-resolved to id (or pass numeric id). | |
| number | No | ЗОТТС number. | |
| category | No | Vehicle category. | |
| eco_class | No | Ecological class — '5' or name; auto-resolved to reference id. | |
| page_size | No | Rows per page (max 50). | |
| axis_count | No | Axle count (e.g. '2') or exact 'axes / wheels' (e.g. '2 / 4') — auto-resolved to reference id. A bare axle count may match several wheel configs; then candidates are returned to pick from. | |
| wheel_formula | No | Wheel formula (e.g. '4x2'); auto-resolved to reference id. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries full burden for behavioral disclosure. The description provides zero behavioral details—no mention of pagination, result structure, authentication, or side effects. This is a severe gap for a search tool.
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, concise sentence that wastes no words. It is appropriately sized for the amount of information it conveys, though it could be moderately expanded without sacrificing conciseness.
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 having an output schema, the description is far from complete. It fails to explain the tool's scope, typical use cases, or how it differs from similar search tools (e.g., by entity type or constraints). Given the tool's complexity (11 parameters, many siblings), more context is necessary for effective selection.
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 11 parameters. The tool description adds no parameter-specific information beyond what is in the schema. Baseline 3 is appropriate as the description does not degrade or enhance parameter understanding.
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 verb 'Search' and the resource 'ЗОТТС (vehicle conformity assessment conclusion)', making the tool's function obvious. However, it does not distinguish this tool from many sibling search tools targeting similar entities (e.g., search_otts, search_zoets), which share the same verb and pattern.
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?
No guidance is provided on when to choose this tool over alternatives (e.g., search_otts, search_zoets). There are no descriptions of when to use, when not to use, or references to other tools for different purposes.
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.
21 tool updates
v0.3.1- First observed
download_document_file - First observed
fulltext_search - First observed
get_document - First observed
list_brands - First observed
list_certification_bodies - First observed
list_document_files - First observed
list_registry_kinds - First observed
list_test_labs - First observed
list_tnved_codes - First observed
list_vehicle_models - First observed
search_by_vin - First observed
search_certificates - First observed
search_declarations - First observed
search_documents - First observed
search_otch - First observed
search_otts - First observed
search_sbkts - First observed
search_sout - First observed
search_zoets - First observed
search_zotch - First observed
search_zotts
TDQS
Scored across 21 tools
Each tool has a clearly distinct purpose: list tools for reference data, search tools for specific document kinds or aggregated searches, and document retrieval tools. No two tools overlap in functionality, and descriptions make the differences clear.
All tool names follow a consistent verb_noun pattern in snake_case (e.g., search_otts, list_brands, download_document_file). The verbs are consistently 'search', 'list', 'get', 'download', and 'fulltext' as a modifier. No mixing of conventions.
With 21 tools, the set is slightly large but justifiable given the many document kinds and search methods. Each tool addresses a specific need, and the number is within a reasonable range for such a comprehensive data retrieval server.
The tool surface covers the full lifecycle of document discovery: reference lookup (brands, models, labs, etc.), multiple search modalities (by VIN, document number, fulltext, per-kind), file listing, and download. No obvious gaps for a read-oriented API.
Maintenance
Related MCP Connectors
Search and analytics for Russian public procurement (44-FZ/223-FZ): tenders, contracts, market data
Search 160k+ Russian B2B products from 8,900+ verified manufacturers (EN/RU).
Search, compare & filter 102,191 European car variants — 180 specs, 19 languages, EV data.
Decode VINs, search recalls, complaints, crash ratings, and investigations.
Related MCP Servers
- AlicenseAqualityFmaintenanceMCP server for searching Russia's official software catalog (каталогпо.рф) containing 26,000+ domestic products. Enables finding Russian alternatives to foreign software, checking FSTEC/FSB certifications, and discovering vendors for import substitution directly from Claude or any MCP client.37MIT
- AlicenseAqualityBmaintenanceMCP server for verifying Russian counterparties (legal entities and individual entrepreneurs) via public Federal Tax Service data: EGRUL/EGRIP, bankruptcy registry (EFRSB), Transparent Business, bailiff service (FSSP), and arbitration courts (KAD).8102 PyPI15MIT
- AlicenseAqualityAmaintenanceMCP server for the Russian state registries EGRUL (legal entities) and EGRIP (individual entrepreneurs), built on official Federal Tax Service open-data dumps. Self-hosted via local SQLite.82MIT
- AlicenseAqualityCmaintenanceProvides vehicle wheel and tyre fitment data for 10,000+ makes, models, and trim levels through 32 read-only tools, enabling searches by vehicle, rim, or tire specifications.3237 npmMIT