Skip to main content
Glama
HPT-SU

hptsu MCP server

Official
by HPT-SU

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.

License: MIT Python 3.11+

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-mcp

2. 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

hpt.su/user/mcp/

Paid MCP

10 000 requests/day, fulltext + downloads

See pricing

hpt.su/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.

  1. Create an account at hpt.su/accounts/signup/.

  2. Click "Get free MCP key" in hpt.su/user/mcp/.

  3. (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

search_documents

Cross-registry search by document number (any kind).

Free

get_document

Fetch a single Document by UUID.

Free

search_certificates

Conformity certificates — filter by number, applicant, status, scheme, TN VED code.

Free

search_declarations

Declarations of conformity.

Free

search_type_approvals

Vehicle (ОТТС) or chassis (ОТШ) type approvals — filter by brand / model / year / applicant.

Free

search_safety_reports

СБКТС / СУТ / ЗОЕТС / ЗОТШ / ЗОТТС feeds.

Free

search_by_vin

Aggregated VIN search across ОТТС / СБКТС / ЗОЕТС / ЗОТТС.

Free

fulltext_search

Full-text search inside PDF bodies.

Paid

download_document_file

Issue a time-limited signed PDF download URL.

Paid

Reference dictionaries

Tool

What it does

list_brands

Resolve vehicle brand names.

list_vehicle_models

Resolve vehicle model names within a brand.

list_test_labs

Accredited testing laboratories.

list_certification_bodies

Accredited certification bodies.

list_tnved_codes

TN VED EAEU classifier (cert/decl context only).

list_registry_kinds

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 / brand also take a numeric id directly). An ambiguous name returns the matching candidates to pick from.

Configuration

Variable

Default

Meaning

HPTSU_API_KEY

required

Bearer key from hpt.su cabinet.

HPTSU_BASE_URL

https://hpt.su/api/v1

Override for staging / on-prem deployments.

HPTSU_TRANSPORT

stdio

stdio · streamable-http · sse.

HPTSU_TIMEOUT

30.0

Per-request HTTP timeout (s).

HPTSU_USER_AGENT

hptsu-mcp/0.1

User-Agent header.

HPTSU_LOG_LEVEL

INFO

Standard logging levels.

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 stdio

License

MIT — see LICENSE.

mcp-name: su.hpt/hptsu-mcp

Available Tools

21 tools
download_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/.

ParametersJSON Schema
NameRequiredDescriptionDefault
file_uidYesDocumentFile UID (from list_document_files).

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.5/5.0
Behavior5/5

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.

Conciseness5/5

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.

Completeness5/5

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.

Parameters3/5

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.

Purpose5/5

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.

Usage Guidelines4/5

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.

get_documentAInspect

Fetch a single Document by slug+kind.

ParametersJSON Schema
NameRequiredDescriptionDefault
kindYesOne of: otts, otch, zotts, zotch, sbkts, zoets, sout, cert, decl. Slug isn't globally unique between kinds, so kind is required.
slugYesDocument slug — URL-form of the number (the same as in site URL).

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior3/5

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.

Conciseness5/5

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.

Completeness4/5

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.

Parameters3/5

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.

Purpose5/5

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.

Usage Guidelines3/5

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).

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoBrand name substring (e.g. 'KAMAZ').
pageNo1-based page index.
page_sizeNoRows per page (max 50).

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.4/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters3/5

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.

Purpose5/5

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.

Usage Guidelines3/5

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 сертификатов/деклараций).

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoBody name substring.
pageNo1-based page index.
page_sizeNoRows per page (max 50).

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.9/5.0
Behavior3/5

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.

Conciseness5/5

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.

Completeness5/5

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.

Parameters3/5

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.

Purpose5/5

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.

Usage Guidelines3/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
kindYesOne of: otts, otch, zotts, zotch, sbkts, zoets, sout, cert, decl. Slug isn't globally unique between kinds, so kind is required.
document_slugYesDocument slug (from search.slug field).

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.3/5.0
Behavior4/5

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.

Conciseness5/5

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.

Completeness5/5

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.

Parameters3/5

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.

Purpose5/5

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.

Usage Guidelines4/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.2/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness4/5

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.

Parameters4/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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 СБКТС/ЗОЕТС).

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoLab name substring.
pageNo1-based page index.
short_idNoLab short identifier.
page_sizeNoRows per page (max 50).

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.3/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness3/5

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.

