Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, email [email protected] and we’ll put it right.

io.github.elchin92/avito-mcp

NPM · AVITO-MCP · SCANNED AUG 3

An AI agent that runs your Avito account — 148 tools for chats, listings, promotion, orders.

Available components

+46 this week 79 Trust /100
Trust breakdown (6 categories)

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score →

Supply Chain Security87
  • No malware found by supply-chain analysis.Pass
  • Only part of the dependency tree could be resolved (109 of 110), so this covers what we could see, not the whole tree.Partial
  • No install/post-install scripts declared.Pass
  • Only part of the dependency tree could be resolved (109 of 110), so this covers what we could see, not the whole tree. View diagnostics → Partial
Provenance & Transparency97
  • Source repository is publicly reachable at the declared URL. View diagnostics → Pass
  • Cryptographically verified build provenance (signed, bound to elchin92/avito-mcp). View diagnostics → Pass
  • Clear OSI-approved license (MIT).Pass
  • Actively maintained (last published 6 days ago).Pass
  • Disclosure check failed: no security disclosure policy was found in the source repository. See how to fix → Fail
Schema Quality & AI Usability77
  • 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
  • AI-judged instruction clarity (good).Pass
  • Context-footprint check failed: tool/resource definitions use about 29600 tokens (~176/item across 168 items; 144 tools + 24 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management22
  • Stability check failed: the tool surface changed between 1.1.1 and 1.3.3: 0 tool removals, 14 breaking changes, 0 additions. See how to fix → Fail
Tool Coverage100
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 100% of tool parameters carry a description.Pass
  • Structured output schemas are declared (2% of tools); any adoption earns full credit.Pass
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Install

Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.

npm · avito-mcp

# add to Claude Code
claude mcp add elchin92-avito-mcp -- npx -y avito-mcp
# add to Codex CLI
codex mcp add elchin92-avito-mcp -- npx -y avito-mcp
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "elchin92-avito-mcp": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "avito-mcp"
      ],
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add elchin92-avito-mcp --command npx --arg -y --arg avito-mcp
# ~/.hermes/config.yaml
mcp_servers:
  elchin92-avito-mcp:
    command: "npx"
    args: ["-y", "avito-mcp"]
// mcp.json
{
  "mcpServers": {
    "elchin92-avito-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "avito-mcp"
      ]
    }
  }
}
Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 2 Aug 26 +23
    • Provenance: pass → unverified security
    • Install scripts: pass → unverified security
    • Known CVEs: unverified → partial security
    • Malware scan: unverified → pass security
    • The attested source repository moved: elchin92/avito-mcp security
    • Maintenance: pass → unverified functional
    • License: pass → unverified functional
    • Dependency health: unverified → partial functional
    • Licence: MIT functional
  • 1 Aug 26 +51
    • Stability: unverified → fail security
    • Install scripts: unverified → pass security
    • Provenance: unverified → pass security
    • The attested source repository moved: elchin92/avito-mcp security
    • License: unverified → pass functional
    • Tool coverage: unverified → 100 functional
    • Schema quality: unverified → 100 functional
    • Maintenance: unverified → pass functional
    • MCP protocol: unverified → pass functional
    • Licence: MIT functional
  • 31 Jul 26 −35
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 30 Jul 26 −35
    • Provenance: pass → unverified security
    • Known CVEs: partial → unverified security
    • Install scripts: pass → unverified security
    • The attested source repository moved: elchin92/avito-mcp security
    • License: pass → unverified functional
    • Dependency health: partial → unverified functional
    • Maintenance: pass → unverified functional
    • Licence: MIT functional
  • 28 Jul 26 +42
    • Known CVEs: unverified → partial security
    • Provenance: unverified → pass security
    • Install scripts: unverified → pass security
    • The attested source repository moved: elchin92/avito-mcp security
    • Schema quality: unverified → good functional
    • Maintenance: unverified → pass functional
    • Dependency health: unverified → partial functional
    • License: unverified → pass functional
    • Licence: MIT functional
  • 27 Jul 26 33

    First indexed and scored.

Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 3 Aug 2026 · Analysed npm/[email protected]

Provenance verified

Ecosystem: npm · Outcome: verified

Reason: verified

Source repo:
elchin92/avito-mcp
Certificate issuer:
https://token.actions.githubusercontent.com
Certificate SAN:
https://github.com/elchin92/avito-mcp/.github/workflows/publish.yml@refs/heads/main
Rekor log index:
2257245327
Predicate type:
https://slsa.dev/provenance/v1
Subject digest:
sha512:e68a19b17be781f109c9e140402d8620c7798f7f41f9fcafb99a2a9efdca74cb49630e983a807828532124de2ec5cf18242a173a916decfc55887f5d1
Discovery method:
attestation_endpoint
Dependencies 109 packages

109 packages in the resolved dependency tree · 109 deprecated · 33 stale.

The dependency tree was only partially resolved, so these counts may be incomplete.

MCP tools — 144 exposed · ~28,978 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability.

Tool Tokens
autoload_create_or_update_profile ~400

Creates or updates (upsert) a v1 autoload profile with a single URL feed. Overwrites the existing profile settings on the Avito side; if no profile exists, it creates one. DEPRECATED: since 2024-12-23 the single upload_url has been replaced by the feeds_data array — use autoload_create_or_update_profile_v2 (supports multiple feeds). Prefer v2.

