Skip to content

Releases: A1-x-Tech/mcp-avito-ads

v1.1.0

Choose a tag to compare

@gistrec gistrec released this 18 Aug 22:01
v1.1.0
3848cc8

What's Changed

  • docs: обновить README Авито Рекламы by @ztemerbekov in #1
  • Add social preview assets by @ztemerbekov in #2
  • docs: add MCP capability catalog by @ztemerbekov in #3
  • feat: сервер больше не завершается без креденшелов — деградированный старт by @gistrec in #4

New Contributors

Full Changelog: v1.0.1...v1.1.0

v1.0.1 — verified against a live cabinet

Choose a tag to compare

@gistrec gistrec released this 12 Aug 00:26
v1.0.1
4082921

First release verified against a real Avito Ads cabinet: 13 of the 25 tools were exercised end to end, and the wire protocol — derived from the official SDK because the public docs are unreachable — needed no corrections.

A bare 403 now explains itself. The token is minted for exactly one account, so a mismatched AVITO_ADS_ACCOUNT_ID fails with 403 Forbidden and an empty body — which reads like a permissions problem and is not. Tool errors and npm run smoke now name the variable to check; a 401 points at the credentials instead. A 403 that carries its own message is left untouched, so the hint never talks over the API.

Documented what the live API does and no upstream document mentions: the sandbox allows exactly one account per key, its test campaigns are generated only at creation time and only when a valid contract already exists, get_balance answers 404 there, INN/OGRN are checksum-verified, and addresses and phones must match the Russian formats. Corrected the claim that create_sandbox_account can be called twice — it cannot.

Full details in CHANGELOG.md.

v1.0.0 — stable release

Choose a tag to compare

@gistrec gistrec released this 11 Aug 16:57
v1.0.0
07abef6

Declared stable. The tool surface, input schemas and environment variables of 0.1.x carry over unchanged — this release marks API stability, not new behaviour.

npx -y mcp-avito-ads@latest

Details in CHANGELOG.md.

v0.1.0 — Avito Ads MCP server

Choose a tag to compare

@gistrec gistrec released this 11 Aug 16:23
v0.1.0
1170f43

First release. MCP server for the Avito Ads API (Avito Reklama — the media / performance advertising cabinet, not the Avito seller/listings API), TypeScript over stdio.

npx -y mcp-avito-ads@latest

25 tools — account and balances, agency sub-accounts and transfers, ORD paperwork (advertisers, contracts), campaigns / groups / creatives, statistics, users, and a raw_request escape hatch.

What the API can and cannot do: campaigns, groups and creatives are read-only — they cannot be created, paused, deleted or retargeted through this API. The only writes on an ad object are change_group_budget and change_group_price.

Notable in this release:

  • The weekly point quota is a first-class result — Api-Point-Balance rides along with every tool result and with the error text, next to Retry-After (the quota refills Mondays 00:00 UTC).
  • Retries are asymmetric: 429 always repeats, 5xx and network errors repeat for reads only, so a funds transfer cannot move the money twice.
  • The account id comes from AVITO_ADS_ACCOUNT_ID only — a raw_request path naming another account is refused on the resolved, decoded path.
  • Pre-flight validation so a malformed call spends no points.

The wire protocol was derived from the official avito-ads-sdk-typescript (MIT); the SDK is not a dependency.

Full details in CHANGELOG.md.