Skip to main content
Glama
artgas1

yandex-direct-mcp

Допустимые значения

direct_fields
Read-onlyIdempotent

Lists allowed values for Yandex Direct API enums: report columns, FieldNames sets, campaign types. Use it to find valid options for report and campaign fields.

Instructions

Перечисляет допустимые значения перечисления: колонки отчётов, наборы FieldNames, типы кампаний. Нужен потому, что полные списки в описания инструментов не помещаются. ВАЖНО: список порождён из схемы, а схема отстаёт от живого API — он принимает и то, чего здесь нет. Значение вне списка не считайте недопустимым: право решать за API.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameNoимя перечисления, например CampaignFieldEnum
searchNoпоиск по имени перечисления

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.1.1

TDQS

A4.7/5.0
Behavior5/5

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

Beyond the annotations, the description discloses a critical behavioral caveat: the list is generated from a schema that lags behind the live API, so it may be incomplete, and a value absent from the list must not be treated as invalid. This materially affects agent behavior and is more than the annotations alone provide.

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

Conciseness5/5

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

Three short sentences deliver purpose, rationale, and an essential caveat without redundancy. The 'ВАЖНО' marker effectively highlights the one warning the agent must not miss.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple, read-only, idempotent lookup with two optional parameters fully documented in the schema, the description covers what the tool returns, why it exists, and the most important edge case. No output schema is provided, but the nature of the output ('list of valid values') is stated clearly.

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 showing what kinds of enumerations can be requested (report columns, FieldNames sets, campaign types), which helps the agent form a valid value for the 'name' parameter beyond the schema's example.

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 opens with a specific verb and resource: 'Перечисляет допустимые значения перечисления' (lists valid values of an enumeration), and names the concrete domains ('колонки отчётов, наборы FieldNames, типы кампаний'). This makes the helper's role clear and separates it from the sibling CRUD/dictionary tools, even without explicitly naming alternatives.

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

Usage Guidelines4/5

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

The phrase 'Нужен потому, что полные списки в описания инструментов не помещаются' gives a clear use case: consult this tool when a parameter accepts enumeration values that are too long to be documented inline. It does not name explicit alternatives or when-not-to-use conditions, so it stops 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.