Skip to content

v0.1.0 — Avito Ads MCP server

Choose a tag to compare

@gistrec gistrec released this 11 Aug 16:23
· 13 commits to main since this release
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.