NameTypeReqDescription
agreementbooleanAcceptance of the Avito Autoload terms of use. Required only when first creating a profile; can be omitted on update.
autoload_enabledbooleanyesAutoload status: true — enabled, false — disabled. Required.
dryRunbooleanv0.7.0: if true — returns a preview of the HTTP request without calling the Avito API. Safe for inspecting exactly what would be done. Default: the value of AVITO_MCP_DRY_RUN_DEFAULT (usually false).
idempotencyKeystringv0.7.0: optional key for duplicate protection. A repeat call with the same key within AVITO_MCP_IDEMPOTENCY_TTL_SEC returns the cached result. The same key with different args returns a conflict erro…
report_emailstringyesEmail address to which Avito will send upload reports. Required.
schedulearrayyesSchedule of regular uploads (array of periods): each element = {rate: number of listings per period, weekdays: [0-6, where 0=Monday], time_slots: [0-23, where 0 = the 00:00-01:00 interval]}. Moscow t…
upload_urlstringyesURL of the XML/YML feed of listings for regular uploads. Must start with http or https. Required.

No output schema declared.

No examples provided.

autoload_create_or_update_profile_v2 ~425

Creates or updates (upsert) an autoload profile (v2, current version). Overwrites the existing profile settings on the Avito side; if no profile exists, it creates one. Supports multiple feeds via feeds_data (unlike v1 with a single upload_url) — prefer this method. The uploads themselves run on the schedule, or manually via autoload_upload.

NameTypeReqDescription
agreementbooleanAcceptance of the Avito Autoload terms of use. Required only when first creating a profile; can be omitted on update.
autoload_enabledbooleanyesAutoload status: true — enabled, false — disabled. Required.
dryRunbooleanv0.7.0: if true — returns a preview of the HTTP request without calling the Avito API. Safe for inspecting exactly what would be done. Default: the value of AVITO_MCP_DRY_RUN_DEFAULT (usually false).
feeds_dataarrayyesArray of feeds (at least one). Each element = {feed_name: feed name for the report, feed_url: URL of the file with listings, starts with http/https}. Required. See the FeedsData schema in swagger aut…
idempotencyKeystringv0.7.0: optional key for duplicate protection. A repeat call with the same key within AVITO_MCP_IDEMPOTENCY_TTL_SEC returns the cached result. The same key with different args returns a conflict erro…
report_emailstringyesEmail address to which Avito will send upload reports. Required.
schedulearrayyesSchedule of regular uploads (array of periods): each element = {rate: number of listings per period, weekdays: [0-6, where 0=Monday], time_slots: [0-23, where 0 = the 00:00-01:00 interval]}. Moscow t…

No output schema declared.

No examples provided.

autoload_get_ad_ids_by_avito_ids ~115

Returns the listing identifiers from the autoload file (ad_id) by their Avito identifiers (avito_id) — an avito_id → ad_id mapping. Read-only. Use it when you have Avito IDs and need to find the corresponding ID from the source feed. The reverse direction is autoload_get_avito_ids_by_ad_ids.

NameTypeReqDescription
querystringyesList of listing Avito IDs separated by "," or "|" (e.g. "12345,6789"). Required.

No output schema declared.

No examples provided.

autoload_get_autoload_items_info_v2 ~117

Returns the current state of listings in autoload by their IDs from the file: avito_id, avito_status, report section, errors/warnings (messages), charge information, and processing date. Read-only, not tied to a specific report — returns the current status. Use it for targeted checks of selected listings (1-100 per request).

NameTypeReqDescription
querystringyesListing identifiers from the file (the feed Id parameter): from 1 to 100, separated by "," or "|". Required.

No output schema declared.

No examples provided.

autoload_get_avito_ids_by_ad_ids ~113

Returns the Avito listing identifiers (avito_id) by their identifiers from the autoload file (ad_id) — an ad_id → avito_id mapping. Read-only. Use it when you have an ID from the feed and need to find the published listing on Avito. The reverse direction is autoload_get_ad_ids_by_avito_ids.

NameTypeReqDescription
querystringyesList of listing IDs from the file (the feed Id parameter), separated by "," or "|". Required.

No output schema declared.

No examples provided.

autoload_get_last_completed_report ~88

Returns summary statistics of the last completed upload (v2 format): per-section counters (section_stats), charges (listing_fees), events, and the feed_url link. Read-only, no parameters. DEPRECATED: since 2024-12-23 the single feed_url has been replaced by feeds_urls — use autoload_get_last_completed_report_v3. Prefer v3.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

autoload_get_last_completed_report_v3 ~113

Returns summary statistics of the last completed upload (v3, current format): per-section counters (section_stats), charges (listing_fees), events, and the feeds_urls array of links. Read-only, no parameters. Use it after an upload has been processed (status success/success_warning/error); for a specific report use autoload_get_report_by_id_v3. v3 differs from v2 by supporting multiple feeds (feeds_urls instead of a single feed_url) — prefer v3.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

autoload_get_profile ~84

Returns the autoload profile settings (v1): autoload_enabled, report_email, the schedule, and the deprecated upload_url field. Read-only, no parameters. DEPRECATED: since 2024-12-23 the upload_url field has been replaced by feeds_data — use autoload_get_profile_v2, which returns an array of feeds. Prefer v2.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

autoload_get_profile_v2 ~79

Returns the autoload profile settings (v2, current version): autoload_enabled, report_email, the schedule, and the feeds_data array of feeds (name + file link). Read-only, no parameters. Prefer this method over autoload_get_profile (v1): v2 returns feeds_data instead of the deprecated single upload_url.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

autoload_get_report_by_id_v2 ~122

Returns summary statistics of a specific upload by its report_id (v2 format): section_stats, listing_fees, events, status, and the feed_url link. Read-only. Get the report_id from autoload_get_reports_v2. DEPRECATED: since 2024-12-23 feed_url has been replaced by feeds_urls — use autoload_get_report_by_id_v3. Prefer v3.

