Skip to main content
Glama
Rezlazy

yandex-metrika-mcp

by Rezlazy

@rezlazy/yandex-metrika-mcp

MCP server for Yandex Metrika Reports API (/stat/v1/*) and Management API (/management/v1/*).

Exposes 68 tools: 6 report tools and 62 management tools (counters, goals, filters, grants, segments, labels, and more).

Requirements

  • Node.js 20+

  • OAuth token with metrika:read (reports) and/or metrika:write (create/update/delete)

Related MCP server: Yandex Direct MCP

Getting an OAuth token

  1. Create a Yandex OAuth app — choose For API access or debugging.

  2. Add permissions metrika:read (reports) and metrika:write (management changes).

  3. Copy the app Client ID.

  4. Open in browser:

    https://oauth.yandex.ru/authorize?response_type=token&client_id=<CLIENT_ID>
  5. Copy the token from the redirect URL (access_token=...).

See Yandex Metrika authorization docs.

Cursor configuration

Add to .cursor/mcp.json or Cursor MCP settings:

From GitHub (builds dist via prepare on install):

{
  "mcpServers": {
    "yandex-metrika": {
      "command": "npx",
      "args": ["-y", "github:Rezlazy/yandex-metrika-mcp"],
      "env": {
        "METRIKA_TOKEN": "<your-oauth-token>"
      }
    }
  }
}

The default branch includes prepare. Pin a release with github:Rezlazy/yandex-metrika-mcp#v0.2.2 (v0.2.0 does not build from git).

For local development (.cursor/mcp.json in this repo):

{
  "mcpServers": {
    "yandex-metrika": {
      "type": "stdio",
      "command": "node",
      "args": ["${workspaceFolder}/dist/index.js"],
      "envFile": "${workspaceFolder}/.env"
    }
  }
}

Create .env in the project root:

METRIKA_TOKEN=your_oauth_token

Environment variables

Variable

Required

Description

METRIKA_TOKEN

yes

OAuth token (metrika:read / metrika:write)

METRIKA_API_URL

no

API base URL (default: https://api-metrika.yandex.net)

Multi-root workspace (*.code-workspace)

If you open mcp.code-workspace (several folders in one window), Cursor may not show project MCP servers from .cursor/mcp.json in Settings → MCP. This is a known Cursor limitation.

Workarounds:

  1. Open this repo directly: File → Open Folder → yandex-metrika-mcp (not the .code-workspace file).

  2. Or add to global config ~/.cursor/mcp.json (works in multi-root):

"yandex-metrika": {
  "type": "stdio",
  "command": "node",
  "args": ["/absolute/path/to/yandex-metrika-mcp/dist/index.js"],
  "envFile": "/absolute/path/to/yandex-metrika-mcp/.env"
}

After config changes: Refresh MCP in settings or restart Cursor. Check logs: Output panel → MCP Logs.

Tools

Reports (stat_*) — 6 tools

Tool

Description

stat_data

Table report

stat_bytime

Time series (charts, trends)

stat_drilldown

Tree / drill-down report

stat_comparison

Compare two segments (A vs B)

stat_comparison_drilldown

Segment comparison with drill-down

stat_pivot

Pivot table

Management (mgmt_*) — 62 tools

Covers Management API: counters, goals, filters, operations, grants, access filters, segments, chart annotations, labels, accounts, delegates, clients, cloud exports.

Common management tools:

Tool

Description

mgmt_counters_list

List available counters

mgmt_counter_get

Get counter details

mgmt_counter_create

Create counter

mgmt_goals_list

List counter goals

mgmt_goal_create

Create goal

mgmt_grants_list

List access grants

mgmt_segments_list

List saved segments

For POST/PUT methods pass JSON in the body parameter (see API formats). Example for creating a counter:

{
  "body": {
    "counter": {
      "name": "My site",
      "site": "example.com"
    }
  }
}

Report parameters

  • ids — counter ID(s), comma-separated

  • metrics — e.g. ym:s:visits, ym:s:users, ym:s:pageviews

  • dimensions — e.g. ym:s:trafficSource, ym:s:operatingSystem

  • date1 / date2 — period (7daysAgo, today, or YYYY-MM-DD)

  • filterssegmentation expression

  • presetreport preset

  • formatjson (default) or csv

Full list of metrics and dimensions: attrandmetr.

Example: visits by traffic source

Tool: stat_data

{
  "ids": "44147844",
  "metrics": "ym:s:visits,ym:s:users",
  "dimensions": "ym:s:trafficSource",
  "date1": "30daysAgo",
  "date2": "today",
  "sort": "-ym:s:visits",
  "limit": "10"
}

Example: daily visits trend

Tool: stat_bytime

{
  "ids": "44147844",
  "metrics": "ym:s:visits",
  "date1": "30daysAgo",
  "date2": "today",
  "group": "day"
}

Development

npm install
npm run typecheck
npm test
npm run build

Changelog

See CHANGELOG.md.

License

MIT

Available Tools

68 tools
mgmt_access_filter_createC

https://yandex.ru/dev/metrika/ru/management/ Create access filter. Body: {"access_filter": {...}}

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyYesJSON request body. For POST/PUT use the structure from API docs (e.g. {"counter": {...}}).
prettyNoPretty-print response (1)
counterIdYesCounter ID

TDQS

C2.8/5.0
Behavior2/5

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

There are no annotations, so the description carries the full burden. It only states that the tool creates an access filter and shows a body snippet. It does not mention permissions, error behavior, uniqueness constraints, idempotency, or what the response looks like.

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 brief and contains a body structure hint, but it starts with a generic API docs URL that does not point to this endpooint specifically. It is concise but under-specified rather than carefully front-loaded.

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?

This is a write operation with two required parameters, a nested body, and no output schema. The description offers only `{"access_filter": {...}}`, without the inner schema, required permissions, or expected outcome, so an agent cannot reliably construct a valid request.

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 one useful detail: the `body` should be wrapped in an `{"access_filter": {...}}` object. However, it does not document the fields inside that object, and `counterId` and `pretty` remain as generic schema descriptions.

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 and resource: 'Create access filter.' It also hints at the required body structure with the key `access_filter`. It does not explicitly differentiate from siblings like `mgmt_filter_create` or `mgmt_access_filter_update`, but the resource name is specific enough that an agent can generally identify the intended target.

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 given about when to use this tool instead of `mgmt_access_filter_update`, `mgmt_access_filter_get`, or `mgmt_filter_create`. The word 'Create' is implicit, but no context, prerequisites, or exclusions are provided.

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

mgmt_access_filter_deleteC
ParametersJSON Schema
NameRequiredDescriptionDefault
prettyNoPretty-print response (1)
counterIdYesCounter ID
delete_grantsNoDelete related grants (true/false)
accessFilterIdYesAccess filter ID

TDQS

C2.7/5.0
Behavior2/5

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

With no annotations, the description carries the full burden of behavioral disclosure. It only states that it deletes an access filter, but omits critical details: whether the deletion is irreversible, if it cascades to related grants (despite a delete_grants parameter), permission requirements, or response format. This is minimal disclosure for a destructive operation.

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, but this is under-specification rather than conciseness. It consists of a URL (which is not useful in this context) and a four-word phrase. No effort is made to front-load key information; the limited content provides minimal value.

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 this is a destructive operation with no output schema and no annotations, the description is inadequate. It does not mention what happens after deletion, whether the operation is idempotent, what the response will be, or any side effects. An agent would lack essential context to safely invoke the tool.

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 adds no information about parameters beyond what the schema already provides, and does not explain the role of delete_grants or any parameter semantics. It meets the baseline but does not enhance 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 states a specific verb ('Delete') and resource ('access filter'), which clearly indicates the operation. It distinguishes from sibling tools like mgmt_filter_delete by explicitly naming 'access filter', though this is essentially identical to the tool name itself, adding little beyond what the name already conveys.

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. There are many delete tools among siblings (e.g., mgmt_filter_delete, mgmt_goal_delete), and the description offers no context for when this specific access-filter deletion is appropriate, nor any prerequisites or conditions.

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

mgmt_access_filter_getC
ParametersJSON Schema
NameRequiredDescriptionDefault
prettyNoPretty-print response (1)
counterIdYesCounter ID
accessFilterIdYesAccess filter ID

TDQS

C2.6/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 behavior. It only says 'Get', which implies a read operation, but it does not describe the response format, error conditions, authentication requirements, or any side effects. This is a significant gap for a tool with no annotation coverage.

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 very short (one sentence plus a URL), which is concise but lacks structure. The URL is likely unnecessary in the description field and adds noise. The core instruction is clear but the presentation is minimal and not front-loaded with the most useful info.

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 that there is no output schema, the description should at least hint at the return value (e.g., 'returns the access filter object') or any caveats. It does neither. The required parameters are documented in the schema, but the description does not explain what an access filter is or how the response relates to the request, leaving the agent under-informed.

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 adds no parameter-level detail beyond what the schema already provides; it merely restates the action. No additional meaning is contributed.

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 action ('Get') and the resource ('access filter') with a scope ('by ID'). This distinguishes it from list tools like mgmt_access_filters_list, but it does not explicitly name the sibling, so it is clear but not maximally differentiated.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/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. There is no mention of 'use this to retrieve a single filter, use list to get all' or any other selection criteria. The agent is left to infer usage from the name alone.

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

mgmt_access_filters_listC

https://yandex.ru/dev/metrika/ru/management/ List access filters for counter

ParametersJSON Schema
NameRequiredDescriptionDefault
prettyNoPretty-print response (1)
counterIdYesCounter ID

TDQS

C2.9/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 only says 'List access filters', implying a read operation, but provides no details about response format, pagination, or authentication requirements. This is insufficient for a tool with zero annotation coverage.

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 clearly states the tool's action, and the included URL provides a reference to official documentation. No unnecessary words are present.

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?

For a simple list tool with two parameters and no output schema, the description should at least mention the return type or any constraints, and should differentiate from similar siblings like mgmt_filters_list. It does neither, leaving the agent without essential 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 description coverage is 100%, so both parameters (counterId and pretty) are already documented. The description adds no additional meaning or context beyond what the schema provides, so the baseline score of 3 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 states a specific verb ('List'), resource ('access filters'), and scope ('for counter'), making the primary purpose clear. However, it does not distinguish this tool from the sibling mgmt_filters_list, which could cause confusion for an agent deciding between them.

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 like mgmt_filters_list or mgmt_access_filter_get. The description only states what it does, not the conditions under which it should be selected.

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

mgmt_access_filter_updateC

https://yandex.ru/dev/metrika/ru/management/ Update access filter. Body: {"access_filter": {...}}

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyYesJSON request body. For POST/PUT use the structure from API docs (e.g. {"counter": {...}}).
prettyNoPretty-print response (1)
counterIdYesCounter ID
accessFilterIdYesAccess filter ID

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations, the description carries the full behavioral burden, but it only states the mutating action and the body placeholder. It does not disclose whether this is a partial or full replacement, what happens to existing fields, permission requirements, or response behavior. For a mutation tool this is a significant gap.

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 short and mostly front-loaded with the action and body hint. The API URL at the beginning is somewhat tangential but does not waste many words. It is concise, though slightly disjointed by the generic link.

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?

For a 4-parameter tool with nested body content, no annotations, and no output schema, one sentence is not sufficient. An agent cannot determine the required structure of 'access_filter', whether the update is deterministic, or what side effects the operation may have. The description is too thin for reliable correct invocation.

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 parameters already have baseline meaning. The description adds a useful top-level body key ('access_filter') that is not present in the schema's generic POST/PUT body description, but it does not detail the nested fields or clarify the expected shape beyond the example.

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?

Clear verb and resource: it states 'Update access filter' and provides a top-level body shape. It matches the name and the access_filter CRUD family, but does not explicitly contrast with the sibling create/delete/get tools within the group, so it misses full differentiation.

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 when-to-use guidance is provided. It never says when to use this instead of mgmt_access_filter_create or mgmt_access_filter_delete, and there are no prerequisites or exclusions. The only usage signal comes from the verb 'Update' in the name and body, which is not enough for strong guidance.

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

mgmt_account_deleteD
ParametersJSON Schema
NameRequiredDescriptionDefault
prettyNoPretty-print response (1)
user_loginYesAccount login

TDQS

D1.7/5.0
Behavior1/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 merely says 'Delete', without indicating whether the action is reversible, what happens to associated data (e.g., counters, delegates), permission requirements, or side effects. This is a significant gap for a destructive operation.

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 but not effectively concise – it under-specifies the tool. The URL takes up space but does not convey operational information. A well-crafted description would use that space to explain behavior and usage, making this an example of under-specification rather than good conciseness.

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?

For a deletion tool with no annotations, no output schema, and only two parameters, the description is far from complete. It omits critical details such as the response format, error cases, prerequisites (e.g., authentication), and the scope of deletion. An agent would have to guess at the tool's behavior and consequences.

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?

The input schema describes both parameters (pretty and user_login) with full coverage, so the baseline is 3. The description adds no additional meaning beyond the schema, such as clarifying what 'pretty' expects or how user_login is used, but the schema already provides adequate information.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states 'Delete linked account', which conveys a verb and a resource but is essentially a restatement of the tool name. It does not clarify what a 'linked account' is or how this tool differs from related siblings like mgmt_accounts_update or other delete operations. The embedded URL is a documentation link, not a purpose explanation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/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, no mention of alternatives, and no exclusions. The description provides no context for an agent to decide between this and other account management or delete tools.

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

mgmt_accounts_listC
ParametersJSON Schema
NameRequiredDescriptionDefault
prettyNoPretty-print response (1)
callbackNoJSONP callback function name

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. It only says 'List linked Yandex accounts' and gives no information about authentication requirements, pagination, response shape, or side effects. For a read-only listing tool this is a moderate gap; the description adds no behavioral context 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.

Conciseness3/5

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

The description is very short, but it includes a raw URL prefix that is not useful for an agent selecting the tool. The core sentence 'List linked Yandex accounts' is concise and front-loaded, but the URL wastes space and could be removed. It is not egregiously verbose, but it is not a model of efficiency.

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?

For a simple list tool with no required parameters and no output schema, the description is minimally adequate, but it lacks any context about what 'linked Yandex accounts' means, how the response is structured, or whether authentication is required. Given the tool's simplicity, a slightly richer description (e.g., 'Returns a list of Yandex accounts linked to the current user') would make it 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%, so the schema already documents both parameters (pretty and callback). The description adds no parameter-level detail, but the baseline of 3 applies because the schema fully covers the parameters. The description does not need to repeat what the schema already states.

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 states a clear verb and resource: 'List linked Yandex accounts'. It is specific enough to distinguish from siblings like mgmt_counters_list or mgmt_delegates_list, though it does not explicitly name a sibling alternative. The leading URL is noise but does not obscure the purpose.

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 given on when to use this tool versus alternatives. The description does not mention that this is a management-level listing operation, nor does it contrast with related list tools such as mgmt_counters_list or mgmt_delegates_list. The only context is the resource name itself, which implies usage but does not state it.

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

mgmt_accounts_updateB

https://yandex.ru/dev/metrika/ru/management/ Update accounts list. Body: {"accounts": [{"user_login": "..."}]}

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyYesJSON request body. For POST/PUT use the structure from API docs (e.g. {"counter": {...}}).
prettyNoPretty-print response (1)

TDQS

B3/5.0
Behavior2/5

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

No annotations are present, so the description carries the full burden. It only says 'Update accounts list' and gives a body example, without describing whether the operation replaces the entire list, requires specific permissions, or has irreversible effects. No mention of error handling 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.

Conciseness4/5

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

The description is short and front-loaded with the action. It includes a URL to API docs, which is useful but not strictly necessary. The body example is concise and adds value without unnecessary verbosity.

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 two parameters with a nested body object, but the description only provides an example without explaining the semantics of the update operation. It doesn't clarify whether the provided list replaces the existing accounts or merges with them, nor does it describe return values or side effects. For a mutation tool, this is incomplete.

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's body parameter has a generic description, but the tool description provides a concrete example: Body: {"accounts": [{"user_login": "..."}]}. This clarifies the required structure for the body, adding significant meaning beyond the schema. The pretty parameter is already described in the schema.

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 states 'Update accounts list' with a clear verb and resource, distinguishing it from sibling tools like mgmt_accounts_list or mgmt_account_delete by the verb 'update' and resource 'accounts'. However, it doesn't clarify whether 'update' means replacing the entire list or modifying specific entries, leaving some ambiguity.

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. It doesn't mention prerequisites, exclusions, or when to prefer listing/deleting over updating. The agent must infer usage from the tool name alone.

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

mgmt_chart_annotation_createC

https://yandex.ru/dev/metrika/ru/management/ Create chart annotation. Body: {"chart_annotation": {...}}

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyYesJSON request body. For POST/PUT use the structure from API docs (e.g. {"counter": {...}}).
prettyNoPretty-print response (1)
counterIdYesCounter ID

TDQS

C2.5/5.0
Behavior2/5

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

Annotations are absent, so the description carries the full burden. It discloses that this is a create (mutation) operation but provides no details on side effects, such as whether it overwrites existing annotations, what permissions are required, or what the response format is. The reference to the API docs URL is a weak substitute for explicit behavioral disclosure.

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 short and direct, but it wastes a sentence on a URL that does not provide actionable guidance. It front-loads the action but includes extraneous content. Could be more concise by focusing on the semantics of the body parameter and any unique aspects of chart annotation creation.

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?

For a create tool with no annotations and no output schema, the description should explain what a chart annotation is, what fields are expected in the body, and any constraints (e.g., required fields, validation rules). It also lacks guidance on how the response is structured. The description is incomplete for an agent to confidently call this tool without additional 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?

The schema description coverage is 100% (all parameters are described), so the baseline is 3. The description adds minimal value beyond the schema: it mentions that the body should contain a 'chart_annotation' object, which aligns with the schema but does not elaborate on the structure or required fields within that object. The 'pretty' parameter is not mentioned in the description, but the schema covers it.

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 action ('create chart annotation') and the resource ('chart_annotation'), which is clear, but it does not distinguish this tool from its sibling tools such as mgmt_chart_annotation_update or mgmt_chart_annotation_delete. It also includes a redundant URL that adds no purpose information.

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 any prerequisites, such as the need for valid counterId or authentication, nor does it explicitly state that this is for creating a new chart annotation as opposed to updating or deleting. The usage context is implied only by the verb 'create'.

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

mgmt_chart_annotation_deleteC
ParametersJSON Schema
NameRequiredDescriptionDefault
idYesChart annotation ID
prettyNoPretty-print response (1)
counterIdYesCounter ID

TDQS

C2.8/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 responsibility for behavioral disclosure. It does state the destructive nature ('Delete'), but it does not mention whether deletion is irreversible, whether management access or permissions are required, what happens if the annotation is in use, or what response to expect. For a mutation tool, this is a significant gap.

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 short and front-loads the operation, but the leading URL is a noisy, incomplete reference and the text is essentially a restatement of the tool name. It is appropriately brief for a simple action, yet it sacrifices useful 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?

The tool is simple and all parameters are documented, but there is no output schema and no annotations, and the description gives no information about response behavior, errors, authorization, or side effects. An agent may know how to invoke it from the schema but lacks sufficient context for correct and safe use.

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 all three parameters are already documented in the schema (counterId, id, pretty). The description does not add extra meaning beyond what the schema provides, so the baseline of 3 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 states a specific verb and resource: 'Delete chart annotation'. This is clear enough to distinguish the tool from sibling delete tools (e.g., mgmt_filter_delete, mgmt_goal_delete) because the target resource is explicit. However, it does not explain what a chart annotation is or add any clarification beyond the tool name.

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 about when to use this tool versus alternatives, no prerequisites, and no discussion of which ID is required or how deletion interacts with related resources. The only implicit usage signal is the verb 'Delete', which is not enough for a management operation.

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

mgmt_chart_annotation_getC
ParametersJSON Schema
NameRequiredDescriptionDefault
idYesChart annotation ID
prettyNoPretty-print response (1)
counterIdYesCounter ID

TDQS

C2.3/5.0
Behavior1/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 only says 'Get chart annotation by ID' without mentioning read-only nature, return format, side effects, or authentication requirements. This is essentially a tautology of the tool name.

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 very short but not well structured. It begins with a documentation URL that provides no immediate value and then a single phrase. The actual description could be more informative; the URL does not earn its place as a self-contained description.

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?

For a get tool, the description lacks context about the response, any error conditions, or how it differs from listing annotations. With no annotations and no output schema, the description should provide more context, but it offers only a bare statement of 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%, meaning all three parameters are documented in the schema. The description adds no extra parameter meaning, so the baseline of 3 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 states a clear verb and resource: 'Get chart annotation by ID'. This distinguishes it from sibling tools like list, create, update, and delete for chart annotations. However, it lacks any elaboration on scope or specifics that would make it a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/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. The description does not mention prerequisites, scenarios, or conditions that would select this tool over others. It only states what it does.

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

mgmt_chart_annotations_listC
ParametersJSON Schema
NameRequiredDescriptionDefault
prettyNoPretty-print response (1)
counterIdYesCounter ID

TDQS

C2.9/5.0
Behavior2/5

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

There are no annotations, so the description alone must convey behavior. It only restates the operation, offering no detail on pagination, response shape, read-only safety, authentication, or whether returned annotations are ordered or filtered.

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 very short and free of fluff, but the leading documentation URL pushes the actual description ('List chart annotations') to the second position, making the structure less front-loaded. It is acceptable for a trivial tool but not exemplary.

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 two-parameter list call with complete parameter schemas, this may be minimally usable; the agent knows the action and required counterId. However, the absence of any annotation or output schema and lack of behavioral context means an agent could still guess wrong about return format or pagination.

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?

The input schema already describes both parameters (counterId as Counter ID and pretty as Pretty-print response) with 100% coverage. The description adds no semantics beyond what the schema gives, so it earns the baseline 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?

The description clearly names the action ('List') and resource ('chart annotations'), so an agent can identify it as the batch-read counterpart to mgmt_chart_annotation_get/create/update/delete. It does not state the scope (e.g., 'for a counter'), but the singular required counterId parameter supplies that.

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 given about when to choose this tool over mgmt_chart_annotation_get or the write operations. The only signal is the verb 'list,' which implies retrieval of multiple annotations but does not explain prerequisites, use cases, or exclusions.

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

mgmt_chart_annotation_updateB

https://yandex.ru/dev/metrika/ru/management/ Update chart annotation. Body: {"chart_annotation": {...}}

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesChart annotation ID
bodyYesJSON request body. For POST/PUT use the structure from API docs (e.g. {"counter": {...}}).
prettyNoPretty-print response (1)
counterIdYesCounter ID

TDQS

B3/5.0
Behavior2/5

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

There are no annotations to indicate mutability, auth requirements, or side effects. The description only says 'Update' and gives a body shape; it does not disclose whether the update replaces the entire object, what the response looks like, or what permissions are needed. For a mutation tool this is a notable gap.

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 brief and free of filler, conveying the core action and body shape quickly. However, it opens with a bare documentation URL and then a terse body hint, making the structure slightly less organized than ideal.

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?

For a mutation tool with no annotations, no output schema, and a nested request body, the description is under-specified. It provides only the resource, a generic docs link, and a body wrapper; it lacks response expectations, permission context, and details on constructing the inner chart_annotation object, so an agent may not reliably call it 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?

All four parameters have schema descriptions (100% coverage), so the schema handles the basic semantics. The description adds useful value by specifying that the body must use the wrapper structure {'chart_annotation': {...}}, which the generic body schema does not make explicit. It still leaves inner field details undocumented.

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 states a specific verb and resource ('Update chart annotation') and adds the expected body wrapper. It clearly identifies the operation, but it does not explicitly distinguish itself from sibling chart annotation create/get/delete tools beyond relying on the word 'update'.

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 about when to use this tool versus alternatives like mgmt_chart_annotation_create, mgmt_chart_annotation_get, or mgmt_chart_annotation_delete. There are no conditions, prerequisites, or exclusions, so the agent must infer usage from the tool name alone.

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

mgmt_clients_listB

https://yandex.ru/dev/metrika/ru/management/ List available Direct clients

ParametersJSON Schema
NameRequiredDescriptionDefault
prettyNoPretty-print response (1)
countersNoCounter IDs comma-separated

TDQS

B3.2/5.0
Behavior3/5

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

With no annotations provided, the description carries the full behavioral burden. 'List' does convey read-only intent and there is no indication of destructive side effects. However, it does not disclose authentication needs, pagination behavior, or whether response data depends on any implicit user context, so the behavioral disclosure is adequate but thin.

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 natural-language description is very short and has no filler: 'List available Direct clients'. The leading documentation URL adds some noise, but overall the definition is compact and easy for an agent to scan. It would be slightly improved by removing the URL or replacing it with a more operational detail.

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 simple read-only list tool with two optional, fully documented parameters, the description is minimally viable. However, there is no output schema and no explanation of what a returned client entry looks like, how access to clients is scoped, or how this relates to sibling account/delegate tools. The definition is functional but leaves meaningful contextual 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?

The input schema already documents both parameters: 'pretty' as a pretty-print flag and 'counters' as comma-separated IDs. Since schema description coverage is 100%, the description does not need to compensate, and it does not add any parameter-level meaning. This matches the baseline of 3 for fully schema-covered parameters.

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?

States a clear verb and resource: 'List available Direct clients'. This is distinct from sibling list tools like mgmt_accounts_list, mgmt_counters_list, and mgmt_goals_list, so the agent can identify the intended resource. It loses a point because it does not clarify whose clients are listed or how 'available' is determined.

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 gives no guidance about when to use this tool versus the many other mgmt_*_list tools. There is no mention of alternatives, prerequisites, or situations where this tool should be preferred. The 'available' qualifier hints at access scope but does not provide actionable selection criteria.

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

mgmt_cloud_export_removeB

https://yandex.ru/dev/metrika/ru/management/ Disable cloud export on counter

ParametersJSON Schema
NameRequiredDescriptionDefault
ceIdYesCloud export ID
prettyNoPretty-print response (1)
counterIdYesCounter ID

TDQS

B3.4/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 the full burden. It identifies a mutating operation but does not disclose whether the action is irreversible, whether special permissions are required, or what the success/failure response looks like. The name says 'remove' while the description says 'disable', leaving ambiguity about the exact side effect.

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 short and the core action is stated directly. The prefixed documentation URL is not helpful for tool invocation but does not add meaningful verbosity.

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 simple operation with only two required parameters and full schema descriptions, this is adequately scoped for basic invocation. However, with no annotations and no output schema, a note about response format or destructive side effects would make it more 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?

The input schema already describes all three parameters with 100% coverage, so the baseline is 3. The description adds general resource context but no additional parameter-specific meaning beyond what the schema provides.

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 states a specific action, 'Disable', on a specific resource, 'cloud export on counter'. It clearly distinguishes itself from the only closely related sibling, mgmt_cloud_exports_list, which is a list operation.

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?

Usage context is implied: the agent should call this tool when it needs to disable or remove a cloud export from a counter. However, there is no explicit guidance about prerequisites, when not to use it, or alternatives.

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

mgmt_cloud_exports_listB

https://yandex.ru/dev/metrika/ru/management/ List Yandex Cloud export objects for counter

ParametersJSON Schema
NameRequiredDescriptionDefault
prettyNoPretty-print response (1)
counterIdYesCounter ID

TDQS

B3.2/5.0
Behavior2/5

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

With no annotations, the description must carry the full burden of behavioral disclosure. It only states 'List', implying a read operation, but does not explicitly confirm non-destructiveness, mention pagination, response format, or any authentication requirements. The description adds no behavioral context beyond the action itself.

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 core sentence is concise and to the point, but the leading URL is unnecessary noise that wastes the first position. Once past the URL, the description is efficient with no fluff. It is appropriately short for a simple list operation.

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?

The tool is simple (a list operation with two parameters, both documented), so a minimal description is acceptable. However, it lacks any mention of response structure, pagination, or prerequisites. Given the absence of annotations and output schema, a bit more context would improve completeness.

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's phrase 'for counter' merely reiterates the counterId parameter without adding new meaning. It provides no extra syntax or formatting details, so it meets the baseline for high schema coverage.

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 states a specific action ('List') and a clear resource ('Yandex Cloud export objects') scoped to a counter. It is unambiguous and distinct from siblings like mgmt_cloud_export_remove (which deletes) and other list tools. The leading URL is noise but does not confuse the purpose.

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 when to use it (when you need to list cloud exports for a counter), but provides no explicit guidance on when not to use it or alternatives. There are many list tools in the sibling set, and the description does not differentiate usage criteria or mention edge cases.

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

mgmt_counter_createB

https://yandex.ru/dev/metrika/ru/management/ Create counter. Body: {"counter": {"site": "example.com", "name": "..."}}

ParametersJSON Schema
NameRequiredDescriptionDefault
ytmNoYTM flag
bodyYesJSON request body. For POST/PUT use the structure from API docs (e.g. {"counter": {...}}).
fieldNoExtra fields in response
prettyNoPretty-print response (1)

TDQS

B3.2/5.0
Behavior2/5

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

There are no annotations, so the description carries the full burden of behavioral disclosure. It only says 'Create counter' and gives a body example; it does not explain what the API does on success, what happens if the counter already exists, whether authorization is required, or what response to expect.

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 short and to the point, with the action and core body example included. The leading documentation URL is somewhat boilerplate but still useful for reference and does not bloat the description.

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?

For a mutation tool with no annotations and no output schema, the description is thin. It lacks the full endpoint path, required authentication context, response behavior, and any guidance on validation or constraints, leaving the agent to rely on the external docs link.

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 100%, but the schema's body property is very generic. The description adds meaningful value by providing a concrete body example with 'site' and 'name' fields, helping the agent construct a valid request beyond what the schema describes.

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 states a clear verb and resource ('Create counter') and even shows the expected body shape. It does not explicitly distinguish itself from mgmt_counter_update or mgmt_counter_delete, but the verb and sibling naming make 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 Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied by the name and description: use when creating a counter rather than listing, updating, deleting, or undeleting one. However, there is no explicit statement of when to choose this tool over alternatives or any prerequisites needed before creation.

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

mgmt_counter_deleteC
ParametersJSON Schema
NameRequiredDescriptionDefault
prettyNoPretty-print response (1)
counterIdYesCounter ID

TDQS

C2.7/5.0
Behavior2/5

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

No annotations exist, so the description is the only behavioral disclosure; it reveals destructiveness only through the word 'Delete' and nothing about permanence, authorization, scope, or consequences. Compared with tools that describe reversibility or access requirements, this is thin.

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 text is short but under-specified; the URL consumes characters without contributing instructions, and the actual guidance is a bare verb phrase. This is under-specification rather than effective 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?

For a destructive management operation with no output schema and no annotations, the description should include the scope of deletion, reversibility (given the undelete sibling), or prerequisites. It provides none of this, leaving the agent to guess the operation's effects.

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 defines counterId ('Counter ID') and pretty ('Pretty-print response'), so the description need not restate them. However, it adds no mapping between the delete action and the meaning or effect of counterId beyond the schema.

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?

States a specific verb and resource ('Delete counter'), so the intended action is clear. It does not explicitly distinguish this delete operation from related siblings like mgmt_counter_update or mgmt_counter_undelete, so it misses the top score.

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 usage context or alternative-selection guidance is provided. The description is just a verb phrase plus a documentation URL, so the agent must infer when this tool is appropriate relative to the many sibling management tools.

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

mgmt_counter_getB
ParametersJSON Schema
NameRequiredDescriptionDefault
fieldNoExtra fields comma-separated: goals,mirrors,grants,filters,operations,counter_flags,measurement_tokens
prettyNoPretty-print response (1)
callbackNoJSONP callback function name
counterIdYesCounter ID

TDQS

B3.1/5.0
Behavior3/5

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

With no annotations, the description carries the full behavioral burden. "Get" strongly implies a read-only single-counter retrieval, which is useful, but the description does not address authentication needs, error handling, missing counters, or response contents.

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 core phrase is short and readable, and the description does not run on. However, the dangling documentation URL in the description does not earn its place in a front-loaded tool description, and the tool mostly needs one clear sentence.

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 simple single-counter fetch, the description plus fully documented parameters is barely viable, but it still lacks contextual details about authentication, return format, and when selecting this tool is appropriate.

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?

Input schema description coverage is 100%, so baseline parameter comprehension is good. The description's "by ID" only reinforces counterId and does not add semantic value for the other parameters such as field, pretty, or callback.

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?

"Get counter by ID" names a specific retrieve action and resource, and the singular "by ID" makes it clearly distinct from mgmt_counters_list. It does not explicitly mention sibling alternatives, but the core purpose is 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?

There is no guidance on when to use this tool versus mgmt_counters_list, mgmt_counter_update, or other legacy tools. The phrase "by ID" only implies the tool is for single-counter lookup, but no when-to-use or alternative routing is given.

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

mgmt_counter_label_setC
ParametersJSON Schema
NameRequiredDescriptionDefault
prettyNoPretty-print response (1)
labelIdYesLabel ID
counterIdYesCounter ID

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. It only states the action without mentioning side effects, permissions, reversibility, or what happens after attaching. This is a significant gap for a mutation operation.

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 extremely short and to the point, but it includes a URL prefix that is not functional for an agent. The structure is not ideal because the URL adds noise without contributing to the tool's understanding.

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?

For a simple attach operation, the description is minimal but lacks essential context such as what a label is, how it relates to counters, and any prerequisites. It also doesn't clarify how it differs from the unset counterpart, leaving the agent to infer relationships.

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?

The input schema covers 100% of parameters with descriptions (pretty, labelId, counterId), so the baseline is 3. The description adds no additional meaning beyond the schema, but it doesn't need to compensate for any gaps.

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 states a specific action, 'Attach counter to label', which clearly identifies the operation. However, it does not differentiate from the sibling tool mgmt_counter_label_unset, which is the inverse operation, so it lacks sibling distinction.

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 like mgmt_counter_label_unset. The description gives no context about appropriate usage scenarios or exclusions.

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

mgmt_counter_label_unsetC
ParametersJSON Schema
NameRequiredDescriptionDefault
prettyNoPretty-print response (1)
labelIdYesLabel ID
counterIdYesCounter ID

TDQS

C2.9/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 disclosing behavior. It only states the action without addressing side effects (e.g., whether the counter loses label association permanently), permission requirements, reversibility, or response format. For a mutation tool, this is a significant gap.

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 extremely concise, consisting of a single phrase and a documentation URL. It is front-loaded with the core purpose. However, the URL is arguably redundant and not integrated into the text, slightly reducing structural clarity, though it does not bloat the description.

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?

For a simple detach operation with two required parameters, the description is still incomplete. It lacks information about the operation's effects (e.g., does it fail if the label is not attached?), any dependencies, or what the response contains. Since there is no output schema and no annotations, the description should provide more context to enable correct invocation.

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%, meaning all three parameters (counterId, labelId, pretty) already have descriptions. The tool description adds no extra parameter semantics, so it does not exceed the baseline of 3 that is appropriate when the schema fully documents parameters.

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 states 'Detach counter from label', which clearly identifies the action and resource, and implicitly distinguishes it from the sibling mgmt_counter_label_set (attach). It is specific and unambiguous, though the inclusion of a documentation URL adds no semantic value to the purpose itself.

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 mgmt_counter_label_set or other management operations. The description does not mention any prerequisites, scenarios, or exclusions, leaving the agent to infer usage context from the sibling names alone.

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

mgmt_counters_listB
ParametersJSON Schema
NameRequiredDescriptionDefault
sortNoSort field
typeNoFilter by counter type
fieldNoExtra fields comma-separated: goals,mirrors,grants,filters,operations,counter_flags,measurement_tokens
offsetNoStart offset (default 1)
prettyNoPretty-print response (1)
robotsNoFilter by robots
statusNoFilter by status
reverseNoReverse sort order
callbackNoJSONP callback function name
favoriteNoFilter favorite counters only
label_idNoFilter by label ID
per_pageNoPage size, max 10000 (default 100)
permissionNoFilter by permission
counter_idsNoFilter by counter IDs comma-separated
search_stringNoSearch in counter name or site

TDQS

B3.1/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, but it only says 'List available counters.' It does not mention read-only semantics, authentication requirements, pagination behavior, or default sorting/offset behavior.

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 extremely short and front-loaded with the core action. The documentation URL is ancillary but not distracting; the text avoids tautology and redundant restatement of the tool name.

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?

There is no output schema and no annotations, so the description should provide more context about return shape, pagination, and authentication. It omits details that matter for a list endpoint, such as how results are ordered, paged, or scoped to the user.

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?

The input schema has 100% coverage, documenting all 15 parameters with descriptions, so the description need not repeat parameter details. However, it adds no extra meaning about how parameters interact, such as pagination defaults or filter composition.

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 phrase 'List available counters' uses a specific verb and resource and clearly communicates that this is a collection operation. It is readily distinguishable from siblings like mgmt_counter_get, mgmt_counter_create, and other mgmt_*_list tools.

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 gives no guidance about when to use this tool versus alternatives such as mgmt_counter_get or other list tools. There are no exclusions, conditions, or context signals to help an agent decide between this and similar management endpoints.

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

mgmt_counter_undeleteB
ParametersJSON Schema
NameRequiredDescriptionDefault
prettyNoPretty-print response (1)
counterIdYesCounter ID

TDQS

B3.1/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 the full behavioral burden. It implies a mutating restore operation but says nothing about required permissions, ownership constraints, whether restoring is reversible, or what response the caller should expect.

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 core phrase is appropriately short and front-loaded, but the generic Yandex management documentation URL adds little value because it points to a broad documentation area rather than to counter restore documentation specifically. The description is concise but not fully information-dense.

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?

This is a simple two-parameter operation, and the schema documents those parameters completely. However, with no annotations, no output schema, and no mention of authentication or side effects, the description is only minimally complete for a management operation.

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 counterId and pretty are already documented in the schema. The description adds no parameter-specific meaning beyond implying that a counterId identifies the counter to restore, so the baseline 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 phrase 'Restore deleted counter' uses a specific verb and resource, clearly distinguishing this from sibling tools like mgmt_counter_delete, mgmt_counter_create, and mgmt_counter_update. The intent is unambiguous even though the description is minimal.

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 about when to use this tool versus alternatives, prerequisites, or conditions such as whether the counter must be in a deleted state. The sibling list shows many related counter tools, but the description does not help an agent choose between them beyond the obvious meaning of undelete.

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

mgmt_counter_updateC

https://yandex.ru/dev/metrika/ru/management/ Update counter. Body: {"counter": {...}}

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyYesJSON request body. For POST/PUT use the structure from API docs (e.g. {"counter": {...}}).
fieldNoExtra fields comma-separated: goals,mirrors,grants,filters,operations,counter_flags,measurement_tokens
prettyNoPretty-print response (1)
counterIdYesCounter ID

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. It only states 'Update counter' and references the request body, but does not mention side effects, permissions required, reversibility, idempotency, or what the response contains. This is insufficient for a mutating operation with zero annotation context.

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 extremely short ('Update counter. Body: {"counter": {...}}') but includes an irrelevant documentation URL that distracts from the functional text. The key information is front-loaded, but the URL is unnecessary noise, reducing structural efficiency.

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?

For a mutation tool with four parameters (including a nested object), no annotations, and no output schema, the description is inadequate. It does not specify required permissions (e.g., owner or admin), the possible response format, error conditions, or the scope of updatable fields. An agent cannot fully anticipate the tool's behavior from this description.

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%, and the schema already describes all parameters, including the expected body structure. The description adds a redundant example 'Body: {"counter": {...}}' which mirrors the schema, so it provides no additional semantic value beyond the baseline for full coverage.

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 states 'Update counter' which is a specific verb and resource, clearly distinguishing it from sibling tools like counter_create and counter_delete. It is concise and immediately understandable, though it doesn't elaborate on what aspects of the counter can be updated, which is a minor gap.

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 (e.g., counter_create for new counters, counter_get for viewing). The name implies updating an existing counter, but there is no explicit 'use this when...' or exclusion of other tools, leaving the agent to infer from the naming convention.

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

mgmt_delegate_createB

https://yandex.ru/dev/metrika/ru/management/ Add delegate. Body: {"delegate": {"user_login": "..."}}

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyYesJSON request body. For POST/PUT use the structure from API docs (e.g. {"counter": {...}}).
prettyNoPretty-print response (1)

TDQS

B3.2/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 confirms that a delegate is created and gives the body shape, but it does not mention side effects, required permissions, idempotency, expected response, or error behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

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

The description is compact and front-loaded with the action and API docs link, followed immediately by the essential body structure. There is no filler or redundant restating of the tool name.

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 simple create operation, the exact payload and docs URL give an agent enough to construct a basic request. However, with no annotations and no output schema, the description lacks guidance on authorization, return values, and failure modes, making it adequate but not fully complete.

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's `body` description is a generic JSON placeholder, so the description's exact body example `{"delegate": {"user_login": "..."}}` adds the real semantic meaning. The `pretty` parameter is already sufficiently described in the schema.

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 states a clear action ('Add delegate') on a specific resource, and the API docs URL adds useful context. It is distinguishable from sibling tools like mgmt_delegates_list and mgmt_delegate_delete by the verb, but it does not explicitly contrast itself with them.

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 about when to use this tool versus alternatives such as mgmt_delegates_list or mgmt_delegate_delete. The verb 'Add' implies creation, but prerequisites, authorization context, and conditions are not stated.

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

mgmt_delegate_deleteC
ParametersJSON Schema
NameRequiredDescriptionDefault
prettyNoPretty-print response (1)
user_loginYesDelegate login

TDQS

C2.8/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 the full burden. It only says 'Remove delegate' without disclosing effects, reversibility, required permissions, or any consequences of the operation.

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 very concise, but it is essentially a URL and a short phrase. It lacks structure or front-loading of useful information. While it is not verbose, it is under-specified and does not provide a meaningful sentence.

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?

For a deletion tool, the description fails to explain the operational context—such as what happens when a delegate is removed, whether it is reversible, or any prerequisites. With no output schema and no annotations, the description should have been more 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?

The schema provides descriptions for both parameters (user_login and pretty), achieving 100% coverage. The description adds no parameter-specific information, but the schema already covers this, so a 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?

The description states 'Remove delegate' which clearly identifies the action (remove) and resource (delegate). It differentiates from siblings like mgmt_delegate_create and mgmt_delegates_list. However, it is extremely terse and lacks any additional context.

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. It does not mention any prerequisites, conditions, or scenarios where removing a delegate is appropriate.

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

mgmt_delegates_listB
ParametersJSON Schema
NameRequiredDescriptionDefault
prettyNoPretty-print response (1)
callbackNoJSONP callback function name

TDQS

B3.1/5.0
Behavior2/5

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

With no annotations, the description carries the full behavioral disclosure burden, but it only says 'List delegates.' It does not mention side effects, response shape, pagination, or authorization 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 short and front-loads the purpose before a documentation URL. It avoids filler, though the URL is generic and contributes little to agent decision-making.

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?

There is no output schema and no annotations, and the description does not describe what the response contains, any defaults, or usage caveats. An agent can infer the basic action but cannot fully anticipate the call's result.

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 two parameters (pretty and callback) are already documented. The description adds no additional semantic detail beyond the schema, so the baseline 3 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 states a specific verb and resource ('List delegates' ), so the operation is clear. The sibling tools are mgmt_delegate_create and mgmt_delegate_delete, so the list operation is immediately distinguishable as the read/list operation.

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 gives no when-to-use guidance, exclusions, or alternatives. It does not explicitly say that this is the retrieval counterpart to mgmt_delegate_create/delete, leaving the selection logic to be inferred from the tool name.

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

mgmt_filter_createC

https://yandex.ru/dev/metrika/ru/management/ Create filter. Body: {"filter": {...}}

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyYesJSON request body. For POST/PUT use the structure from API docs (e.g. {"counter": {...}}).
prettyNoPretty-print response (1)
counterIdYesCounter ID

TDQS

C2.3/5.0
Behavior1/5

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

With no annotations, the description must disclose behavior, but it only says 'Create filter.' It doesn't mention side effects, required permissions, idempotency, or response behavior. Mutation is implied but not stated explicitly.

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, but that's under-specification, not conciseness. It lacks structure and front-loads nothing beyond a URL and a bare phrase. Every word is minimal but not earned value.

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?

For a creation tool with nested objects, no output schema, and no annotations, this description is grossly incomplete. It omits prerequisites, expected response, and behavior on errors. An agent cannot confidently invoke this 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?

Schema coverage is 100% (all params have descriptions), so baseline is 3. The description adds a concrete body template ({"filter": {...}}) that the generic schema description lacks, providing a useful structural hint for the nested body object.

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?

States a clear verb-resource pair: 'Create filter.' This distinguishes it from the many sibling filter tools (list, get, update, delete) by indicating creation. However, it gives no detail on what a filter is or what it does, so it's not fully self-contained.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/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. It doesn't mention prerequisites, when filters are needed, or compare to similar management tools. An agent gets no context for selection.

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

mgmt_filter_deleteC
ParametersJSON Schema
NameRequiredDescriptionDefault
prettyNoPretty-print response (1)
filterIdYesFilter ID
counterIdYesCounter ID

TDQS

C2.2/5.0
Behavior2/5

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

With no annotations provided, the description must fully communicate behavioral impact. It only says 'Delete filter' – no warning of permanence, authorization requirements, or effects on related resources. The irreversible, destructive nature is implied by the verb, but no additional detail is given, leaving the behavioral risk unclear.

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 very small and puts a referral link before any content. The only actual content, 'Delete filter', restates the name and adds no value. This is under-specification rather than effective front-loaded concise writing.

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?

For a destructive tool with two required IDs and no output schema, the description is insufficient. It fails to mention what IDs are needed, what counts as successful deletion, error cases, or any side effects. An agent would have to rely on schema alone and could easily misuse the tool without understanding the delete behavior.

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 all three parameters (counterId, filterId, pretty) already have definitions. The description adds no extra parameter meaning, so the baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description is 'https://yandex.ru/dev/metrika/ru/management/ Delete filter' – essentially a bare restatement of the tool name. It doesn't add any detail about which filter is deleted, its scope, or any effect beyond what the name already implies. This is a tautology rather than a informative purpose statement.

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 vs alternatives. It does not mention that it deletes a management filter, nor does it distinguish it from nearby siblings like mgmt_access_filter_delete or mention any required prior context (e.g., fetch filter first). The description gives no usage direction.

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

mgmt_filter_getC
ParametersJSON Schema
NameRequiredDescriptionDefault
prettyNoPretty-print response (1)
callbackNoJSONP callback function name
filterIdYesFilter ID
counterIdYesCounter ID

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, and it discloses almost nothing. It does not state that this is a read-only retrieval, what the response contains, whether authorization or OAuth scopes are required, or any error/edge-case behavior. 'Get' weakly implies non-destructive behavior, but the description adds no context beyond what the tool name already conveys.

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 core phrase is appropriately short and front-loaded, but the leading documentation URL ('https://yandex.ru/dev/metrika/ru/management/') does not earn its place and adds noise for an AI agent. The description is not verbose, but its structure is undermined by a non-functional prefix that offers no callable guidance.

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?

For a tool with 4 parameters, no output schema, no annotations, and roughly 50 similar siblings (goal_get, operation_get, segment_get, counter_get, etc.), the description is under-specified. It does not explain what a filter is, what the response looks like, or any constraints on counterId/filterId. An agent could call it correctly from the schema alone, but nothing helps it confirm it selected the right tool beyond the name.

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% — counterId, filterId, pretty, and callback all have descriptions in the schema. The tool description adds no parameter-level meaning, so the schema does the heavy lifting. Baseline 3 applies because the description neither compensates for missing coverage nor adds value beyond the schema, but also doesn't conflict with it.

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 states 'Get filter by ID' — a specific verb (get) and resource (filter) with the retrieval key identified. This clearly maps to the mgmt_filter_get tool and contrasts with sibling filter tools like mgmt_filters_list, mgmt_filter_create, and mgmt_filter_delete. However, it does not explicitly name or differentiate from any sibling, and the leading URL is documentation noise rather than purpose clarification.

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 given about when to use this tool versus alternatives. There is no mention of when to prefer mgmt_filter_get over mgmt_filters_list, no prerequisites (e.g., needing the filterId first from a list call), and no exclusions. The usage context is only weakly implied by the phrase 'Get filter by ID', which essentially restates the tool name.

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

mgmt_filters_listC
ParametersJSON Schema
NameRequiredDescriptionDefault
prettyNoPretty-print response (1)
callbackNoJSONP callback function name
counterIdYesCounter ID

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 carries the full burden of behavioral disclosure. It only states "List counter filters", which implies a non-destructive read, but says nothing about permissions, authorization, pagination, or what fields are returned for a filter list.

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 substantive text is a single, understated sentence, with the core purpose appearing upfront. A documentation URL precedes it, which is of marginal value for an agent, so it doesn't fully maximize the available space, but overall there is no waste.

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 simple 3-parameter list method with full schema coverage, the minimum viable information is present, but with no output schema and no annotations, the agent is left guessing about the response returned and about behavior like listing details. This is a minimally complete, not fully complete, description.

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%, and all three parameters (counterId, pretty, callback) are documented in the schema. The description adds no new semantics beyond what the schema already provides, so the baseline of 3 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 states a specific verb+resource, "List counter filters", which clearly identifies a read operation over the filters resource. The qualifier "counter" provides implicit differentiation from siblings like mgmt_access_filters_list and the verb "List" contrasts with mgmt_filter_get, though this distinction isn't made explicit.

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 its many list/get siblings. An agent must infer entirely from the tool name and sibling structure that this is the appropriate listing call, with no stated alternatives or conditions.

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

mgmt_filter_updateC

https://yandex.ru/dev/metrika/ru/management/ Update filter. Body: {"filter": {...}}

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyYesJSON request body. For POST/PUT use the structure from API docs (e.g. {"counter": {...}}).
prettyNoPretty-print response (1)
filterIdYesFilter ID
counterIdYesCounter ID

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 disclosing behavior. It only says 'Update filter' and gives a body hint, but does not mention side effects, permissions, idempotency, or response behavior. This is insufficient for an agent to understand the consequences of calling the tool.

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 starts with a URL, which is not useful for an agent and clutters the message. The actual purpose is stated in one phrase, but the structure is not front-loaded with the most important information. The inclusion of the body hint is helpful, but the overall format is not concise or well-structured.

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?

For an update operation with no output schema and no annotations, the description is minimal. It does not explain what fields can be updated, what the response contains, or any error conditions. An agent would need to consult external documentation to fully understand the operation, making the description incomplete.

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 already documents all parameters (coverage 100%), but the description adds specific value by indicating the body structure: 'Body: {"filter": {...}}'. This clarifies that the request body should contain a 'filter' object, which is more specific than the generic schema description. Other parameters like filterId and counterId are adequately described in the schema.

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 states 'Update filter' which is a specific verb+resource, clearly indicating the action on a filter. It is distinct from siblings like create or delete by the verb 'update'. However, it does not elaborate on what updating entails or differentiate from other update tools, but the basic purpose is 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?

There is no guidance on when to use this tool versus alternatives like mgmt_filter_create or mgmt_filter_delete. The description only says 'Update filter' without mentioning prerequisites, context, or exclusions. It fails to direct the agent on selecting this tool over similar management operations.

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

mgmt_goal_createC

https://yandex.ru/dev/metrika/ru/management/ Create goal. Body: {"goal": {...}}

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyYesJSON request body. For POST/PUT use the structure from API docs (e.g. {"counter": {...}}).
prettyNoPretty-print response (1)
counterIdYesCounter ID

TDQS

C2.8/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 responsibility for behavioral disclosure. It does not mention that this is a mutating operation, any required permissions, rate limits, or side effects. The only additional detail is the body structure hint, which is minimal and does not cover behavioral traits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

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

The description is very short and to the point, but it begins with a URL, which is not ideal for front-loading the key action. The core instruction 'Create goal' is placed after the URL. It is concise but could be better structured for quick scanning.

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 is a create operation with a nested body object and no output schema. The description does not explain the expected response, required goal fields, or any prerequisites beyond the required parameters in the schema. It relies on an external API URL for details, which is not self-contained. This is insufficient for an agent to construct a correct request without additional lookup.

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 adds a specific body example ({"goal": {...}}), which slightly extends the generic schema description for the body parameter. However, it does not elaborate on the goal structure or required fields, and the other parameters (counterId, pretty) are not enriched beyond the schema.

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 'Create goal' with a specific verb and resource, which distinguishes it from sibling tools like mgmt_goal_update or mgmt_goal_delete. The inclusion of the API URL provides reference but does not add clarity. It is unambiguous enough to be understood.

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 such as mgmt_goal_update or mgmt_goal_delete. The description does not mention prerequisites, typical use cases, or exclusions. An agent would have to infer the purpose from the name alone.

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

mgmt_goal_deleteC
ParametersJSON Schema
NameRequiredDescriptionDefault
goalIdYesGoal ID
prettyNoPretty-print response (1)
counterIdYesCounter ID

TDQS

C2.8/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 the full burden of behavioral disclosure. 'Delete goal' signals a destructive operation but does not disclose permanence, authorization needs, side effects on related data, or response behavior, which is a meaningful gap for a mutation tool.

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 extremely short and free of fluff, but it is under-specified. The documentation URL is not integrated into the guidance and adds little actionable context on its own, so the concise wording does not compensate for missing behavioral and usage information.

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?

For a destructive operation with no annotations and no output schema, the description should explain side effects, required permissions, and what happens after deletion. The schema covers the parameters, but the description leaves the operation's behavioral contract almost entirely implicit, and the documentation link does not substitute for inline guidance.

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% and the parameters are simple and clearly named (counterId, goalId, pretty). The description adds no parameter-level meaning beyond the schema, but the baseline 3 applies because the schema already documents all parameters adequately for a basic delete call.

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 states a specific action ('Delete goal') and identifies the resource, making the tool's purpose clear and distinguishing it from goal read/create/update tools by operation type. It is terse but not tautological; the name and description align well. However, it does not explicitly explain what consequences deleting a goal entails.

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 mgmt_goal_update or mgmt_goal_create. It does not mention prerequisites, ownership requirements, or situations where deletion might be inappropriate.

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

mgmt_goal_getB
ParametersJSON Schema
NameRequiredDescriptionDefault
goalIdYesGoal ID
prettyNoPretty-print response (1)
callbackNoJSONP callback function name
counterIdYesCounter ID

TDQS

B3.1/5.0
Behavior2/5

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

With no annotations provided, the description carries full responsibility for behavioral disclosure. It only says 'Get', which implies a read-only operation, but it does not mention authentication requirements, rate limits, response format, or any other behavioral traits. The description adds no extra context beyond what the name already conveys.

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 a supporting documentation link. It is appropriately minimal for a straightforward get operation, with no filler words. Every element (the action and the reference) serves a purpose, and the key point is front-loaded.

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 simple getter with a clear name and a schema that documents all parameters, the description is adequate but not rich. It doesn't mention the return value or any prerequisites like authorization, but these are implied by the operation type and the required counterId/goalId parameters. Overall, it's sufficient yet could benefit from noting that it returns a single goal's 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?

The schema has 100% description coverage, so each parameter (counterId, goalId, pretty, callback) is already explained. The description adds no parameter-specific information. Per the rubric, with high coverage the baseline is 3, and there is no additional value from the description.

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 states a specific action ('Get goal by ID') with the resource (goal) and identifier (ID). It is clear and unambiguous, and the appended documentation URL adds context. However, it doesn't explicitly differentiate it from sibling tools like mgmt_goals_list, though the verb 'get' vs 'list' implies a distinction.

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 mgmt_goals_list, mgmt_goal_update, or mgmt_goal_delete. There is no mention of scenarios, prerequisites, or exclusions. The usage context is only implied by the name and the need for a goal ID, but this is not made explicit.

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

mgmt_goals_listC
ParametersJSON Schema
NameRequiredDescriptionDefault
prettyNoPretty-print response (1)
callbackNoJSONP callback function name
counterIdYesCounter ID
useDeletedNoInclude deleted goals

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations, the description carries the full burden of behavioral disclosure, but it only says 'List counter goals.' It does not state that this is a read-only operation, what permissions are needed, how pagination works, or whether deleted goals appear by default.

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 extremely compact with no filler words. The documentation URL adds some context, though placing the URL before the actual action means the key verb 'List' is not front-loaded.

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 simple read-only list endpoint with fully documented parameters, the description is minimally viable and an agent can identify the tool and its required counterId. However, no output schema or behavior details exist, and the description does not mention authentication, response shape, or deletion behavior, leaving gaps for confident invocation.

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 input schema already documents all four parameters including counterId and useDeleted. The description adds no parameter-level meaning beyond the schema, so the baseline of 3 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 states the operation ('List') and resource ('counter goals'), making it clear the tool returns goals for a counter and distinguishing it from the sibling goal get/create/update/delete tools. It lacks explicit scoping details such as whether deleted goals are included, but the core purpose is 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?

No guidance is provided about when to use this tool versus alternatives like mgmt_goal_get or other list tools. The verb 'List' implies the use case, but there are no explicit conditions, prerequisites, or exclusions.

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

mgmt_goal_updateC

https://yandex.ru/dev/metrika/ru/management/ Update goal. Body: {"goal": {...}}

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyYesJSON request body. For POST/PUT use the structure from API docs (e.g. {"counter": {...}}).
goalIdYesGoal ID
prettyNoPretty-print response (1)
counterIdYesCounter ID

TDQS

C2.7/5.0
Behavior1/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 of behavioral disclosure. It only says 'Update goal' and gives a body example, but does not disclose side effects, permission requirements, response format, or any operational details. This is inadequate for a mutation 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 extremely concise, essentially one sentence plus a URL and body hint. It is front-loaded with the action. The URL to API docs is arguably extraneous but not harmful. Structure is efficient, though it sacrifices completeness for brevity.

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?

For a tool with 4 parameters, a nested body object, no output schema, and no annotations, the description is incomplete. It does not explain how to construct the goal object, what fields are required, or what the response looks like. It points to external documentation but does not integrate essential context into the description.

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?

The schema covers 100% of parameters with descriptions, so the baseline is 3. The description adds a small value by specifying the body structure as {'goal': {...}}, which contrasts with the generic schema description that mentions 'counter'. However, it does not elaborate on counterId or goalId beyond their schema descriptions.

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 states a clear action 'Update goal' with the resource being a goal in Yandex Metrika. It is not a tautology and the name itself reinforces the purpose. However, it does not differentiate from sibling tools like mgmt_goal_create or mgmt_goal_delete, relying on the name for distinction.

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. There is no mention of prerequisites, typical scenarios, or conditions that would make this tool preferable over create/delete or other management tools. The description only states the action without context.

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

mgmt_grant_createB

https://yandex.ru/dev/metrika/ru/management/ Create grant. Body: {"grant": {"user_login": "...", "perm": "view"}}

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyYesJSON request body. For POST/PUT use the structure from API docs (e.g. {"counter": {...}}).
prettyNoPretty-print response (1)
counterIdYesCounter ID

TDQS

B3.1/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 carry the behavioral burden. It discloses only that this creates a grant and shows a body shape; it does not mention required permissions, whether existing grants are replaced or merged, or what the response contains.

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 compact and contains no filler, combining a docs URL, the action, and a body example in two sentences. It would be slightly better front-loaded if the action appeared before the URL, but overall structure is efficient.

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 lack of annotations and output schema, the description still makes basic invocation understandable through the body example and docs link. However, it omits behavioral details such as response semantics, permission requirements, and how this endpoint relates to the public-grant and update variants.

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 all parameters, but the body parameter is generic and underspecified. The description adds real meaning by providing the exact JSON structure {"grant": {"user_login": "...", "perm": "view"}}, which is valuable for correct invocation.

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 states a clear action ('Create grant') and identifies the resource via the body example with user_login and perm. It does not explicitly distinguish this from sibling endpoints like mgmt_public_grant_create or mgmt_grant_update.

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 about when to use this tool versus related grant tools, nor any exclusions or alternative-endpoint hints. The word 'Create' implies basic usage, but the many sibling grant endpoints make the lack of explicit routing a real gap.

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

mgmt_grant_deleteD
ParametersJSON Schema
NameRequiredDescriptionDefault
prettyNoPretty-print response (1)
user_uidNoUser UID
counterIdYesCounter ID
user_loginNoUser login

TDQS

D1.7/5.0
Behavior1/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 of behavioral disclosure. The description only says 'Delete grant' and provides a documentation URL. It does not disclose that this is a destructive operation, whether it requires special permissions, whether it is reversible, or what happens to the user's access. The URL is not a substitute for behavioral transparency in the description itself.

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, but it is not effective conciseness. It consists of a bare URL and a two-word phrase. It is under-specified rather than efficiently written. The URL is likely not useful to an AI agent and takes up space without adding semantic value.

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?

For a destructive management tool with no annotations and no output schema, the description is severely incomplete. It does not explain what a grant is, which parameters identify the target grant, whether user_uid or user_login is required, or what the response looks like. The sibling list shows many grant-related tools, and this description does not help an agent understand the operation's scope or prerequisites.

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 four parameters: pretty, user_uid, counterId, and user_login. The description adds no parameter-level meaning beyond the schema. Baseline 3 is appropriate because the schema does the heavy lifting, though the description could have clarified which parameters identify the grant to delete (e.g., counterId plus user_uid or user_login).

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description is 'https://yandex.ru/dev/metrika/ru/management/ Delete grant'. It includes a URL and a terse phrase 'Delete grant'. The verb 'Delete' and resource 'grant' are present, but the description is mostly a URL with no explanation of what the tool does, what a grant is in this context, or how it differs from sibling tools like mgmt_grant_create, mgmt_grant_update, mgmt_public_grant_delete, or mgmt_my_grant_get. It is barely more than a tautology of the tool name.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/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. The description does not mention that this deletes a user's access grant to a counter, nor does it distinguish it from mgmt_public_grant_delete or mgmt_grant_update. An agent has no context for selecting this tool over siblings.

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

mgmt_grant_getC
ParametersJSON Schema
NameRequiredDescriptionDefault
prettyNoPretty-print response (1)
counterIdYesCounter ID
user_loginYesUser login

TDQS

C2.7/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 carry the full behavioral burden. 'Get grant for user' implies a read operation but does not disclose permissions, response format, side effects, or failure behavior. This is minimal at best.

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 very short, but it is under-specified rather than efficiently structured. The documentation URL is not explained and does not contribute actionable guidance, while the main sentence largely restates the tool name.

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?

For a management API tool with no annotations and no output schema, this description is incomplete. It does not explain what a grant is, what the response contains, or how this call differs from the many related grant and counter tools in the sibling list.

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%, with 'counterId' and 'user_login' already documented in the input schema. The description adds no additional parameter meaning beyond the schema, so the baseline of 3 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 states a specific verb and resource: 'Get grant for user' indicates retrieval of a grant tied to a user. It is clear enough as an operation, though it does not explicitly distinguish itself from siblings like mgmt_grants_list or mgmt_my_grant_get.

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 given for when to use this tool versus alternatives. An agent cannot tell whether to call this, mgmt_grants_list, or mgmt_my_grant_get based on the description alone; the usage context is only weakly implied by the word 'get'.

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

mgmt_grants_listC
ParametersJSON Schema
NameRequiredDescriptionDefault
prettyNoPretty-print response (1)
callbackNoJSONP callback function name
counterIdYesCounter ID

TDQS

C2.9/5.0
Behavior2/5

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

There are no annotations, so the description carries the full behavioral burden. 'List' implies a read operation, but the description does not disclose response format, pagination, required permissions, or whether it lists all grants or only those for the given counter. This is thin coverage for an unannotated tool.

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 operative text is extremely short and front-loaded, but it is preceded by a raw documentation URL that does not help an agent invoke the tool. There is no wasted prose, but the structure is not clean and the description is under-specified.

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 single-required-parameter list operation, the description plus schema is minimally viable. However, with no output schema and no annotations, important context such as expected response shape, authentication requirements, and grant scope semantics is 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 description coverage is 100%, with all three parameters (pretty, callback, counterId) already documented in the schema. The description adds no additional parameter-level meaning beyond what the schema provides, matching the baseline.

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 states a specific verb and resource: 'List counter access grants'. This clearly identifies what the tool does and separates it from sibling stat_* and mgmt_* tools at a high level, though it does not explicitly name a sibling it is not.

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 given on when to use this tool versus related alternatives like mgmt_grant_get, mgmt_my_grant_get, or the grant create/update/delete tools. The agent must infer usage solely from the tool name and generic list semantics.

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

mgmt_grant_updateB

https://yandex.ru/dev/metrika/ru/management/ Update grant. Body: {"grant": {...}}

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyYesJSON request body. For POST/PUT use the structure from API docs (e.g. {"counter": {...}}).
prettyNoPretty-print response (1)
counterIdYesCounter ID

TDQS

B3.3/5.0
Behavior2/5

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

There are no annotations, so the description must carry the behavioral disclosure burden. It reveals the body format but not whether the update is partial or full replacement, what permissions are required, what side effects occur, or how errors manifest. 'Update grant' only hints at mutation.

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 brief and mostly free of padding; the body example is genuinely useful. The leading documentation URL is generic and not directly actionable, but overall the structure is compact and front-loaded with the operation and body format.

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 three-parameter update tool with full schema coverage and no output schema, the description is minimally adequate: it names the operation and body envelope. It lacks usage guidance, behavioral details, and return-value information, so an agent must infer standard update behavior or consult the API docs.

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 already 100%, so a baseline of 3 applies. The description adds value by specifying the grant-specific body envelope {"grant": {...}}, which is more concrete than the generic POST/PUT example in the schema. It still does not describe individual grant fields, but it compensates for the schema's genericity.

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 states 'Update grant' and provides the expected body shape, making the operation and resource clear. This distinguishes it from mgmt_grant_get/create/delete and other mgmt_*_update tools, though it largely restates the tool name.

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 by naming the update operation but gives no explicit when-to-use guidance or alternatives. It does not mention when this should be used instead of mgmt_grant_create or mgmt_grant_delete, leaving context implied.

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

mgmt_label_createB

https://yandex.ru/dev/metrika/ru/management/ Create label. Body: {"label": {"name": "..."}}

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyYesJSON request body. For POST/PUT use the structure from API docs (e.g. {"counter": {...}}).
prettyNoPretty-print response (1)

TDQS

B3/5.0
Behavior2/5

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

No annotations are present, so the description carries the full burden of behavioral disclosure. It only says 'Create label' and shows the body format; it does not mention persistence, side effects, authorization needs, idempotency, or response behavior.

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 short and front-loaded, with the key body shape included immediately. The documentation URL is low-value noise, but it does not prevent the description from being quickly scannable.

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?

With no output schema and no annotations, the description should clarify what happens when a label is created, such as the expected response, success behavior, or failure conditions. It provides a minimal body example but omits these operational details, making it only partially complete.

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 input schema's body description is generic, but the tool description adds the label-specific body structure `{"label": {"name": "..."}}`, which is meaningful and helps an agent construct a valid call. The other parameter, `pretty`, is already documented in the schema, and schema coverage is 100%.

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 states the operation clearly with 'Create label' and provides the exact body shape, so an agent knows it creates a label resource. It does not explain what a label is or explicitly distinguish itself from the many sibling label tools beyond the verb, which prevents a 5.

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 about when to use this tool instead of mgmt_label_update, mgmt_label_delete, or other management tools. The intended use is only implied by the name and one-word description, so the agent must infer usage from context.

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

mgmt_label_deleteC
ParametersJSON Schema
NameRequiredDescriptionDefault
prettyNoPretty-print response (1)
labelIdYesLabel ID

TDQS

C2.8/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 the full burden of behavioral disclosure. It only states 'Delete label' without mentioning that deletion is likely irreversible, whether authentication or specific permissions are required, or any side effects on associated counters. This is a significant gap for a mutating operation.

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 extremely short (a documentation URL plus 'Delete label'), which is concise, but the URL is not actionable guidance and the phrase lacks explanatory structure. It is not front-loaded with useful information; it is under-specified rather than efficiently informative.

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?

For a simple delete operation, the description is incomplete. It does not explain what happens on success or failure, whether the operation is permanent, or any prerequisites. There is no output schema to compensate, and no behavioral context, leaving an agent without enough detail to safely invoke 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?

The input schema has 100% description coverage: both 'pretty' and 'labelId' are described. The tool description itself adds no parameter-specific meaning, so the baseline of 3 applies. It does not clarify parameter formats or interactions beyond the schema.

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 states 'Delete label' which is a specific verb and resource. It clearly identifies the operation, and the tool name itself distinguishes it from sibling label operations like mgmt_label_get and mgmt_label_update. However, it adds no extra context about scope or what exactly is deleted (e.g., a specific label by ID), leaving it slightly minimal.

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. It does not mention prerequisites, when deletion is appropriate, or when to avoid it. With siblings like mgmt_label_update and mgmt_labels_list, an agent gets no routing hints from the description.

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

mgmt_label_getC
ParametersJSON Schema
NameRequiredDescriptionDefault
prettyNoPretty-print response (1)
labelIdYesLabel ID

TDQS

C2.8/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 says 'Get label by ID', implying a read-only operation, but it does not explicitly state that it is non-destructive, requires authentication, or what the response contains. The minimal wording fails to provide meaningful transparency beyond the verb.

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 extremely concise with only a URL and a short phrase. While it is terse, the leading URL is unhelpful and takes up space without adding value. The functional text is efficient but lacks structure, such as separating the action from additional context. It is not overly verbose, but the URL is a distraction.

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?

For a simple get operation with only two parameters, the description is barely adequate. It does not explain what the tool returns, any error conditions, or how it fits into the broader management API. Given the large number of sibling tools, an agent might need more context to select it correctly, especially to differentiate it from other get operations like mgmt_goal_get or mgmt_filter_get. The description does not mention that it is specific to labels beyond the name.

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%: both labelId and pretty have descriptions in the input schema. The tool description adds no parameter information beyond what the schema already provides, so it does not enhance understanding. The baseline of 3 applies because the schema fully covers the parameters.

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 states 'Get label by ID', which is a clear verb-resource pair with a specific retrieval method. This distinguishes it from sibling tools like mgmt_labels_list (list), mgmt_label_create (create), etc. The purpose is unambiguous, though it is minimal and relies on the name for full 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?

The description provides no guidance on when to use this tool versus alternatives. It does not mention that it is for retrieving a single label when you have its ID, nor does it reference mgmt_labels_list for listing all labels. No prerequisites or context are given, leaving the agent to infer usage from the name alone.

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

mgmt_labels_listC
ParametersJSON Schema
NameRequiredDescriptionDefault
prettyNoPretty-print response (1)

TDQS

C2.8/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 the full burden of behavioral disclosure. It states 'List user labels,' which implies a read-only operation, but it does not explicitly say it returns a list, mention pagination, rate limits, or any other behavior. The description is too sparse to convey useful behavioral traits beyond the obvious.

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 extremely concise—one sentence with a URL. It is not verbose, but it lacks structure and informative content. While brevity is good, the description is so minimal that it fails to provide context. It is not a model of efficiency; it is just insufficient.

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 that there is no output schema and the tool is a simple list operation, the description should explain what the tool returns (e.g., an array of label objects) and any relevant details. It does not. The lack of response format information and the absence of any differentiation from sibling tools makes this incomplete for an agent to call confidently.

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?

The single parameter 'pretty' is fully described in the schema (100% coverage), so the baseline is 3. The tool description adds no additional meaning about the parameter; it simply relies on the schema. This meets the minimum viable standard.

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 action ('List') and the resource ('user labels'), which is a specific verb+resource. It is distinct enough from sibling tools like mgmt_counters_list or mgmt_goals_list, though it does not explicitly call out the distinction. The purpose is clear and 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 such as mgmt_label_get, mgmt_label_create, or other list tools. There is no mention of prerequisites, context, or exclusions. An agent would have to infer usage from the name alone.

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

mgmt_label_updateB

https://yandex.ru/dev/metrika/ru/management/ Update label. Body: {"label": {"name": "..."}}

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyYesJSON request body. For POST/PUT use the structure from API docs (e.g. {"counter": {...}}).
prettyNoPretty-print response (1)
labelIdYesLabel ID

TDQS

B3/5.0
Behavior2/5

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

With no annotations, the description carries the full burden of behavioral disclosure. It reveals that the operation updates a label and expects a body with a name, but it does not disclose mutating effects, permission requirements, whether partial updates are allowed, or what happens if the label does not exist.

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 short and to the point, with no redundant text or fluff. The body example is useful, though the leading URL is not immediately actionable information and adds minor structural noise.

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 is only minimally complete for a management mutation tool. It supplies a body shape and labelId is in the schema, but with no annotations and no output schema, it omits behavioral context such as side effects, authorization needs, and expected response semantics, which an agent would benefit from knowing before invoking it.

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 100%, providing baseline clarity for labelId and pretty. The description adds meaningful semantic value by concretely showing the expected body structure {'label': {'name': '...'}}, which the generic body schema does not specify.

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 states a clear verb and resource: 'Update label', and includes a body example showing label name modification. It distinguishes itself from sibling tools like mgmt_label_create, mgmt_label_get, and mgmt_label_delete through the update verb and the provided body structure.

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 explicit guidance on when to use this tool versus alternatives like mgmt_label_create or mgmt_label_delete. The intended use case is only implied by the verb 'update' and the presence of labelId and a rename body, but no conditions, prerequisites, or exclusions are stated.

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

mgmt_messengers_listC

https://yandex.ru/dev/metrika/ru/management/ List messengers for messenger goal type

ParametersJSON Schema
NameRequiredDescriptionDefault
prettyNoPretty-print response (1)

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 carries the full burden of behavioral disclosure. It only says 'List', which implies read-only, but it does not mention authorization requirements, whether results are scoped by a counter, or any pagination or response behavior.

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 short and direct, with no filler. The URL is somewhat redundant for an agent but not harmful; the core instruction is clear enough.

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 simple tool with one optional parameter and no output schema, the description is minimally viable, but it omits usage context, return value shape, and authentication/behavioral notes that would make it fully self-sufficient.

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% for the single optional 'pretty' parameter, so the schema already handles parameter documentation. The description adds nothing about parameters, which is acceptable under the baseline.

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 states a specific action ('List') and resource ('messengers') with a scope qualifier ('for messenger goal type'), distinguishing it from a generic listing. However, it does not explicitly differentiate from sibling list tools such as mgmt_social_networks_list.

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 the many sibling list tools, nor are there conditions, prerequisites, or exclusions. The single sentence simply describes the operation.

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

mgmt_my_grant_getC

https://yandex.ru/dev/metrika/ru/management/ Get current user grant for counter

ParametersJSON Schema
NameRequiredDescriptionDefault
prettyNoPretty-print response (1)
counterIdYesCounter ID

TDQS

C2.9/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 implies a read operation via 'Get' but does not mention authentication requirements, error conditions, or response format. The external URL is not a substitute for in-description transparency, and the behavior is minimally disclosed.

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 extremely concise, a single phrase with an external documentation URL. It is front-loaded with the action, though the leading URL is somewhat unusual and may be noise. Overall, it is efficient with no fluff, though the URL could be considered unnecessary.

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?

For a simple get tool with two parameters and no output schema, the description is minimal. It does not explain what a grant is, how the current user is determined, or what the response contains. It also lacks any distinction from the related grant tools, leaving the agent with insufficient context for correct invocation and interpretation.

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?

The input schema provides descriptions for both parameters (counterId as 'Counter ID', pretty as 'Pretty-print response (1)'), achieving 100% schema coverage. The description adds only implicit context that counterId refers to the target counter, but does not elaborate on parameter formats or constraints beyond the schema. 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?

The description clearly states the action ('Get') and the resource ('current user grant for counter'). It distinguishes the 'my' aspect, though it does not differentiate from the sibling mgmt_grant_get, which might serve a similar purpose for other users. The purpose is specific and understandable.

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 like mgmt_grant_get or mgmt_grants_list. The description simply states what the tool does without any context on selection criteria or prerequisites, leaving the agent to infer usage.

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

mgmt_operation_createC

https://yandex.ru/dev/metrika/ru/management/ Create operation. Body: {"operation": {...}}

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyYesJSON request body. For POST/PUT use the structure from API docs (e.g. {"counter": {...}}).
prettyNoPretty-print response (1)
counterIdYesCounter ID

TDQS

C2.6/5.0
Behavior1/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 only implies a write operation via 'Create' but does not disclose side effects, required permissions, reversibility, or response behavior. This is a serious gap for a mutation tool with zero annotation coverage.

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 extremely short (one sentence plus a URL). It is concise but under-specified, lacking any structural organization or key details. It is not bloated, but it sacrifices usefulness for brevity.

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?

For a create operation with a nested body, no output schema, and no annotations, the description is severely incomplete. It does not explain the resource, required fields beyond the schema, response format, error handling, or any operational context. An agent cannot reliably invoke this tool without external documentation.

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 100%, so the baseline is 3. The description adds value by specifying the expected body structure: 'Body: {"operation": {...}}'. This clarifies the required shape beyond the generic schema description, helping the agent format the request correctly.

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 states the action 'Create operation' with a resource, which is clear enough given the sibling CRUD tools. However, it does not specify what an 'operation' is or differentiate from other mgmt_operation_* tools beyond the verb. It is not a tautology and provides a minimal but functional purpose.

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. It does not mention conditions, prerequisites, or when not to use it. The description only says 'Create operation' with no contextual cues or comparisons to siblings like mgmt_operation_update or mgmt_operation_delete.

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

mgmt_operation_deleteC
ParametersJSON Schema
NameRequiredDescriptionDefault
prettyNoPretty-print response (1)
counterIdYesCounter ID
operationIdYesOperation ID

TDQS

C2.1/5.0
Behavior2/5

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

There are no annotations, so the description carries the full burden of disclosing side effects. It only says 'Delete operation' and does not mention irreversibility, required permissions, or effects on related resources. For a destructive operation this is a significant transparency gap.

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 short but under-specified rather than appropriately concise. It consists of a fragment and an unexplained documentation URL, with no useful structural information about the operation.

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?

With no annotations and no output schema, a delete operation needs at least an explanation of scope, side effects, and response. The description supplies none of this; the generic documentation link does not substitute for concrete operational context. An agent cannot safely infer how to invoke this 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 counterId, operationId, and pretty are already documented in the schema. The description adds nothing about how the parameters relate or what values are expected, but the baseline of 3 applies because the schema handles the parameter documentation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description is a bare fragment, 'Delete operation,' which essentially restates the tool name mgmt_operation_delete. It does not explain what an 'operation' is in Yandex Metrika or what deletion involves, so it only restates the obvious and provides no real resource context.

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 instead of mgmt_operation_get, mgmt_operation_create, mgmt_operation_update, or the broader management tools. There are no stated context, prerequisites, or exclusions.

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

mgmt_operation_getC
ParametersJSON Schema
NameRequiredDescriptionDefault
prettyNoPretty-print response (1)
callbackNoJSONP callback function name
counterIdYesCounter ID
operationIdYesOperation ID

TDQS

C2.8/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 the full burden. It only says 'Get operation by ID', which implies a read-only action, but it does not disclose what an 'operation' is, whether the operation result is returned synchronously, what errors occur for invalid IDs, or any security/authorization context. For a tool with zero annotation coverage, this is insufficient behavioral disclosure.

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 extremely short, but the leading raw URL 'https://yandex.ru/dev/metrika/ru/management/' provides no immediate information and is placed before the actual descriptive sentence. The phrase 'Get operation by ID' is economical with no fluff, yet the structure is awkward and the URL does not earn its position.

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?

With no output schema, the description should at least indicate what the response contains or how the operation resource is identified, but it does not. It also lacks any clarification of the business context (asynchronous operations) that would help an agent decide whether to call this versus a sibling. The tool is barely sufficient for a simple getter but leaves key usage context undeclared.

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?

The input schema coverage is 100%, with each parameter already described in the schema (e.g., 'Counter ID', 'Operation ID'). The description adds no new parameter meaning beyond 'by ID', so the schema carries the load. A baseline of 3 is appropriate because the schema is adequate and the description does not need to compensate.

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 states a specific verb 'Get' with resource 'operation' and identifies the lookup key 'by ID', making it clear this tool fetches a single operation. It implicitly differentiates from siblings like mgmt_operations_list (list) and mgmt_operation_update/delete because it is the 'get' counterpart, though it does not explicitly name alternatives.

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. The description does not mention preconditions, such as the need for an operationId from mgmt_operations_list, nor does it exclude other getters or list operations. An agent must infer usage entirely from the name.

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

mgmt_operations_listC
ParametersJSON Schema
NameRequiredDescriptionDefault
prettyNoPretty-print response (1)
callbackNoJSONP callback function name
counterIdYesCounter ID

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 carries the full behavioral disclosure burden. 'List counter operations' only implies a read-only operation; it does not disclose auth/ownership requirements, response format, pagination behavior, or that it is limited to a given counter's operations. These are meaningful gaps for an unannotated 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 short and front-loaded with a documentation URL and a one-line summary. It is appropriately sized for a simple list operation with one required parameter; the URL is arguably generic, but it does not add significant bloat.

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 no annotations and no output schema, so the description should clarify what the operation returns, how a counter operation is represented, and whether listing has constraints. The schema explains the input parameters but the description leaves the behavior and output semantics mostly to the agent's inference.

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 parameters counterId, pretty, and callback are already documented in the schema. The description does not add meaning about how the parameters affect the returned operations or how counterId scopes the list, but per the coverage baseline, no extra parameter detail is strictly necessary.

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 identifies the action ('List') and resource ('counter operations') and is distinguishable from sibling tools like mgmt_operation_get or mgmt_operation_create, which are individual operation CRUD actions. However, it is still minimal: 'operations' is not further clarified within the description itself, so it is more effective in the context of its sibling names than standalone.

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 about when to call this tool versus mgmt_operation_get or other mgmt list tools. The documentation URL is generic and does not help disambiguate use cases or state exclusions like 'use this to list all operations, vs get for a single operation'.

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

mgmt_operation_updateB

https://yandex.ru/dev/metrika/ru/management/ Update operation. Body: {"operation": {...}}

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyYesJSON request body. For POST/PUT use the structure from API docs (e.g. {"counter": {...}}).
prettyNoPretty-print response (1)
counterIdYesCounter ID
operationIdYesOperation ID

TDQS

B3/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 disclosureay and only says 'Update operation' with a body pattern. It does not state whether the update is partial or full, what side effects occur, whether authentication or special permissions are required, or what happens to the existing operation data.

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 short and the key body requirement is front-loaded. The documentation URL and body snippet are useful, but the phrasing is fragmentary and mixes a link with a loose template, preventing a perfect score.

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?

For a mutation tool with no annotations and no output schema, the description is too sparse: it lacks usage context, endpoint-specific documentation, response format, and behavioral caveats. An agent would have to rely on the schema and external docs to call it 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 input schema already documents all four parameters with 100% coverage, so the baseline is 3. The description adds meaningful nesting context by specifying 'Body: {"operation": {...}}', which is not present in the schema's generic JSON body object, helping the agent construct a valid request.

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 states the verb 'Update' and the resource 'operation', which distinguishes it from the many stat_ and mgmt_* sibling tools at a glance. It also gives the expected body shape, but it does not explain what an operation is or which fields are updatable, so it stops short of a 5.

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 about when to use this tool instead of mgmt_operation_create, mgmt_operation_get, or mgmt_operation_delete. No prerequisites, exclusions, or alternative routing are provided; the only usage signal is the verb 'Update'.

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

mgmt_public_grant_createC

https://yandex.ru/dev/metrika/ru/management/ Create public grant (no body)

ParametersJSON Schema
NameRequiredDescriptionDefault
prettyNoPretty-print response (1)
counterIdYesCounter ID

TDQS

C2.4/5.0
Behavior2/5

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

With no annotations, the description carries the full burden of behavioral disclosure. It only mentions 'no body', implying the request has no payload, but it does not describe side effects, permissions required, reversibility, or what the response contains. The brief nature leaves critical behavioral details undisclosed.

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, but it is under-specified rather than concise. It includes an irrelevant URL and a vague phrase. Every sentence does not earn its place; the URL is not actionable, and the description lacks essential information about the tool's purpose and usage.

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?

For a simple tool with 2 parameters and no output schema, the description is still incomplete. It fails to explain what a public grant is, how it differs from other grant types, or any operational context. An agent would lack the information needed to use it 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% (both 'pretty' and 'counterId' have descriptions), so the baseline is 3. The description adds no semantic value beyond the schema; it doesn't explain that counterId identifies the target counter or that pretty controls formatting. It does not compensate for the schema's minimal descriptions.

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 action 'Create public grant' which is a specific verb and resource, but it lacks differentiation from sibling tools like mgmt_grant_create or mgmt_public_grant_delete. The parenthetical '(no body)' hints at the request format but doesn't clarify what a public grant is or how it differs from other grant operations.

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 such as mgmt_grant_create or mgmt_grant_update. There is no mention of scenarios, prerequisites, or exclusions, leaving the agent without context for selection.

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

mgmt_public_grant_deleteC
ParametersJSON Schema
NameRequiredDescriptionDefault
prettyNoPretty-print response (1)
counterIdYesCounter ID

TDQS

C2.6/5.0
Behavior1/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 of behavioral disclosure. It only states 'Delete public grant' without mentioning side effects, irreversibility, required permissions, or consequences. This is insufficient for a destructive operation.

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 extremely short, which is concise, but it includes an unexplained URL that may confuse or mislead an agent. The phrase 'Delete public grant' is clear, but the URL adds noise without value. Overall, it is efficient but not optimally structured.

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?

For a simple delete tool with one required parameter and no output schema, the description is sparse. It lacks context about what a public grant is, how it differs from other grants, and any error handling or edge cases. With no annotations, this is inadequate for an agent to use confidently.

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?

The input schema describes both parameters (counterId and pretty) with 100% coverage. The description adds no extra meaning beyond what the schema already provides. Baseline of 3 is appropriate since the schema does the heavy lifting.

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 action 'Delete public grant', which is a specific verb and resource. It distinguishes from the sibling mgmt_grant_delete by specifying 'public' grant, so an agent can tell it apart. However, it does not explain what constitutes a public grant, which slightly 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 is provided on when to use this tool versus alternatives like mgmt_grant_delete or mgmt_public_grant_create. There is no mention of prerequisites, scenarios, or exclusions. The agent must infer usage from the name alone.

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

mgmt_segment_createC

https://yandex.ru/dev/metrika/ru/management/ Create segment. Body: {"segment": {...}}

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyYesJSON request body. For POST/PUT use the structure from API docs (e.g. {"counter": {...}}).
prettyNoPretty-print response (1)
counterIdYesCounter ID

TDQS

C2.3/5.0
Behavior2/5

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

Annotations are absent, so the description carries the full burden. 'Create segment' implies a write/mutation operation, but it discloses nothing about side effects (e.g., new segment appears in list), whether the operation can be undone, required permissions, or response format. The URL points to docs but the description itself is silent on behavior. This is a significant gap for a mutation tool.

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 concise (two short phrases) but poorly structured: the URL is placed first, burying the purpose. The second sentence 'Body: {"segment": {...}}' is a fragment that adds some context but could be clearer. There's no wasted prose, but the front-loading is wrong—purpose should lead, not a URL. This is acceptable conciseness, not excellent.

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?

For a create operation with a nested object body and no output schema, the description is too thin. It doesn't mention that the body requires a 'segment' object with properties like name and expression, doesn't specify the response (likely the created segment object), and doesn't mention any constraints or requirements (e.g., segment limits). Agents would need to consult external docs, which the URL provides, but the description's job is to make tool use self-contained. The URL is a pointer to docs, but with no annotations and an opaque body, this is insufficient.

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%: body is described as a JSON request body with the structure from API docs, counterId as 'Counter ID', pretty as 'Pretty-print response'. The description adds minimal value beyond that—it hints at the body shape for segment, but doesn't specify which fields are required (e.g., name, expression). With full schema coverage, a 3 is a fair baseline; the description doesn't introduce any confusion but also doesn't enrich the parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states 'Create segment' which is a clear verb+resource, but it stumbles by starting with a raw URL instead of the tool's purpose, and it gives no field detail beyond the name. The phrase 'Body: {"segment": {...}}' is a fragment that doesn't explain what the body should contain. It does minimally distinguish from siblings like mgmt_segment_get, but the leading URL is noise that hurts 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 the many sibling CRUD operations. With siblings like mgmt_segment_list, get, update, delete, the description provides no conditions for when creating is appropriate, no mention of required counterId or permissions, and no mention of alternatives. The URL is a documentation link but doesn't say when 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.

mgmt_segment_deleteC
ParametersJSON Schema
NameRequiredDescriptionDefault
prettyNoPretty-print response (1)
counterIdYesCounter ID
segmentIdYesSegment ID

TDQS

C2.7/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 the full burden for behavioral disclosure. It only says 'delete' and includes a documentation URL, with no details about permanence, side effects, permissions, idempotency, or response behavior.

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 very short, but not in a good way: the URL is unexplained and 'Delete segment' merely repeats the tool name. This reads as under-specification rather than purposeful 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?

For a destructive management operation with no output schema and no annotations, the description should explain deletion effects, prerequisites, and what the agent should expect. It provides none of that, leaving the description incomplete for correct invocation.

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 property descriptions like 'Counter ID' and 'Segment ID' are present. The tool description itself adds no parameter meaning, so the baseline of 3 applies because the schema already documents the parameters sufficiently.

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 states a clear verb and resource: 'Delete segment.' It is easy to understand the basic action, but it does not distinguish the tool from sibling segment operations or explain what a segment is beyond the name.

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. No context, prerequisites, or exclusions are provided; the agent must infer usage entirely from the operation name and sibling list.

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

mgmt_segment_getD
ParametersJSON Schema
NameRequiredDescriptionDefault
prettyNoPretty-print response (1)
counterIdYesCounter ID
segmentIdYesSegment ID

TDQS

D1.9/5.0
Behavior1/5

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

No annotations are provided, so the description must carry the full burden of behavioral disclosure. It only says 'Get', implying a read operation, but provides no information about authentication requirements, response format, error handling, rate limits, or side effects. The description is silent on all behavioral aspects.

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, but this is under-specification rather than conciseness. It consists of a URL and a single phrase that restates the tool name. There is no structured information, no front-loading of critical constraints, and no effort to be helpful. The URL is not informative for an AI agent.

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?

For a simple get-by-ID tool, one might argue minimal description is acceptable, but the lack of output schema, no behavioral notes, and no usage context leaves the agent with insufficient information. It doesn't explain what a 'segment' is in this context, what the response looks like, or any error conditions. This is incomplete even for a straightforward retrieval operation.

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 adds nothing beyond the schema – it does not clarify the relationship between counterId and segmentId or provide any additional context about parameter usage. The schema descriptions ('Counter ID', 'Segment ID') are self-explanatory, so the description provides no added value.

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 'Get segment by ID' which is a specific verb and resource, but it does not distinguish this tool from siblings beyond that. It essentially restates the tool name with minor clarification (by ID), and the URL adds no functional value 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 Guidelines1/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. There is no mention of prerequisites, typical scenarios, or exclusions. The description gives no context about when to call mgmt_segment_get versus mgmt_segment_list or other segment operations.

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

mgmt_segments_listC
ParametersJSON Schema
NameRequiredDescriptionDefault
prettyNoPretty-print response (1)
counterIdYesCounter ID

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations provided, the description carries full behavioral burden. 'List counter segments' implies a read operation but does not disclose what is returned, whether authentication is required, or any other operational behavior.

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 extremely short and front-loaded with the operation name. The documentation URL adds little value, but there is no unnecessary prose or repetition.

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 simple list operation with one required parameter, the description is minimally adequate. It lacks any mention of the return shape or behavioral expectations, but the schema covers invocation 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 parameters are already documented in the schema. The description adds no additional semantic meaning about the parameters or their expected values.

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 states a clear verb and resource: 'List counter segments'. It distinguishes the tool from segment mutation and retrieval siblings by the word 'List', though it does not explicitly name the alternative single-segment getter.

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 given about when to use this tool versus the many sibling segment tools. There is no mention of filtering, pagination, or a condition that would route an agent to mgmt_segment_get instead.

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

mgmt_segment_updateB

https://yandex.ru/dev/metrika/ru/management/ Update segment. Body: {"segment": {...}}

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyYesJSON request body. For POST/PUT use the structure from API docs (e.g. {"counter": {...}}).
prettyNoPretty-print response (1)
counterIdYesCounter ID
segmentIdYesSegment ID

TDQS

B3/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 disclosing behavior. It only says 'Update segment,' implying a mutation but offering no details on side effects, required permissions, idempotency, error handling, or the response format. The body hint is present but insufficient for a mutation 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 extremely concise, containing no fluff or redundant information. The URL and the core action are front-loaded, and the body hint is placed immediately after. It is efficient, though perhaps too sparse; but for conciseness, it earns a high score.

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?

For a mutation tool with no annotations, no output schema, and a free-form body parameter, this description is incomplete. It doesn't specify required fields inside the segment object, behavior on success/failure, or any constraints. An agent lacks critical information to reliably invoke the tool.

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 100% with descriptions for all parameters, so the baseline is 3. The description adds value by specifying the body structure as {'segment': {...}}, which is not in the schema and clarifies the expected JSON shape. This extra semantic detail justifies a 4.

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 states 'Update segment' with a clear verb and resource, distinguishing it from sibling operations like mgmt_segment_create, mgmt_segment_get, and mgmt_segment_delete. It also hints at the request body structure, which clarifies the operation's target. However, it doesn't elaborate on which segment properties are updatable, leaving some ambiguity.

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 given on when to use this tool versus alternatives. There is no mention of prerequisites (e.g., having an existing segment), no contrast with mgmt_segment_create for new segments, and no conditions for when not to use it. An agent must infer its role from the name and sibling list.

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

mgmt_social_networks_listB

https://yandex.ru/dev/metrika/ru/management/ List social networks for social goal type

ParametersJSON Schema
NameRequiredDescriptionDefault
prettyNoPretty-print response (1)

TDQS

B3.1/5.0
Behavior3/5

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

With no annotations, the description is the only source of behavioral information. 'List' conveys a non-mutating read operation, but it does not disclose authentication needs, response shape, scoping, or any edge behavior; the description is not contradictory but only minimally transparent.

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 tool-defining sentence is short and efficient, but the raw URL prefix 'https://yandex.ru/dev/metrika/ru/management/' does not earn its place as explanatory content. Acceptably compact, yet not polished.

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 simple read-only list call with one optional parameter, the description is mostly adequate, but it leaves 'social goal type' undefined and gives no guidance about how the result relates to goals or counters. No output schema makes the missing return/usage context more noticeable.

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?

The input schema has 100% description coverage for the single optional 'pretty' parameter, so the schema already documents parameter semantics. The description adds no further parameter detail; the 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?

The description uses a specific verb ('List') and resource ('social networks'), with a qualifier ('for social goal type') that distinguishes it from related tools like mgmt_messengers_list. The leading documentation URL is noise, but the core sentence clearly names the tool's object and action.

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 about when to use this list operation versus siblings like mgmt_goals_list, mgmt_messengers_list, or the stat_* tools. The phrase 'for social goal type' hints at context, but no explicit when/when-not or alternative routing is provided.

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

stat_bytimeB

Yandex Metrika Reports API. Docs: https://yandex.ru/dev/metrika/ru/stat/ Time series report — GET /stat/v1/data/bytime. Use for charts and trends.

ParametersJSON Schema
NameRequiredDescriptionDefault
idsYesCounter IDs, comma-separated (e.g. 44147844 or 44147844,2215573)
langNoResponse language
sortNoSort by dimensions/metrics comma-separated. Prefix with - for descending
date1NoPeriod start: YYYY-MM-DD, today, yesterday, or ndaysAgo (default: 6daysAgo)
date2NoPeriod end: YYYY-MM-DD, today, yesterday, or ndaysAgo (default: today)
groupNoTime grouping: day, week, month, quarter, year, hour, minute, auto, all, etc. (default: week)
limitNoPage size, max 100000 (default: 100)
formatNoResponse format: json (default) or csv
offsetNoFirst row index, starting from 1 (default: 1)
presetNoReport preset name. See https://yandex.ru/dev/metrika/ru/stat/presets.md
filtersNoSegmentation filter expression. See https://yandex.ru/dev/metrika/ru/stat/segmentation.md
metricsYesMetrics comma-separated, max 20. Use ym:s: prefix for visits or ym:pv: for hits. See https://yandex.ru/dev/metrika/ru/stat/attrandmetr/dim_all.md
accuracyNoSample size for report (sampling). See https://yandex.ru/dev/metrika/ru/stat/sampling.md
timezoneNoTimezone as ±hh:mm, e.g. +03:00 (plus sign as %2B in URL)
dimensionsNoDimensions (groupings) comma-separated, max 10. See https://yandex.ru/dev/metrika/ru/stat/attrandmetr/dim_all.md
annotation_groupsNoAnnotation groups comma-separated (when include_annotations=true)
include_undefinedNoInclude rows with undefined dimension values (first dimension only)
proposed_accuracyNoAllow API to auto-increase accuracy for small samples
include_annotationsNoInclude chart annotations in response
direct_client_loginsNoYandex Direct client logins comma-separated (Direct expenses reports)

TDQS

B3.4/5.0
Behavior2/5

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

There are no annotations, so the description alone must disclose behavior like auth requirements, rate limits, sampling defaults, or response characteristics beyond 'time series report.' It only identifies the endpoint and intended use, which is thin behavioral context for a 20-parameter API call.

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 very short, front-loads the time series nature and endpoint, and includes a documentation link. Every part is useful and nothing is redundant or padded.

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 schema covers parameter semantics 100%, but the tool is complex (20 params), has no output schema, and no annotations. The description does not cover auth, pagination, limitations, format nuances, or how this tool relates to sibling stat_* tools, leaving a significant contextual gap.

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?

The input schema has 100% description coverage for all 20 parameters, so the schema already carries the semantic load. The tool description adds no parameter-specific meaning, but with full schema coverage the baseline of 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?

The description identifies the exact endpoint (GET /stat/v1/data/bytime) and characterizes it as a time series report for charts and trends, so an agent can infer the core function. It does not explicitly contrast it with sibling report tools like stat_data or stat_drilldown, which keeps it from a 5.

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?

'Use for charts and trends' gives an explicit use case and tells an agent when this tool is appropriate. It does not name alternatives or state when not to use it, so it falls short of a 5.

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

stat_comparisonC

Yandex Metrika Reports API. Docs: https://yandex.ru/dev/metrika/ru/stat/ Segment comparison table — GET /stat/v1/data/comparison. Compare segments A and B with separate date ranges and filters.

ParametersJSON Schema
NameRequiredDescriptionDefault
idsYesCounter IDs, comma-separated (e.g. 44147844 or 44147844,2215573)
langNoResponse language
sortNoSort by dimensions/metrics comma-separated. Prefix with - for descending
date1NoPeriod start: YYYY-MM-DD, today, yesterday, or ndaysAgo (default: 6daysAgo)
date2NoPeriod end: YYYY-MM-DD, today, yesterday, or ndaysAgo (default: today)
limitNoPage size, max 100000 (default: 100)
formatNoResponse format: json (default) or csv
offsetNoFirst row index, starting from 1 (default: 1)
presetNoReport preset name. See https://yandex.ru/dev/metrika/ru/stat/presets.md
date1_aNoSegment A period start: YYYY-MM-DD, today, yesterday, ndaysAgo (default: 6daysAgo)
date1_bNoSegment B period start: YYYY-MM-DD, today, yesterday, ndaysAgo (default: 6daysAgo)
date2_aNoSegment A period end: YYYY-MM-DD, today, yesterday, ndaysAgo (default: today)
date2_bNoSegment B period end: YYYY-MM-DD, today, yesterday, ndaysAgo (default: today)
filtersNoSegmentation filter expression. See https://yandex.ru/dev/metrika/ru/stat/segmentation.md
metricsYesMetrics comma-separated, max 20. Use ym:s: prefix for visits or ym:pv: for hits. See https://yandex.ru/dev/metrika/ru/stat/attrandmetr/dim_all.md
accuracyNoSample size for report (sampling). See https://yandex.ru/dev/metrika/ru/stat/sampling.md
timezoneNoTimezone as ±hh:mm, e.g. +03:00 (plus sign as %2B in URL)
filters_aNoSegmentation filter for segment A
filters_bNoSegmentation filter for segment B
dimensionsNoDimensions (groupings) comma-separated, max 10. See https://yandex.ru/dev/metrika/ru/stat/attrandmetr/dim_all.md
include_undefinedNoInclude rows with undefined dimension values (first dimension only)
proposed_accuracyNoAllow API to auto-increase accuracy for small samples
direct_client_loginsNoYandex Direct client logins comma-separated (Direct expenses reports)

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations provided, the description must fully disclose behavioral traits. It mentions a GET request, implying read-only behavior, but does not state that explicitly, nor does it cover authentication, pagination, rate limits, or return format. The description only describes the endpoint and purpose, lacking essential behavioral context for a data retrieval 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 concise, with two sentences that quickly state the API, endpoint, and purpose. It front-loads the core function and includes a documentation link, avoiding unnecessary detail. It is efficient and well-structured, though it could be more specific about the tool's role among siblings.

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 tool has 23 parameters, only 2 marked required, and no output schema, the description is too sparse to guide an agent effectively. It does not mention the required ids and metrics parameters, nor does it explain response format, pagination, or any usage caveats. The documentation link helps but the description alone is insufficient for correct invocation.

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?

The schema covers all 23 parameters with individual descriptions, so the baseline is 3. The description adds a high-level summary that 'separate date ranges and filters' are involved, which maps to the segment-specific parameters, but it does not explain any parameter semantics beyond what the schema already provides. Thus a 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?

The description clearly states the tool performs a segment comparison, names the endpoint (GET /stat/v1/data/comparison), and specifies that it compares segments A and B with separate date ranges and filters. This conveys the core function effectively, though it does not explicitly differentiate from the sibling stat_comparison_drilldown, so it falls short of a 5.

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 the many sibling stat_* tools, nor does it mention alternatives or exclusions. It implies usage for segment comparison but does not state conditions, prerequisites, or when to choose another tool like stat_comparison_drilldown. This is a significant gap.

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

stat_comparison_drilldownB

Yandex Metrika Reports API. Docs: https://yandex.ru/dev/metrika/ru/stat/ Segment comparison drill-down — GET /stat/v1/data/comparison/drilldown. Tree report comparing segments A and B.

ParametersJSON Schema
NameRequiredDescriptionDefault
idsYesCounter IDs, comma-separated (e.g. 44147844 or 44147844,2215573)
langNoResponse language
sortNoSort by dimensions/metrics comma-separated. Prefix with - for descending
date1NoPeriod start: YYYY-MM-DD, today, yesterday, or ndaysAgo (default: 6daysAgo)
date2NoPeriod end: YYYY-MM-DD, today, yesterday, or ndaysAgo (default: today)
limitNoPage size, max 100000 (default: 100)
formatNoResponse format: json (default) or csv
offsetNoFirst row index, starting from 1 (default: 1)
presetNoReport preset name. See https://yandex.ru/dev/metrika/ru/stat/presets.md
date1_aNoSegment A period start: YYYY-MM-DD, today, yesterday, ndaysAgo (default: 6daysAgo)
date1_bNoSegment B period start: YYYY-MM-DD, today, yesterday, ndaysAgo (default: 6daysAgo)
date2_aNoSegment A period end: YYYY-MM-DD, today, yesterday, ndaysAgo (default: today)
date2_bNoSegment B period end: YYYY-MM-DD, today, yesterday, ndaysAgo (default: today)
filtersNoSegmentation filter expression. See https://yandex.ru/dev/metrika/ru/stat/segmentation.md
metricsYesMetrics comma-separated, max 20. Use ym:s: prefix for visits or ym:pv: for hits. See https://yandex.ru/dev/metrika/ru/stat/attrandmetr/dim_all.md
accuracyNoSample size for report (sampling). See https://yandex.ru/dev/metrika/ru/stat/sampling.md
timezoneNoTimezone as ±hh:mm, e.g. +03:00 (plus sign as %2B in URL)
filters_aNoSegmentation filter for segment A
filters_bNoSegmentation filter for segment B
parent_idNoParent row path for drill-down (JSON list of keys). Omit for root level
dimensionsNoDimensions (groupings) comma-separated, max 10. See https://yandex.ru/dev/metrika/ru/stat/attrandmetr/dim_all.md
include_undefinedNoInclude rows with undefined dimension values (first dimension only)
proposed_accuracyNoAllow API to auto-increase accuracy for small samples
direct_client_loginsNoYandex Direct client logins comma-separated (Direct expenses reports)
only_expandable_undefinedNoRemove non-expandable undefined values (requires include_undefined=true)

TDQS

B3.4/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 carry the full burden of behavioral disclosure. It mentions the HTTP method (GET) and 'tree report', which implies read-only and hierarchical structure, but does not disclose authentication requirements, rate limits, pagination behavior, response format details, error handling, or the effect of the drill-down parameters. Critical behavioral traits like sampling (accuracy parameter) and the meaning of 'undefined' values are absent.

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 extremely concise: two sentences, front-loaded with the API docs link and endpoint, followed by a one-line functional summary. Every word earns its place with no redundancy or fluff. It efficiently communicates the core purpose without unnecessary detail.

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 25 parameters and 2 required, the description provides minimal high-level context. It does not explain how the drill-down works, how segments A and B interact, how to interpret the 'tree report' output, or any typical use cases. Since there is no output schema, the description should give more guidance on expected results, but it remains terse. The external docs link is helpful but not sufficient for an agent to fully understand the tool's behavior.

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?

The schema covers 100% of parameters with individual descriptions, so the baseline is 3. The tool description adds no parameter-specific semantics beyond what the schema already provides; it only restates the purpose. It does not clarify relationships between segment-specific date/filter parameters or the drill-down mechanism, but the schema descriptions are sufficient for basic understanding.

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's purpose: a segment comparison drill-down report that compares segments A and B. It explicitly names the API endpoint (GET /stat/v1/data/comparison/drilldown) and describes the output as a 'tree report'. This distinguishes it from sibling tools like stat_comparison (non-drilldown comparison) and stat_drilldown (drilldown without comparison), 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 Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage through the name and phrasing ('comparing segments A and B', 'drill-down'), but does not explicitly state when to use this tool versus alternatives like stat_comparison or stat_drilldown. There are no exclusions or conditional guidance, leaving the agent to infer based on the name and sibling context.

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

stat_dataC

Yandex Metrika Reports API. Docs: https://yandex.ru/dev/metrika/ru/stat/ Table report — GET /stat/v1/data. Returns rows with dimensions and metrics.

ParametersJSON Schema
NameRequiredDescriptionDefault
idsYesCounter IDs, comma-separated (e.g. 44147844 or 44147844,2215573)
langNoResponse language
sortNoSort by dimensions/metrics comma-separated. Prefix with - for descending
date1NoPeriod start: YYYY-MM-DD, today, yesterday, or ndaysAgo (default: 6daysAgo)
date2NoPeriod end: YYYY-MM-DD, today, yesterday, or ndaysAgo (default: today)
limitNoPage size, max 100000 (default: 100)
formatNoResponse format: json (default) or csv
offsetNoFirst row index, starting from 1 (default: 1)
presetNoReport preset name. See https://yandex.ru/dev/metrika/ru/stat/presets.md
filtersNoSegmentation filter expression. See https://yandex.ru/dev/metrika/ru/stat/segmentation.md
metricsYesMetrics comma-separated, max 20. Use ym:s: prefix for visits or ym:pv: for hits. See https://yandex.ru/dev/metrika/ru/stat/attrandmetr/dim_all.md
accuracyNoSample size for report (sampling). See https://yandex.ru/dev/metrika/ru/stat/sampling.md
timezoneNoTimezone as ±hh:mm, e.g. +03:00 (plus sign as %2B in URL)
dimensionsNoDimensions (groupings) comma-separated, max 10. See https://yandex.ru/dev/metrika/ru/stat/attrandmetr/dim_all.md
include_undefinedNoInclude rows with undefined dimension values (first dimension only)
proposed_accuracyNoAllow API to auto-increase accuracy for small samples
direct_client_loginsNoYandex Direct client logins comma-separated (Direct expenses reports)

TDQS

C2.9/5.0
Behavior2/5

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

No annotations exist, so the description carries the full disclosure burden. It reveals the verb (GET) and output shape, but says nothing about pagination behavior, sampling (accuracy), response-size limits, or anything beyond the basic row return. For a mutation-free retrieval tool this is below the minimum viable bar.

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?

Two sentences, appropriately short, with the key facts front-loaded: API family, docs link, endpoint, report type, and return shape. Only minor waste is the category label 'Yandex Metrika Reports API' preceding the tool-specific payload.

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 is complex (17 parameters, no annotations, no output schema), so the description needs to contribute more than a two-line summary. It omits authentication context, pagination/sampling behavior, and any comparison with the five sibling stat_* reports. The schema covers parameters well, but the overall contextual picture is incomplete.

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% — all 17 parameters carry detailed descriptions (dates, limit defaults, ym:s:/ym:pv: prefixes, sort syntax, timezone encoding). With that coverage the baseline of 3 applies, and the description adds no additional parameter semantics of its own.

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 states the endpoint (GET /stat/v1/data), the report type ("Table report"), and the result shape (rows with dimensions and metrics), which implicitly tells the agent this is the flat tabular report rather than the bytime/drilldown/comparison/pivot variants. It loses the top score only because the differentiation from stat_* siblings is implicit rather than explicit.

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 explicit when-to-use or when-not-to-use guidance is given. The 'Table report' label implies this is the baseline flat report, but the description never names alternatives like stat_bytime, stat_drilldown, or stat_comparison or states what would route an agent to them instead.

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

stat_drilldownC

Yandex Metrika Reports API. Docs: https://yandex.ru/dev/metrika/ru/stat/ Drill-down tree report — GET /stat/v1/data/drilldown. One tree level per request; use parent_id for nested levels.

ParametersJSON Schema
NameRequiredDescriptionDefault
idsYesCounter IDs, comma-separated (e.g. 44147844 or 44147844,2215573)
langNoResponse language
sortNoSort by dimensions/metrics comma-separated. Prefix with - for descending
date1NoPeriod start: YYYY-MM-DD, today, yesterday, or ndaysAgo (default: 6daysAgo)
date2NoPeriod end: YYYY-MM-DD, today, yesterday, or ndaysAgo (default: today)
limitNoPage size, max 100000 (default: 100)
formatNoResponse format: json (default) or csv
offsetNoFirst row index, starting from 1 (default: 1)
presetNoReport preset name. See https://yandex.ru/dev/metrika/ru/stat/presets.md
filtersNoSegmentation filter expression. See https://yandex.ru/dev/metrika/ru/stat/segmentation.md
metricsYesMetrics comma-separated, max 20. Use ym:s: prefix for visits or ym:pv: for hits. See https://yandex.ru/dev/metrika/ru/stat/attrandmetr/dim_all.md
accuracyNoSample size for report (sampling). See https://yandex.ru/dev/metrika/ru/stat/sampling.md
timezoneNoTimezone as ±hh:mm, e.g. +03:00 (plus sign as %2B in URL)
parent_idNoParent row path for drill-down (JSON list of keys). Omit for root level
dimensionsNoDimensions (groupings) comma-separated, max 10. See https://yandex.ru/dev/metrika/ru/stat/attrandmetr/dim_all.md
include_undefinedNoInclude rows with undefined dimension values (first dimension only)
proposed_accuracyNoAllow API to auto-increase accuracy for small samples
direct_client_loginsNoYandex Direct client logins comma-separated (Direct expenses reports)
only_expandable_undefinedNoRemove non-expandable undefined values (requires include_undefined=true)

TDQS

C2.9/5.0
Behavior2/5

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

Without annotations, the description carries full burden. It discloses that this is a GET report and that it returns one tree level at a time, which is useful. It does not explain response structure, hierarchy semantics, authentication/scope needs, pagination, or limits, so significant behavioral context is left unstated.

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 compact three-part structure: API family, endpoint, and the critical drill-down behavior. It earns its length, though the API family sentence could be tighter.

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?

For a 19-parameter tool with no output schema and no annotations, this two-sentence description leaves too much unsaid about return format, drill-down graph semantics, and how the endpoint fits the report workflow. The docs link mitigates but does not make the description self-sufficient.

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 all parameters are described in the schema; baseline is 3. The description adds only the parent_id drill-down usage (one level per request) — helpful but not enough to raise the score.

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 identifies this as the drill-down tree report endpoint and names the exact REST path (GET /stat/v1/data/drilldown), which distinguishes it from flat/summary report siblings like stat_data or stat_pivot. It does not use a verb like 'retrieves' but the resource and operation are clear enough.

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?

It gives one usage signal — one tree level per request and parent_id for nested levels — but never says when to choose this over the sibling stat_comparison_drilldown or other stat_* report tools. No alternatives or exclusions are mentioned, so an agent would have to infer the right choice from the name.

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

stat_pivotB

Yandex Metrika Reports API. Docs: https://yandex.ru/dev/metrika/ru/stat/ Pivot table — GET /stat/v1/data/pivot. Rows by dimensions, columns by pivot_dimensions.

ParametersJSON Schema
NameRequiredDescriptionDefault
idsYesCounter IDs, comma-separated (e.g. 44147844 or 44147844,2215573)
langNoResponse language
sortNoSort by dimensions/metrics comma-separated. Prefix with - for descending
date1NoPeriod start: YYYY-MM-DD, today, yesterday, or ndaysAgo (default: 6daysAgo)
date2NoPeriod end: YYYY-MM-DD, today, yesterday, or ndaysAgo (default: today)
limitNoPage size, max 100000 (default: 100)
formatNoResponse format: json (default) or csv
offsetNoFirst row index, starting from 1 (default: 1)
presetNoReport preset name. See https://yandex.ru/dev/metrika/ru/stat/presets.md
filtersNoSegmentation filter expression. See https://yandex.ru/dev/metrika/ru/stat/segmentation.md
metricsYesMetrics comma-separated, max 20. Use ym:s: prefix for visits or ym:pv: for hits. See https://yandex.ru/dev/metrika/ru/stat/attrandmetr/dim_all.md
accuracyNoSample size for report (sampling). See https://yandex.ru/dev/metrika/ru/stat/sampling.md
timezoneNoTimezone as ±hh:mm, e.g. +03:00 (plus sign as %2B in URL)
dimensionsNoDimensions (groupings) comma-separated, max 10. See https://yandex.ru/dev/metrika/ru/stat/attrandmetr/dim_all.md
pivot_limitNoPivot columns per page, max 100 (default: 5)
pivot_offsetNoFirst pivot column index, starting from 1 (default: 1)
pivot_dimensionsNoPivot column dimensions comma-separated, max 10
include_undefinedNoInclude rows with undefined dimension values (first dimension only)
proposed_accuracyNoAllow API to auto-increase accuracy for small samples
direct_client_loginsNoYandex Direct client logins comma-separated (Direct expenses reports)

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 bears the full burden of behavioral disclosure. It mentions the HTTP method (GET) and the row/column structure, but does not disclose authentication needs, rate limits, sampling behavior, pagination behavior, or what the response looks like.

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 compact and free of fluff. The API context and docs link are useful, and the row/column explanation is front-loaded. It could be slightly more informative without becoming verbose, but it is well-structured for its length.

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?

For a 20-parameter API tool with no annotations and no output schema, the description is too thin. It does not explain when to use this tool, what the response contains, pagination behavior, or authentication requirements. The docs URL helps but is not a substitute for in-description guidance.

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 description coverage is 100%, so the baseline is 3. The description adds value beyond the schema by explaining that dimensions form rows and pivot_dimensions form columns, which is a relationship not captured in the individual parameter descriptions.

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 identifies the exact API endpoint (GET /stat/v1/data/pivot) and explains the core pivot-table mechanics: rows by dimensions, columns by pivot_dimensions. It is clear about the resource but does not use an explicit verb like 'get' or 'retrieve', and it does not explicitly distinguish itself from sibling stat_* tools beyond the word 'pivot'.

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 stat_pivot versus stat_data, stat_drilldown, stat_comparison, or other siblings. The description only states what the tool is, not when it is the right choice or when an alternative would be preferable.

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. 68 tool updatesv0.2.2
    • First observedmgmt_access_filter_create
    • First observedmgmt_access_filter_delete
    • First observedmgmt_access_filter_get
    • First observedmgmt_access_filter_update
    • First observedmgmt_access_filters_list
    • First observedmgmt_account_delete
    • First observedmgmt_accounts_list
    • First observedmgmt_accounts_update
    • First observedmgmt_chart_annotation_create
    • First observedmgmt_chart_annotation_delete
    • First observedmgmt_chart_annotation_get
    • First observedmgmt_chart_annotation_update
    • First observedmgmt_chart_annotations_list
    • First observedmgmt_clients_list
    • First observedmgmt_cloud_export_remove
    • First observedmgmt_cloud_exports_list
    • First observedmgmt_counter_create
    • First observedmgmt_counter_delete
    • First observedmgmt_counter_get
    • First observedmgmt_counter_label_set
    • First observedmgmt_counter_label_unset
    • First observedmgmt_counter_undelete
    • First observedmgmt_counter_update
    • First observedmgmt_counters_list
    • First observedmgmt_delegate_create
    • First observedmgmt_delegate_delete
    • First observedmgmt_delegates_list
    • First observedmgmt_filter_create
    • First observedmgmt_filter_delete
    • First observedmgmt_filter_get
    • First observedmgmt_filter_update
    • First observedmgmt_filters_list
    • First observedmgmt_goal_create
    • First observedmgmt_goal_delete
    • First observedmgmt_goal_get
    • First observedmgmt_goal_update
    • First observedmgmt_goals_list
    • First observedmgmt_grant_create
    • First observedmgmt_grant_delete
    • First observedmgmt_grant_get
    • First observedmgmt_grant_update
    • First observedmgmt_grants_list
    • First observedmgmt_label_create
    • First observedmgmt_label_delete
    • First observedmgmt_label_get
    • First observedmgmt_label_update
    • First observedmgmt_labels_list
    • First observedmgmt_messengers_list
    • First observedmgmt_my_grant_get
    • First observedmgmt_operation_create
    • First observedmgmt_operation_delete
    • First observedmgmt_operation_get
    • First observedmgmt_operation_update
    • First observedmgmt_operations_list
    • First observedmgmt_public_grant_create
    • First observedmgmt_public_grant_delete
    • First observedmgmt_segment_create
    • First observedmgmt_segment_delete
    • First observedmgmt_segment_get
    • First observedmgmt_segment_update
    • First observedmgmt_segments_list
    • First observedmgmt_social_networks_list
    • First observedstat_bytime
    • First observedstat_comparison
    • First observedstat_comparison_drilldown
    • First observedstat_data
    • First observedstat_drilldown
    • First observedstat_pivot

TDQS

C2.7/5.0

Scored across 68 tools

Disambiguation4/5

The tools are mostly distinguishable by resource/action naming (counters, goals, filters, segments, etc.), and the stat_* report variants target distinct report types. However, with 68 tools, an agent may hesitate between similar pairs such as stat_data vs stat_bytime or filter vs access_filter, so it is not a perfect 5.

Naming Consistency4/5

The mgmt_<resource>_<action> pattern is used consistently across the management tools, and stat_* prefixes all report endpoints. Minor deviations like mgmt_counter_undelete, mgmt_cloud_export_remove, mgmt_accounts_update, and stat_data (noun-only) keep it from being fully uniform.

Tool Count2/5

68 tools is far beyond the recommended 3-15 range and will make tool selection difficult for an agent, even though the underlying Yandex Metrika API is broad. This is too many for a coherent MCP surface.

Completeness4/5

The set covers the six main report variants and provides full CRUD-style coverage for most management resources, including counters, goals, filters, operations, grants, segments, and annotations. Minor gaps exist (e.g., no create/update for public grants or cloud exports, and no Logs API tools), but the main workflows are supported.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    A Model Context Protocol (MCP) server that provides access to Yandex Metrika analytics data through various tools and functions. This server allows AI assistants and applications to retrieve comprehensive analytics data from Yandex Metrika accounts.
    1
    -
  • A
    license
    B
    quality
    A
    maintenance
    Enables managing Yandex Direct PPC campaigns, ad groups, ads, and keywords, plus pulling performance statistics via the Yandex Direct API v5.
    44
    100 npm
    1
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables interaction with Yandex advertising and analytics APIs (Direct, Metrika, Audience, Webmaster, AdMetrica) through MCP tools, resources, and prompts for campaign management and data retrieval.
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    MCP server for Yandex Metrika API, enabling reporting, counter management, goals, filters, and other operations via natural language.
    12
    2
    MIT