Skip to main content
Glama
1c-odata-mcp

1c-odata-mcp

by foxnaim

Поиск контрагента

read.counterparty.find_counterparty
Read-only

Search 1C counterparties by partial name or INN, returning refs, full names, roles, and contract counts to identify matches; optionally include groups.

Instructions

Ищет контрагентов по части названия или по ИНН; subjectKind=group ищет группы в том же справочнике, all — оба вида. По умолчанию только контрагенты. Возвращает Parent_Key как parentRef и DataVersion как dataVersion для безопасного изменения группы. Возвращает список совпадений с Ref_Key (используйте его в get_counterparty и истории взаиморасчётов), полным наименованием и ролями по видам договоров (roles: покупатель, поставщик, комитент…; contracts — число договоров) — помогает выбрать из однофамильцев. Пример: «найди контрагента Ромашка» или «контрагент с ИНН 7701234567».

Input Schema

NameRequiredDescriptionDefault
limitNoСколько вернуть
queryYesЧасть названия или ИНН контрагента
databaseNoИмя базы 1С из list_databases. Без указания — база по умолчанию.
subjectKindNocounterparty

Output Schema

NameRequiredDescriptionDefault
noteNo
rowsYes
countYes
truncatedYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.12.0

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=true; the description adds real behavior on top: the default is counterparties only, validity of Parent_Key/DataVersion for safe group modification, and the roles/contracts fields that disambiguate namesakes. It does not mention result limits or pagination behavior, which are relevant 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded paragraph that leads with what is searched, then narrows to defaults, return fields, and examples. Every sentence carries actionable information, including the example queries that pin down the expected phrasing.

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 4-parameter read search with an output schema and safety annotations, this covers the searchable fields, defaults, and downstream chaining well. The gaps are minor: no guidance on behavior with zero matches or how limit interacts with result ordering.

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?

Schema coverage is 75% and the description explicitly supplies the meaning of subjectKind values (group = groups in the same catalog, all = both kinds, default = counterparties only), which is meaning beyond the bare enum. query is restated (partial name or INN) without adding syntax detail, and limit/database are left entirely to 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?

States a specific verb (searches), resource (counterparties), and matching modes (partial name or INN), and immediately explains what subjectKind=group/all do. An agent can distinguish it from read.counterparty.get_counterparty and from write.counterparty.* siblings without any further context.

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?

Gives concrete usage context — Ref_Key returned here is meant to be fed into get_counterparty and settlement-history tools, plus two worked example queries. It stops short of an explicit exclusion rule (e.g. "if you already have a Ref_Key, use get_counterparty directly"), so it is clear but not fully routing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Deploy Server

Other Tools