Parameters3/5

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.

Purpose5/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNo1-based page index.
queryNoFree-text description search.
prefixNoTN VED code prefix (e.g. '8704').
page_sizeNoRows per page (max 50).

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior3/5

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.

Conciseness5/5

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.

Completeness4/5

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.

Parameters3/5

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.

Purpose5/5

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.

Usage Guidelines4/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoModel name substring.
pageNo1-based page index.
brandNoBrand name (auto-resolved to id) or numeric brand id.
page_sizeNoRows per page (max 50).

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.6/5.0
Behavior2/5

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.

Conciseness3/5

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.

Completeness3/5

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.

Parameters3/5

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.

Purpose3/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
vinYesVIN substring or full code (5-17 chars).

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.6/5.0
Behavior4/5

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.

Conciseness4/5

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.

Completeness5/5

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.

Parameters4/5

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.

Purpose5/5

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.

Usage Guidelines5/5

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 (ТР ТС / ТР ЕАЭС).

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNo1-based page index.
numberNoCertificate number, full or partial.
schemeNoCertification scheme — '1с'…'9с'.
statusNoCertificate status code.
productNoProduct full name (icontains).
applicantNoApplicant name (icontains).
page_sizeNoRows per page (max 50).
regulationsNoTechnical regulation code (e.g. 'ТР ТС 018/2011').
manufacturerNoManufacturer name (icontains).
applicant_innNoApplicant INN (exact match).

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.7/5.0
Behavior1/5

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.

Conciseness4/5

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.

Completeness2/5

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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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 (ТР ТС / ТР ЕАЭС).

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNo1-based page index.
numberNoDeclaration number, full or partial.
schemeNoDeclaration scheme — '1д'…'6д'.
statusNoDeclaration status code.
productNoProduct full name (icontains).
applicantNoApplicant name (icontains).
page_sizeNoRows per page (max 50).
regulationsNoTechnical regulation code (e.g. 'ТР ТС 018/2011').
manufacturerNoManufacturer name (icontains).
applicant_innNoApplicant INN (exact match).

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3/5.0
Behavior2/5

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.

Conciseness3/5

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.

Completeness2/5

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.

Parameters3/5

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.

Purpose5/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNo1-based page index.
numberNoDocument number, full or partial.
page_sizeNoRows per page (max 50).

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.3/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness3/5

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.

Parameters3/5

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.

Purpose5/5

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.

Usage Guidelines2/5

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).

ParametersJSON Schema
NameRequiredDescriptionDefault
vinNoVIN substring (5-17 chars).
pageNo1-based page index.
typeNoType / model.
brandNoBrand.
issuerNoCertification body name — auto-resolved to id (or pass numeric id).
numberNoОТШ number, full or partial.
categoryNoVehicle category.
comm_nameNoCommercial name.
eco_classNoEcological class — '5' or name; auto-resolved to reference id.
page_sizeNoRows per page (max 50).
axis_countNoAxle 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_formulaNoWheel formula (e.g. '4x2'); auto-resolved to reference id.

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.9/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness2/5

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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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).

ParametersJSON Schema
NameRequiredDescriptionDefault
vinNoVIN substring (5-17 chars) — backend autoroute substring/DAWG.
modsNoModifications (icontains).
pageNo1-based page index.
typeNoVehicle type / model (icontains).
brandNoVehicle brand (e.g. 'Toyota').
issuerNoCertification body name — auto-resolved to id (or pass numeric id). See list_certification_bodies.
numberNoОТТС number, full or partial.
chassisNoChassis identifier (icontains).
categoryNoVehicle category (M1, N2, L3, …).
comm_nameNoCommercial name (icontains).
eco_classNoEcological class — pass '5' or the name; auto-resolved to reference id.
page_sizeNoRows per page (max 50).
axis_countNoAxle 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_formulaNoWheel formula (e.g. '4x2'); auto-resolved to reference id.

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.9/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness3/5

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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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).