NameTypeReqDescription
report_idintegeryesAutoload report identifier (ID); obtain it via autoload_get_reports_v2. Required.

No output schema declared.

No examples provided.

autoload_get_report_by_id_v3 ~134

Returns summary statistics of a specific upload by its report_id (v3, current format): section_stats, listing_fees, events, status, and the feeds_urls array of links. Read-only. Get the report_id from autoload_get_reports_v2; for a line-by-line breakdown of listings use autoload_get_report_items_by_id. v3 differs from v2 by supporting multiple feeds (feeds_urls instead of a single feed_url) — prefer v3.

NameTypeReqDescription
report_idintegeryesAutoload report identifier (ID); obtain it via autoload_get_reports_v2. Required.

No output schema declared.

No examples provided.

autoload_get_report_items_by_id ~262

Returns the processing result of each listing in a specific upload (by report_id): ad_id, avito_id, avito_status, report section, errors/warnings, and a link. Read-only, with pagination (the response contains meta with total/pages). Use it for a line-by-line breakdown of an upload; for an upload summary see autoload_get_report_by_id_v3. Get the list of available sections for the sections filter from the report's section_stats.

NameTypeReqDescription
pageintegerPage number (integer ≥ 1). Defaults to the first page.
per_pageintegerNumber of listings per page. Defaults to 50; the API allows up to 200, but it is capped at 100 here.
querystringFilter by listing ID: one or more IDs from the file or Avito IDs, separated by "," or "|".
report_idintegeryesAutoload report identifier (ID); obtain it via autoload_get_reports_v2. Required.
sectionsstringFilter by report sections: section slug identifiers separated by "," or "|" (get the slugs from the report's section_stats, e.g. via autoload_get_report_by_id_v3).

No output schema declared.

No examples provided.

autoload_get_report_items_fees_by_id ~215

Returns the placement charges for each listing in a specific upload (by report_id): ad_id, avito_id, charge type (single — from the wallet / package — from a package), and the amount or package ID. Read-only, with pagination (meta with total/pages). Use it to break down the cost of an upload; for listing processing/statuses use autoload_get_report_items_by_id.

NameTypeReqDescription
ad_idsstringFilter by listing IDs from the file (the feed Id parameter), separated by "," or "|".
avito_idsstringFilter by listing Avito IDs, separated by "," or "|".
pageintegerPage number (integer ≥ 1). Defaults to the first page.
per_pageintegerNumber of charges per page. Defaults to 100 (the API allows up to 200).
report_idintegeryesAutoload report identifier (ID); obtain it via autoload_get_reports_v2. Required.

No output schema declared.

No examples provided.

autoload_get_reports_v2 ~233

Returns a list of autoload reports (id, started_at, finished_at, status) with pagination and a filter by creation date. Sorted in descending order: the most recent report first. Read-only; the response contains a meta block with total/pages. Use it to find a report_id, then fetch details via autoload_get_report_by_id_v3 / autoload_get_report_items_by_id.

NameTypeReqDescription
date_fromstringFilter by report creation date "from" (inclusive), RFC3339 format, e.g. "2022-05-27T14:48:50.52Z".
date_tostringFilter by report creation date "to" (inclusive), RFC3339 format, e.g. "2022-05-27T14:48:50.52Z".
pageintegerPage number (integer ≥ 1). Defaults to the first page.
per_pageintegerNumber of reports per page. Defaults to 50; the API allows up to 200, but it is capped at 100 here.

No output schema declared.

No examples provided.

autoload_upload ~255

⚠️ Immediately LAUNCHES an unscheduled upload of listings from the feed at the URL specified in the profile settings (autoload_create_or_update_profile_v2). Side effect: publishes/updates/activates listings on Avito; the publication limits from the settings do NOT apply to this upload — all listings from the file will be processed. Limit: one upload per hour. Takes no business inputs — only the optional dryRun (preview without calling Avito) and idempotencyKey (duplicate protection). Returns only a launch confirmation; poll the result later via autoload_get_last_completed_report_v3.

NameTypeReqDescription
dryRunbooleanv0.7.0: if true — returns a preview of the HTTP request without calling the Avito API. Safe for inspecting exactly what would be done. Default: the value of AVITO_MCP_DRY_RUN_DEFAULT (usually false).
idempotencyKeystringv0.7.0: optional key for duplicate protection. A repeat call with the same key within AVITO_MCP_IDEMPOTENCY_TTL_SEC returns the cached result. The same key with different args returns a conflict erro…

No output schema declared.

No examples provided.

autoload_user_docs_node_fields ~126

Returns the fields (tags) of a specific category for filling out the feed: their types (input/select/checkbox), whether they are required, dependencies between fields, allowed values, and references to catalogs. Read-only. First find the category slug via autoload_user_docs_tree, then call this method. Use it when preparing the XML/Excel file to know which tags are required for a category.

NameTypeReqDescription
node_slugstringyesSlug (unique identifier) of the category from the autoload_user_docs_tree tree, e.g. "remont". Required.

No output schema declared.

No examples provided.

autoload_user_docs_tree ~81

Returns the full Avito category tree (an array of nodes with name, slug/id and nested children) for preparing an autoload feed. Read-only, no parameters. Use it to find the slug of the category you need, then pass it to autoload_user_docs_node_fields to get the fields. The reference is cacheable and changes rarely.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

calltracking_get_call_by_id ~114

Returns metadata for a single call-tracking call by its callId (read-only): call time, talk and wait durations, buyer/seller phone numbers, the protective (virtual) number, and the listing itemId. Use this when you know a specific callId; to query calls over a time range use calltracking_get_calls, and for the conversation audio recording use calltracking_get_record_by_call_id.

NameTypeReqDescription
callIdintegeryesCall identifier (callId) obtained from calltracking_get_calls.

No output schema declared.

No examples provided.

calltracking_get_calls ~235

Returns a list of call-tracking calls over a time range, filtered by call time (callTime), with pagination (read-only). Requires a time window in RFC3339 format. To fetch a single call by id use calltracking_get_call_by_id; for the conversation recording use calltracking_get_record_by_call_id.

NameTypeReqDescription
dateTimeFromstringyesStart of the search range by call time (callTime), an RFC3339-formatted string, e.g. "2021-01-02T00:00:00Z". Required.
dateTimeTostringEnd of the search range by callTime (RFC3339, e.g. "2021-03-02T23:59:59Z"). If omitted, defaults to dateTimeFrom + 1 month; the maximum is dateTimeFrom + 3 months.
limitintegeryesPage size — how many calls to return per request (the API allows at most 100).
offsetintegeryesPagination offset (the number of records to skip from the start, starting at 0).

No output schema declared.

No examples provided.

calltracking_get_record_by_call_id ~163

Downloads the call-tracking conversation audio recording for a specific callId (read-only). Returns a structured binary response {mimeType: "audio/mpeg" (or wav), sizeBytes, base64}; decode the base64 to save the file (it may be several MB). The recording becomes available with a delay of up to 30 minutes after the call and is retained for 3 months; if the recording is not ready yet, the API returns an error (HTTP 425, code 1005). For call metadata use calltracking_get_call_by_id, and for a list over a time range use calltracking_get_calls.

NameTypeReqDescription
callIdintegeryesCall identifier (callId) for which the conversation audio recording is requested.

No output schema declared.

No examples provided.

cpa_auction_get_user_bids ~159

Reads active and available CPA auction bids for the user's listings (read-only, does not change spending). For each listing returns the current bid pricePenny (in kopecks per action), its validity time expirationTime (RFC3339; absent — valid indefinitely), and the list of available bids availablePrices. Paginated via the fromItemID cursor. To change bids, use cpa_auction_save_item_bids. Limit 200 requests/min.

NameTypeReqDescription
batchSizeintegerPage size — number of listings in the response (1–200, default 200).
fromItemIDintegerPagination cursor: ID of the last listing from the previous page (default 0 — from the start).

No output schema declared.

No examples provided.

cpa_auction_save_item_bids ~307

Saves (overwrites) CPA auction bids for listings. WARNING: affects auction spending (money) — a higher bid means a higher display position. pricePenny is in kopecks per action; expirationTime sets the validity period (omitted or null — indefinite). Up to 200 listings per request, limit 200 requests/min. For current and available bids see cpa_auction_get_user_bids.

NameTypeReqDescription
dryRunbooleanv0.7.0: if true — returns a preview of the HTTP request without calling the Avito API. Safe for inspecting exactly what would be done. Default: the value of AVITO_MCP_DRY_RUN_DEFAULT (usually false).
idempotencyKeystringv0.7.0: optional key for duplicate protection. A repeat call with the same key within AVITO_MCP_IDEMPOTENCY_TTL_SEC returns the cached result. The same key with different args returns a conflict erro…
itemsarrayyesArray of bids (1–200). Each element: itemID (int, listing ID, required), pricePenny (int, bid in kopecks, required), expirationTime (string RFC3339, e.g. "2023-06-29T12:34:34+03:00"; null/absent — in…

No output schema declared.

No examples provided.

cpa_balance_info_v2 ~73

Returns the CPA wallet balance in kopecks: balance, debt, and the current month's advance (v2, deprecated). Read-only, spends no money. The request body is empty (`{}`). Deprecated — prefer cpa_balance_info_v3 (the current version). Limit: 1 request/min.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

cpa_balance_info_v3 ~70

Returns the current balance of the user's CPA wallet in kopecks (v3 — current). Read-only, spends no money. The request body is empty (`{}`). v3 differs from v2 in having an updated response structure — prefer v3. Limit: 1 request/min.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

cpa_chat_by_action_id ~96

Returns the CPA chat model by target-action identifier (actionId). Read-only, spends no money. Use when you already have the actionId of a specific chat (from cpa_chats_by_time_v2); not for iterating by time. Limit: 3 requests/min.

NameTypeReqDescription
actionIdintegeryesCPA target-action identifier (chat actionId), obtained from cpa_chats_by_time_v2.

No output schema declared.

No examples provided.

cpa_chats_by_time_v1 ~173

Returns a paginated list of target CPA chats created starting from the given moment (v1, deprecated). Read-only, spends no money. Deprecated — prefer cpa_chats_by_time_v2 (identical semantics, higher request limit: 40 vs 60/min for v1, but v2 is the current version).

NameTypeReqDescription
dateTimeFromstringyesMoment from which to search chats by the date field, in RFC3339 format, e.g. "2021-01-02T15:04:05Z".
limitintegeryesPage size (number of chats), no more than 100.
offsetintegeryesPage offset (default 0). For performance, prefer passing the maximum startTime/date of a chat from the previous page.

No output schema declared.

No examples provided.

cpa_chats_by_time_v2 ~181

Returns a paginated list of target CPA chats created starting from the given moment (by the date field) (v2 — current). Read-only, spends no money. Prefer this method over the deprecated cpa_chats_by_time_v1. The returned actionId values are then suitable for cpa_chat_by_action_id or filing a complaint. Limit: 40 requests/min.

NameTypeReqDescription
dateTimeFromstringyesMoment from which to search chats by the date field, in RFC3339 format, e.g. "2021-01-02T15:04:05Z".
limitintegeryesPage size (number of chats), no more than 100.
offsetintegeryesPage offset (default 0). For performance, prefer passing the maximum date of a chat from the previous page.

No output schema declared.

No examples provided.

cpa_create_complaint_by_action_id ~305

⚠️ Files an external complaint with Avito about a CPA target action (call or chat) by its actionId — to dispute a charge for an off-target action. Irreversible record: a complaint cannot be withdrawn, so confirmation is required by default. Requires the actionId from a preceding call (cpa_chats_by_time_v2 / cpa_get_calls_by_time_v2). Preferred over cpa_post_create_complaint, since it covers both calls and chats. Limit: 3 requests/min.

NameTypeReqDescription
actionIdintegeryesCPA target-action identifier (actionId of a call or chat, e.g. 123456789) the complaint is filed against.
dryRunbooleanv0.7.0: if true — returns a preview of the HTTP request without calling the Avito API. Safe for inspecting exactly what would be done. Default: the value of AVITO_MCP_DRY_RUN_DEFAULT (usually false).
idempotencyKeystringv0.7.0: optional key for duplicate protection. A repeat call with the same key within AVITO_MCP_IDEMPOTENCY_TTL_SEC returns the cached result. The same key with different args returns a conflict erro…
messagestringyesComplaint text attached to the action, e.g. "this was not a contact exchange in the chat".

No output schema declared.

No examples provided.

cpa_get_call ~105

Returns the recording (audio) of a CPA call by its identifier (v1, deprecated). Read-only, spends no money. Deprecated — prefer cpa_get_call_by_id_v2 (or calltracking get_record_by_call_id), which return the full call model together with the recording. Limit: 1 request/min.

NameTypeReqDescription
call_idintegeryesCPA call identifier (call_id), obtained from cpa_get_calls_by_time_v2 or from a chat/action.

No output schema declared.

No examples provided.

cpa_get_call_by_id_v2 ~102

Returns the full CPA call model by callId, including a link to the recording (v2). Read-only, spends no money. Use when the callId is already known (from cpa_get_calls_by_time_v2). The current replacement for the deprecated cpa_get_call (v1).

NameTypeReqDescription
callIdintegeryesCPA call identifier (callId, int64), obtained from cpa_get_calls_by_time_v2.

No output schema declared.

No examples provided.

cpa_get_calls_by_time_v2 ~169

Returns a paginated list of CPA calls created starting from the given moment (by startTime) (v2). Read-only, spends no money. Use to iterate over calls for a period; the returned callId/actionId values are then suitable for cpa_get_call_by_id_v2 or filing a complaint. Limit: 1 request/min.

NameTypeReqDescription
dateTimeFromstringyesMoment from which to search calls by startTime, in RFC3339 format, e.g. "2021-01-02T15:04:05Z".
limitintegeryesPage size (number of calls).
offsetintegerPage offset (default 0). For performance, prefer passing the maximum startTime of a call from the previous page.

No output schema declared.

No examples provided.

cpa_phones_info_from_chats ~131

Returns a paginated set of information on phone numbers extracted from target CPA chats starting from the given moment. Read-only, spends no money. Use to export customer contacts from correspondence over a period. Limit: 5 requests/min.

NameTypeReqDescription
dateTimeFromstringyesMoment from which the search begins, in RFC3339 format, e.g. "2021-01-02T15:04:05Z".
limitintegeryesPage size (number of records).
offsetintegeryesPage offset (default 0) for page-by-page iteration.

No output schema declared.

No examples provided.

cpa_post_create_complaint ~290

⚠️ Files an external complaint with Avito about a CPA call by its callId (action record) — e.g. when disputing a charge for an off-target call. Irreversible record: a complaint cannot be withdrawn, so confirmation is required by default. Requires the callId of a specific call from a preceding call (cpa_get_calls_by_time_v2). To file complaints about both calls and chats by a single actionId, use cpa_create_complaint_by_action_id. Limit: 1 request/min.

NameTypeReqDescription
callIdintegeryesCPA call identifier (callId, int64) the complaint is filed against.
dryRunbooleanv0.7.0: if true — returns a preview of the HTTP request without calling the Avito API. Safe for inspecting exactly what would be done. Default: the value of AVITO_MCP_DRY_RUN_DEFAULT (usually false).
idempotencyKeystringv0.7.0: optional key for duplicate protection. A repeat call with the same key within AVITO_MCP_IDEMPOTENCY_TTL_SEC returns the cached result. The same key with different args returns a conflict erro…
messagestringyesComplaint text — a description of the reason for disputing the target action.

No output schema declared.

No examples provided.

cpa_target_get_bids ~141

Returns detailed information about current and available target-action bids for ONE listing: the active price/budget, the minimum/maximum/recommended values (all in kopecks), the selected strategy (manual/auto), and a target-action forecast with the advantage over competitors. Read-only — does not change spending. Use it before save_manual_bid/save_auto_bid to find the allowed min/max/recommended amounts. For multiple listings at once, use cpa_target_get_promotions_by_item_ids (batch up to 200). Limit: 20 requests/min.

NameTypeReqDescription
itemIdintegeryesAvito listing ID for which bids and budgets are requested.

No output schema declared.

No examples provided.

cpa_target_get_promotions_by_item_ids ~141

Returns current target-action bids and budgets (in kopecks) for MULTIPLE listings at once (batch, up to 200 per request): for each listing — actionTypeID and the active manual or auto strategy with its price/limit/budget. Read-only — does not change spending. Use it to bulk-check current settings; for a single listing with full min/max/recommendations and a forecast, use cpa_target_get_bids. Limit: 400 requests/min.

NameTypeReqDescription
itemIDsarrayyesList of Avito listing IDs (1 to 200 items) for which current bids and budgets are requested.

No output schema declared.

No examples provided.

cpa_target_remove_promotion ~247

⚠️ STOPS target-action promotion for a listing and switches it to the base price from the price list. WARNING: removes the active manual or auto bid — the settings are reset, and to resume promotion you will have to set them again (save_manual_bid/save_auto_bid). Does not reduce spending to zero: the listing keeps being charged at the base target-action price. Returns a text message about the switch. Limit: 300 requests/min.

NameTypeReqDescription
dryRunbooleanv0.7.0: if true — returns a preview of the HTTP request without calling the Avito API. Safe for inspecting exactly what would be done. Default: the value of AVITO_MCP_DRY_RUN_DEFAULT (usually false).
idempotencyKeystringv0.7.0: optional key for duplicate protection. A repeat call with the same key within AVITO_MCP_IDEMPOTENCY_TTL_SEC returns the cached result. The same key with different args returns a conflict erro…
itemIDintegeryesAvito listing ID for which target-action promotion should be stopped.

No output schema declared.

No examples provided.

cpa_target_save_auto_bid ~395

⚠️ Enables the AUTOMATIC target-action bidding strategy: the system picks the price itself within the specified budget. WARNING: affects budget spending (money) — sets a spend of budgetPenny per budgetType period. Mutually exclusive with the manual bid: this call overwrites any previously set manual strategy for this listing. Use it when you want to delegate price management to Avito (rather than fixing the amount manually — use save_manual_bid for that). budgetPenny must fall within min/maxBudgetPenny from cpa_target_get_bids. Not available in the "Transport" category. Limit: 10 requests/min.

NameTypeReqDescription
actionTypeIDintegeryesTarget-action type: 1 — call, 5 — click package, 7 — messenger (sharing a contact in chat).
budgetPennyintegeryesBudget in KOPECKS for the budgetType period (e.g. 1400 = 14 rubles). Must be within min/maxBudgetPenny from cpa_target_get_bids.
budgetTypestringyesBudget period: "1d" — daily, "7d" — weekly, "30d" — monthly.
dryRunbooleanv0.7.0: if true — returns a preview of the HTTP request without calling the Avito API. Safe for inspecting exactly what would be done. Default: the value of AVITO_MCP_DRY_RUN_DEFAULT (usually false).
idempotencyKeystringv0.7.0: optional key for duplicate protection. A repeat call with the same key within AVITO_MCP_IDEMPOTENCY_TTL_SEC returns the cached result. The same key with different args returns a conflict erro…
itemIDintegeryesAvito listing ID for which the auto strategy is enabled.

No output schema declared.

No examples provided.

cpa_target_save_manual_bid ~404

⚠️ Sets a MANUAL (fixed) target-action bid for a listing (manual bid). WARNING: affects budget spending (money) — each target action is charged at bidPenny, and daily spending is capped by limitPenny. Mutually exclusive with the auto bid: this call overwrites any previously set auto strategy for this listing. Use it when you want to control the per-action price yourself (to delegate the choice to Avito, use save_auto_bid). bidPenny must be no lower than minBidPenny from cpa_target_get_bids. Limit: 20 requests/min.

NameTypeReqDescription
actionTypeIDintegeryesTarget-action type: 1 — call, 5 — click package, 7 — messenger (sharing a contact in chat).
bidPennyintegeryesPrice per single target action in KOPECKS (e.g. 1400 = 14 rubles). Must be no lower than minBidPenny from cpa_target_get_bids.
dryRunbooleanv0.7.0: if true — returns a preview of the HTTP request without calling the Avito API. Safe for inspecting exactly what would be done. Default: the value of AVITO_MCP_DRY_RUN_DEFAULT (usually false).
idempotencyKeystringv0.7.0: optional key for duplicate protection. A repeat call with the same key within AVITO_MCP_IDEMPOTENCY_TTL_SEC returns the cached result. The same key with different args returns a conflict erro…
itemIDintegeryesAvito listing ID for which the manual bid is set.
limitPennyintegerOptional daily spending limit in KOPECKS. If omitted, no limit is applied. For the allowed min/maxLimitPenny range, see cpa_target_get_bids.

No output schema declared.

No examples provided.

delivery_add_areas_sandbox ~245

[SANDBOX] Uploads the areas where courier delivery/pickup is available for the specified tariff. The address classifier is Russian Post postal codes (1 postal code = all addresses belonging to it). For delivery-service partners only. The body is an array of areas directly.

NameTypeReqDescription
areasarrayyesArray of areas: directionTag, providerAreaNumber, services (intake/delivery), utcTimezone, zipCodes, restrictions.
dryRunbooleanv0.7.0: if true — returns a preview of the HTTP request without calling the Avito API. Safe for inspecting exactly what would be done. Default: the value of AVITO_MCP_DRY_RUN_DEFAULT (usually false).
idempotencyKeystringv0.7.0: optional key for duplicate protection. A repeat call with the same key within AVITO_MCP_IDEMPOTENCY_TTL_SEC returns the cached result. The same key with different args returns a conflict erro…
tariff_idyesTariff identifier (int32, in path); legacy decimal strings remain accepted.

No output schema declared.

No examples provided.

delivery_add_sorting_center ~239

[SANDBOX] Creates a task to upload your own sorting centers (hubs) with initial validation; returns a taskID — check the status via delivery_get_task. After uploading sorting centers you must assign tags with a separate request (delivery_add_tags_to_sorting_center). For delivery-service partners only. The body is an array of sorting centers directly.

NameTypeReqDescription
centersarrayyesArray of sorting centers: deliveryProviderId, name, address, phones, itinerary, photos, directionTag, schedule, restriction.
dryRunbooleanv0.7.0: if true — returns a preview of the HTTP request without calling the Avito API. Safe for inspecting exactly what would be done. Default: the value of AVITO_MCP_DRY_RUN_DEFAULT (usually false).
idempotencyKeystringv0.7.0: optional key for duplicate protection. A repeat call with the same key within AVITO_MCP_IDEMPOTENCY_TTL_SEC returns the cached result. The same key with different args returns a conflict erro…

No output schema declared.

No examples provided.

delivery_add_tags_to_sorting_center ~255

[SANDBOX] Creates a task to assign direction tags to your own and/or third-party sorting centers within a tariff; returns a taskID — status via delivery_get_task. Within a single tariff each sorting center maps to exactly one tag, and re-binding is not possible. For delivery-service partners only. The body is an array directly.

NameTypeReqDescription
dryRunbooleanv0.7.0: if true — returns a preview of the HTTP request without calling the Avito API. Safe for inspecting exactly what would be done. Default: the value of AVITO_MCP_DRY_RUN_DEFAULT (usually false).
idempotencyKeystringv0.7.0: optional key for duplicate protection. A repeat call with the same key within AVITO_MCP_IDEMPOTENCY_TTL_SEC returns the cached result. The same key with different args returns a conflict erro…
taggedarrayyesArray of bindings: deliveryProviderId (sorting-center ID at the provider) + directionTag (direction tag).
tariff_idyesTariff identifier (int32, in path); legacy decimal strings remain accepted.

No output schema declared.

No examples provided.

delivery_add_tariff_sandbox_v2 ~362

Creates or replaces a tariff. [SANDBOX v2] Uploads a tariff so the delivery service controls direction availability, delivery cost and terms. Returns 200 on accept. Limits: body up to 400MB, up to 1 million directions. For delivery-service PARTNERS only. Prefer this v2 over any v1 tariff endpoint. Pair with delivery_update_terms (term zones) and delivery_add_terminals_sandbox (pickup points) to complete the tariff.

NameTypeReqDescription
deliveryProviderTariffIdstringyesTariff identifier on the delivery-service side.
directionsarrayyesDirections: directionTagFrom→directionTagTo link, tariff zone, minTerm/maxTerm (business days).
dryRunbooleanv0.7.0: if true — returns a preview of the HTTP request without calling the Avito API. Safe for inspecting exactly what would be done. Default: the value of AVITO_MCP_DRY_RUN_DEFAULT (usually false).
idempotencyKeystringv0.7.0: optional key for duplicate protection. A repeat call with the same key within AVITO_MCP_IDEMPOTENCY_TTL_SEC returns the cached result. The same key with different args returns a conflict erro…
namestringyesHuman-readable tariff name (for the UI).
tariffTypestringTariff type (optional).
tariffZonesarrayyesTariff zones: name, deliveryProviderTariffZoneId, items (per-service price calculation models).
termsZonesarrayyesDelivery-term zones: deliveryProviderZoneId, name, minTerm/maxTerm (business days).

No output schema declared.

No examples provided.

delivery_add_terminals_sandbox ~277

Replaces the tariff's terminal set. [SANDBOX] Uploads terminals (pickup points / parcel lockers) for one tariff. Auto-approves on accept (200); when a high share of the changes are critical the upload is queued for manual review instead. For delivery-service PARTNERS only. The request body is the terminals array directly (the tool wraps it for you).

NameTypeReqDescription
dryRunbooleanv0.7.0: if true — returns a preview of the HTTP request without calling the Avito API. Safe for inspecting exactly what would be done. Default: the value of AVITO_MCP_DRY_RUN_DEFAULT (usually false).
idempotencyKeystringv0.7.0: optional key for duplicate protection. A repeat call with the same key within AVITO_MCP_IDEMPOTENCY_TTL_SEC returns the cached result. The same key with different args returns a conflict erro…
tariff_idyesTariff identifier (int32, in path); legacy decimal strings remain accepted.
terminalsarrayyesArray of pickup points: deliveryProviderId, name, address, phones, services (intake/delivery), schedule, type (PVZ|POSTAMAT, default PVZ).

No output schema declared.

No examples provided.

delivery_cancel_announcement_3pl ~220

[3PL] Cancels a previously created shipment announcement in the delivery service. Irreversibly cancels an announcement created via delivery_create_announcement_3pl. The method is implemented on the delivery-service side — on a regular seller account it returns 403/404.

NameTypeReqDescription
announcementIDstringyesIdentifier of the announcement to cancel (required).
dryRunbooleanv0.7.0: if true — returns a preview of the HTTP request without calling the Avito API. Safe for inspecting exactly what would be done. Default: the value of AVITO_MCP_DRY_RUN_DEFAULT (usually false).
idempotencyKeystringv0.7.0: optional key for duplicate protection. A repeat call with the same key within AVITO_MCP_IDEMPOTENCY_TTL_SEC returns the cached result. The same key with different args returns a conflict erro…
reasonstringCancellation reason (optional).

No output schema declared.

No examples provided.

delivery_change_parcel_result ~250

[3PL] Sends Avito the outcome of a parcel change request previously sent via delivery_change_parcels: the delivery service reports whether the request was approved (approved) or rejected (declined). A production method on the delivery-service side — on a regular seller account it returns 403/404.

NameTypeReqDescription
dryRunbooleanv0.7.0: if true — returns a preview of the HTTP request without calling the Avito API. Safe for inspecting exactly what would be done. Default: the value of AVITO_MCP_DRY_RUN_DEFAULT (usually false).
idstringyesIdentifier of the parcel change request.
idempotencyKeystringv0.7.0: optional key for duplicate protection. A repeat call with the same key within AVITO_MCP_IDEMPOTENCY_TTL_SEC returns the cached result. The same key with different args returns a conflict erro…
optionsAdditional result options (optional).
reasonstringRejection reason; filled in when status=declined (optional).
statusstringyesRequest processing status.

No output schema declared.

No examples provided.

delivery_change_parcels ~272

[SANDBOX] Queues a BATCH of parcel-property change requests on Avito's initiative (changeReceiver / extendParcelStorage / prohibitParcelReceive / prohibitParcelAcceptance / changeReceiverTerminalOnConfirmed, per the type enum). Use it for bulk changes; for a single parcel use delivery_v1_change_parcel. The call only QUEUES the requests — the delivery service reports each outcome back via delivery_change_parcel_result. Implemented on the delivery-service side, for delivery-service PARTNERS only (a regular seller account gets 403/404).

NameTypeReqDescription
applicationsarrayyesArray of parcel change requests (one per parcel).
dryRunbooleanv0.7.0: if true — returns a preview of the HTTP request without calling the Avito API. Safe for inspecting exactly what would be done. Default: the value of AVITO_MCP_DRY_RUN_DEFAULT (usually false).
idempotencyKeystringv0.7.0: optional key for duplicate protection. A repeat call with the same key within AVITO_MCP_IDEMPOTENCY_TTL_SEC returns the cached result. The same key with different args returns a conflict erro…
typestringyesRequest type.

No output schema declared.

No examples provided.

delivery_check_confirmation_code ~93

[SANDBOX] Verifies the confirmation code that the buyer shows at the pickup point upon handover. Returns the verification status (success / other). For delivery-service partners only; a same-named endpoint exists in the orders domain — this one applies to delivery parcels.

NameTypeReqDescription
confirmCodestringyesConfirmation code presented by the buyer at the pickup point.
parcelIDstringyesParcel identifier.

No output schema declared.

No examples provided.

delivery_create_announcement_3pl ~326

[3PL] Creates an announcement of a planned shipment from one delivery service (sender) to another (receiver). The method is implemented on the delivery-service side — on a regular seller account it returns 403/404. Use it when you need to notify the receiving party about an upcoming parcel handover; unlike delivery_create_parcel this is a shipment announcement, not the creation of the parcel itself.

NameTypeReqDescription
announcementIDstringyesAnnouncement identifier (required).
announcementTypestringyesAnnouncement type.
barcodestringyesUnique announcement barcode, printed on the acceptance/handover act. Example: 000987654321.
datestringyesAnnouncement creation date and time in RFC 3339 format, UTC.
dryRunbooleanv0.7.0: if true — returns a preview of the HTTP request without calling the Avito API. Safe for inspecting exactly what would be done. Default: the value of AVITO_MCP_DRY_RUN_DEFAULT (usually false).
idempotencyKeystringv0.7.0: optional key for duplicate protection. A repeat call with the same key within AVITO_MCP_IDEMPOTENCY_TTL_SEC returns the cached result. The same key with different args returns a conflict erro…
packagesarrayyesList of cargo units (at least one).
receiverobjectyesReceiving party and sorting center.
senderobjectyesSending party and sorting center.

No output schema declared.

No examples provided.

delivery_create_parcel ~354

[3PL] Production creation of a parcel on the delivery-service side (CreateParcelRequest). The method is implemented by the delivery-service partner — on a regular seller account it returns 403/404. orderID, parcelID, items, sender, receiver, payment are required. Unlike delivery_create_sandbox_parcel_v2 ([SANDBOX v2]), this is production, the creation of a real parcel.

NameTypeReqDescription
barcodesarrayParcel barcodes (optional).
directOrderIDstringDirect order identifier at the delivery service (optional).
dryRunbooleanv0.7.0: if true — returns a preview of the HTTP request without calling the Avito API. Safe for inspecting exactly what would be done. Default: the value of AVITO_MCP_DRY_RUN_DEFAULT (usually false).
idempotencyKeystringv0.7.0: optional key for duplicate protection. A repeat call with the same key within AVITO_MCP_IDEMPOTENCY_TTL_SEC returns the cached result. The same key with different args returns a conflict erro…
itemsarrayyesParcel contents (items); at least one element.
optionsobjectReturn and parcel-tag options (optional).
orderIDstringyesAvito order identifier.
packageobjectPackaging dimensions and weight (optional).
parcelIDstringyesParcel identifier on the delivery-service side.
paymentobjectyesPayment parameters for items and delivery.
receiverobjectyesReceiver and delivery point.
senderobjectyesSender and delivery point.

No output schema declared.

No examples provided.

delivery_create_sandbox_parcel_v2 ~299

[SANDBOX v2] Creates a test parcel in the Sandbox (no real-world effect) and returns its parcelID — the entry point for the sandbox parcel lifecycle: feed that id into delivery_v1_get_parcel_info, delivery_v1_get_registered_parcel_id, delivery_v1_change_parcel and delivery_v1_cancel_parcel. Unlike delivery_create_parcel ([3PL] production creation), this has no consequences. For delivery-service PARTNERS testing only.

NameTypeReqDescription
dryRunbooleanv0.7.0: if true — returns a preview of the HTTP request without calling the Avito API. Safe for inspecting exactly what would be done. Default: the value of AVITO_MCP_DRY_RUN_DEFAULT (usually false).
idempotencyKeystringv0.7.0: optional key for duplicate protection. A repeat call with the same key within AVITO_MCP_IDEMPOTENCY_TTL_SEC returns the cached result. The same key with different args returns a conflict erro…
itemsarrayParcel contents (optional).
optionsobjectAdditional test-parcel options (optional).
receiverobjectReceiver delivery options (optional).
senderobjectSender and departure terminal (optional).
tagsarrayTest-parcel tags for Sandbox scenarios (optional).

No output schema declared.

No examples provided.