Skip to main content
Glama
yandex-direct-mcp-plus

yandex-direct-mcp-plus

by Pavelsiba

Обновить комбинаторное объявление

update_responsive_ad
Idempotent

Update a responsive ad's titles, texts, and link in Yandex Direct by passing complete replacement sets; changed ads are resubmitted for moderation.

Instructions

Обновить комбинаторное объявление: заголовки, тексты, ссылка. Набор заголовков или текстов заменяется целиком — передайте полный, вместе с теми, что не меняются; текущие показывает list_ads. Изменённое объявление уходит на модерацию.

Input Schema

NameRequiredDescriptionDefault
hrefNoНовая ссылка на сайт
ad_idYesID обновляемого объявления
textsNoТексты, от 1 до 3, каждый до 81 символов. Заменяют прежние целиком: передайте полный набор
titlesNoЗаголовки, от 1 до 7, каждый до 56 символов. Заменяют прежние целиком: передайте полный набор

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv2.1.0

TDQS

A4.1/5.0
Behavior5/5

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

With annotations only covering readOnly/openWorld/idempotent, the description supplies the two non-obvious behaviors an agent cannot infer: the set of titles or texts is replaced entirely (a partial list silently destroys the omitted entries), and the modified ad is sent to moderation. The moderation side effect and the need to pre-fetch existing values are exactly the kind of consequence-guidance the annotations do not carry.

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?

Three dense sentences with no filler: purpose first, then the replacement constraint, then the moderation consequence. Only the list_ads reference is slightly tacked on mid-sentence rather than structured as a prerequisite step.

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

Completeness4/5

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

For a mutation tool with no output schema it covers the essentials an agent needs — replacement semantics, where to read current state, and the moderation consequence. It leaves open whether href is also mandatory for a valid update and whether moderation pauses the ad, which matters for a write 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%, and the schema itself already documents array limits, character limits and the full-replacement rule for titles and texts. The description reinforces the replacement semantics but adds no syntax, format or constraint information beyond what the schema provides; baseline 3 is appropriate.

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

Purpose4/5

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

Description opens with a specific verb and resource ('Обновить комбинаторное объявление') and enumerates the updatable fields (заголовки, тексты, ссылка), so the agent knows exactly what the tool mutates. Sibling differentiation is only implicit — create_responsive_ad and manage_ads are never named — but the update verb plus the field list makes the distinction usable.

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?

It gives an explicit recovery route for the critical prerequisite: read the current titles/texts with list_ads before calling, since the call replaces the whole set. It stops short of stating when-not to use it (e.g., creating a new ad via create_responsive_ad vs. editing via manage_ads), so no exclusion guidance.

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