ParametersJSON Schema
NameRequiredDescriptionDefault
vinNoVIN (10-17 chars; substring/exact).
pageNo1-based page index.
typeNoType.
yearNoManufacture year (YYYY).
brandNoBrand.
motorNoElectric motor model (icontains).
engineNoICE engine model (icontains).
issuerNoTesting lab name — auto-resolved to id (or pass numeric id). See list_test_labs.
numberNoСБКТС number.
date_toNoIssue date to (YYYY-MM-DD).
categoryNoVehicle category.
comm_nameNoCommercial name.
date_fromNoIssue date from (YYYY-MM-DD).
eco_classNoEcological class — '5' or name; auto-resolved to reference id.
page_sizeNoRows per page (max 50).
axis_countNoAxle 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_powerNoMotor power (kW).
wheel_formulaNoWheel formula (e.g. '4x2'); auto-resolved to reference id.

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.1/5.0
Behavior1/5

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.

Conciseness2/5

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.

Completeness1/5

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.

Parameters3/5

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.

Purpose3/5

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.

Usage Guidelines2/5

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).

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNo1-based page index.
typeNoType.
brandNoBrand.
numberNoСУТ number.
page_sizeNoRows per page (max 50).

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.3/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness3/5

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.

Parameters3/5

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.

Purpose5/5

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.

Usage Guidelines2/5

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).

ParametersJSON Schema
NameRequiredDescriptionDefault
vinNoVIN (10-17 chars).
pageNo1-based page index.
typeNoType.
yearNoManufacture year.
brandNoBrand.
motorNoElectric motor model.
engineNoICE engine model.
issuerNoTesting lab name — auto-resolved to id (or pass numeric id).
numberNoЗОЕТС number.
date_toNoIssue date to (YYYY-MM-DD).
categoryNoVehicle category.
comm_nameNoCommercial name.
date_fromNoIssue date from (YYYY-MM-DD).
eco_classNoEcological class — '5' or name; auto-resolved to reference id.
page_sizeNoRows per page (max 50).
axis_countNoAxle 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_powerNoMotor power (kW).
wheel_formulaNoWheel formula (e.g. '4x2'); auto-resolved to reference id.

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.8/5.0
Behavior2/5

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.

Conciseness3/5

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.

Completeness2/5

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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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).

ParametersJSON Schema
NameRequiredDescriptionDefault
vinNoVIN substring.
pageNo1-based page index.
typeNoType.
brandNoBrand.
issuerNoCertification body name — auto-resolved to id (or pass numeric id).
numberNoЗОТШ number.
categoryNoVehicle category.
eco_classNoEcological class — '5' or name; auto-resolved to reference id.
page_sizeNoRows per page (max 50).
axis_countNoAxle 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_formulaNoWheel formula (e.g. '4x2'); auto-resolved to reference id.

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.2/5.0
Behavior1/5

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.

Conciseness3/5

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.

Completeness1/5

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.

Parameters3/5

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.

Purpose3/5

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.

Usage Guidelines2/5

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).

ParametersJSON Schema
NameRequiredDescriptionDefault
vinNoVIN substring.
pageNo1-based page index.
typeNoType.
brandNoBrand.
issuerNoCertification body name — auto-resolved to id (or pass numeric id).
numberNoЗОТТС number.
categoryNoVehicle category.
eco_classNoEcological class — '5' or name; auto-resolved to reference id.
page_sizeNoRows per page (max 50).
axis_countNoAxle 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_formulaNoWheel formula (e.g. '4x2'); auto-resolved to reference id.

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.7/5.0
Behavior1/5

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.

Conciseness4/5

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.

Completeness2/5

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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

  1. 21 tool updatesv0.3.1
    • First observeddownload_document_file
    • First observedfulltext_search
    • First observedget_document
    • First observedlist_brands
    • First observedlist_certification_bodies
    • First observedlist_document_files
    • First observedlist_registry_kinds
    • First observedlist_test_labs
    • First observedlist_tnved_codes
    • First observedlist_vehicle_models
    • First observedsearch_by_vin
    • First observedsearch_certificates
    • First observedsearch_declarations
    • First observedsearch_documents
    • First observedsearch_otch
    • First observedsearch_otts
    • First observedsearch_sbkts
    • First observedsearch_sout
    • First observedsearch_zoets
    • First observedsearch_zotch
    • First observedsearch_zotts

TDQS

A3.5/5.0

Scored across 21 tools

Disambiguation5/5

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.

Naming Consistency5/5

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.

Tool Count4/5

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.

Completeness5/5

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

ActivityMaintained
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    F
    maintenance
    MCP 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.
    3
    7
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    MCP 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).
    8
    102 PyPI
    15
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    MCP 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.
    8
    2
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    Provides 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.
    32
    37 npm
    MIT