Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
Client_idYesClient ID from Avito Developer Portal
Profile_idYesYour numeric account ID (Profile ID)
Client_secretYesClient secret from Avito Developer Portal

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": true
}
logging
{}
prompts
{
  "listChanged": true
}
resources
{
  "subscribe": true,
  "listChanged": true
}
completions
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
meta_get_rate_limitsA

Returns the most recently observed X-RateLimit-Limit / X-RateLimit-Remaining / X-RateLimit-Reset values, grouped by logical API domain (core, messenger, items, etc.). Useful for diagnosing "why am I being throttled" — Avito enforces a per-minute limit.

meta_healthA

Universal health-check: package version, active capabilities, rate-limit status, idempotency ledger size, pending actions count, dryRun default. Does not call the Avito API. Safe to call as often as you like.

meta_auth_statusA

Reports only token METADATA: present/absent, expiresInSec, last refresh error. The token itself is NEVER returned — for that use the auth_* tools under AVITO_MCP_EXPOSE_AUTH_TOOLS=1 (hidden by default). By default it does not force a refresh — if probe=true, it will attempt getToken() (which may trigger a refresh).

meta_capabilitiesA

Returns a machine-readable description of the current configuration: mode, allow/deny lists, confirmation, dry-run, idempotency, local file access. Useful for an agent to understand which operations are fundamentally available before attempting to call tools.

meta_confirm_actionA

⚠️ Executes a previously deferred action by its confirmation_id. Use ONLY after explicit human confirmation — the flow is designed as a server-side two-step guard against accidental one-shot execution, not as cryptographic protection against an autonomous agent. Confirmation is single-use: the id is deleted after a successful call. AVITO_MCP_CONFIRMATION_SECRET is not set — soft-confirmation is in effect. Set the env variable to switch to hard-confirmation.

meta_cancel_actionA

Cancels a previously deferred action. After cancellation the confirmation_id is no longer valid.

meta_list_pending_actionsA

Lists the current pending actions awaiting confirmation. Args are not shown — only tool name, risk, a brief summary, and the creation and expiration times. Use it to diagnose "what did I just ask to confirm".

user_get_user_info_selfA

Returns the profile of the currently authorized account (get_user_info_self): numeric id (this is the Profile_id), email, name, verified phone numbers, and profile_url. Read-only, no parameters. Handy for finding out the Profile_id and checking which account the server is running under; for the balance use get_user_balance, for the list of operations use post_operations_history.

user_get_user_balanceA

Reads the account wallet balance (get_user_balance): the amount of real money (real) and the amount of bonus funds (bonus) in rubles. Read-only, a point-in-time snapshot. This is the Personal Account wallet, not the CPA balance (for CPA see the cpa domain). For the history of charges/top-ups use post_operations_history.

user_post_operations_historyA

Returns the list of account wallet operations for a period (post_operations_history): charges and top-ups in money and bonuses, with amountRub, amountBonus, amountTotal, operation type/name, service type (vas, cpa, tariff, etc.), itemId, and dates for each operation. Read-only. These are Personal Account wallet movements, not the CPA balance. Constraints: dateTimeFrom no more than a year ago, the range between from/to no more than one week; for the current balance use get_user_balance.

items_get_items_infoA

Returns a LIST of the authenticated user's listings (get_items_info) — id, status, category, link on the site. Read-only, changes nothing. Use it to find listing ids and get an overview; for details on a single listing, use items_get_item_info. Supports pagination (page + per_page) and filters (status, category, updatedAtFrom). Limit: 25 requests/min. Does not work with employees' listings — for those (under the main account or as an authenticated employee) it returns an empty list.

items_get_item_infoA

Returns detailed information about a SINGLE listing (get_item_info) — status, price, address, list of applied VAS services, etc. Read-only. Use it when the item_id is already known; for a list of listings, use items_get_items_info, and for view/contact statistics, use items_post_item_stats_shallow (this method does not return statistics). Limit: 500 requests/min.

items_post_calls_statsA

Returns aggregated CALL statistics for listings over a period (post_calls_stats) — total/new/answered/new answered, broken down by day. Read-only analytics, changes nothing and spends nothing. The period is set by dateFrom..dateTo (YYYY-MM-DD). Without itemIds — across all of the user's listings. For views/contacts, use items_post_item_stats_shallow.

items_post_vas_pricesA

Returns the cost of promotion services (VAS), available packages and stickers for the given listings (post_vas_prices). Read-only — does NOT purchase and does NOT spend money, only a price reference. Always call it BEFORE purchasing via items_apply_vas / items_put_item_vas to learn the current service slugs and their prices.

items_post_item_stats_shallowA

Returns counters (shallow statistics) for a list of listings over a period (post_item_stats_shallow / itemStatsShallow): unique views, contacts, favorites added. Read-only analytics. Use it for metrics on specific item_ids grouped by day/week/month; for extended profile analytics with filters and sorting, use items_post_item_analytics, and for calls, use items_post_calls_stats. Limits: no more than 200 listings per request, depth no more than 270 days back.

items_post_item_analyticsA

Returns EXTENDED statistical metrics for the profile/listings over a period (post_item_analytics, stats v2): views, contacts, presenceSpending, etc. with flexible grouping, filters and sorting. Read-only analytics. Choose it over items_post_item_stats_shallow when you need filters by category/employee, sorting by a metric, or presence-spending metrics. limit ≤ 1000.

items_post_account_spendingsA

Returns a REPORT of the profile's spendings over a period by service type (post_account_spendings) — how much was spent on vas/cpa/tariff, etc. Read-only, spends no money (only shows already incurred spending). Period dateFrom..dateTo (YYYY-MM-DD). Note: grouping here is a STRING "day"|"week"|"month" (NOT an object, unlike items_post_item_analytics). Data depth no more than 270 days, no more than 1 request per minute. Required: dateFrom, dateTo, spendingTypes, grouping.

items_update_priceA

Changes a listing's price (update_price). ⚠️ PUBLIC: the new price is immediately visible to buyers on the site. Requires item_id and price (integer, in rubles). Available only for the Goods, Spare Parts, Auto and Real Estate categories (except short-term rentals); other categories return an error. Spends no money, but this is a live change to a public listing — confirm with the user. Limit: 150 requests/min.

items_put_item_vasA

Applies ONE additional promotion service (VAS) to a listing (put_item_vas). ⚠️ MONEY: charges money from the balance; irreversible. The response contains service data and the charged amount. DEPRECATED: for one or more services, prefer items_apply_vas (v2); for a package of services, use items_put_item_vas_package_v2. First call items_post_vas_prices for the current slug and price. Confirm with the user. Note: an error does not guarantee the service was not purchased — check again in a few minutes.

items_put_item_vas_package_v2A

Applies a PACKAGE of promotion services (VAS) to a listing (put_item_vas_package_v2). ⚠️ MONEY: charges money from the balance; irreversible. The response contains the charged amount. Unlike items_put_item_vas (a single service by slug) and items_apply_vas (an arbitrary set of services/stickers), this method purchases a pre-assembled package by its package_id. DEPRECATED, the recommended replacement is items_apply_vas (v2). First check the price via items_post_vas_prices and confirm with the user. An error does not guarantee the package was not purchased — check again in a few minutes.

items_apply_vasA

Applies ONE OR MORE promotion services (slugs) and/or stickers to a published listing (apply_vas, v2 — the current method). ⚠️ MONEY: charges money; irreversible. The response contains the IDs of the purchase operations for status tracking. The preferred replacement for the deprecated items_put_item_vas (a single service) and items_put_item_vas_package_v2 (a package). Within one request each service is applied only once; stickers are available only with the "XL listing" service, no more than three. First check the available slugs/stickers and price via items_post_vas_prices, and confirm with the user.

messenger_get_chats_v2A

Returns a LIST of the account's chats (conversations with buyers) with a preview of the last message and an unread counter. Read-only — sends nothing and does not mark anything as read. Use it to find the needed chat_id before messenger_get_messages_v3, messenger_post_send_message or messenger_chat_read. To get the details of a single known chat, use messenger_get_chat_by_id_v2. Supports filters (items, types, unread) and offset-based pagination via limit/offset.

messenger_get_chat_by_id_v2A

Returns the details of a SINGLE chat by a known chat_id: participants, linked item, context, and the last message. Read-only. Use it when the chat_id is already known; to find a chat_id or get a list of conversations, use messenger_get_chats_v2. The conversation messages themselves are returned by messenger_get_messages_v3.

messenger_get_messages_v3A

Returns the MESSAGES of a specific chat (V3), sorted newest to oldest: text, images, voice, links, date, and author. Read-only — does not mark the chat as read (use messenger_chat_read for that). Requires chat_id (from messenger_get_chats_v2). Page through a long conversation via limit/offset. For download URLs of voice files in messages, use messenger_get_voice_files.

messenger_get_voice_filesA

Returns temporary download URLs for voice messages by their voice_id. Read-only. voice_id values come from voice messages obtained via messenger_get_messages_v3 (the voice/voice_id field). The links are temporary — download immediately.

messenger_get_subscriptionsA

Returns a LIST of the account's active webhook subscriptions: notification URLs and their versions/status. Read-only (despite the POST method — no body is required); creates and deletes nothing. Use it to check which URLs are subscribed before messenger_post_webhook_v3 (subscribe) or messenger_post_webhook_unsubscribe (unsubscribe).

messenger_post_send_messageA

Sends a TEXT message to a chat on behalf of the account. WARNING: the message is immediately and PUBLICLY visible to the other party (the buyer) and is not removed automatically (you can delete it via messenger_delete_message). Confirm the text with the user before calling. Requires chat_id (from messenger_get_chats_v2) and text up to 1000 characters. To send an image, use messenger_post_send_image_message.

messenger_post_send_image_messageA

Sends an IMAGE (by an already-uploaded image_id) to a chat on behalf of the account. WARNING: the image is immediately and PUBLICLY visible to the other party. Two-step process: first upload the file via messenger_upload_images and obtain an image_id, then call this tool. For text, use messenger_post_send_message. Confirm sending with the user.

messenger_delete_messageA

Deletes a SINGLE message from a chat by message_id. WARNING: IRREVERSIBLE — the message cannot be restored; the deletion is visible to the other party (a "deleted" marker remains in place of the message). You can usually delete only your own messages. Requires chat_id and message_id (from messenger_get_messages_v3). Always confirm with the user before calling.

messenger_chat_readA

Marks ALL unread messages of the specified chat as read and resets the unread counter. Changes state on the Avito side, but sends NOTHING to the other party and is not visible to them. The "unread" status cannot be restored. Idempotent: calling it again on an already-read chat is safe. Requires chat_id (from messenger_get_chats_v2).

messenger_post_blacklist_v2A

Adds one or more users to the account's BLACKLIST. WARNING: a blocked user will no longer be able to message you in the messenger; this changes the live account — confirm with the user. Accepts an array of users with a user_id and an optional context (item_id and reason). reason_id: 1=spam, 2=fraud, 3=insults and rudeness, 4=other reason.

messenger_post_webhook_v3A

SUBSCRIBES the specified URL to webhook notifications (V3) about new messenger events — new messages in chats. Changes account settings: Avito will start sending POST requests to this URL. Requires a PUBLIC HTTPS address reachable from the internet — localhost does not work. You can check current subscriptions via messenger_get_subscriptions and disable them via messenger_post_webhook_unsubscribe.

messenger_post_webhook_unsubscribeA

UNSUBSCRIBES the specified URL from messenger webhook notifications — Avito will stop sending events to this address. Changes account settings; to resume notifications you will have to subscribe again via messenger_post_webhook_v3. Specify exactly the URL that was subscribed (see the list in messenger_get_subscriptions).

autoload_get_profileA

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.

autoload_create_or_update_profileA

Creates or updates (upsert) a v1 autoload profile with a single URL feed. Changes 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.

autoload_uploadA

⚠️ 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. No parameters. Returns only a launch confirmation; check the result later via autoload_get_last_completed_report_v3.

autoload_user_docs_treeA

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.

autoload_user_docs_node_fieldsA

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.

autoload_get_ad_ids_by_avito_idsA

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.

autoload_get_avito_ids_by_ad_idsA

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.

autoload_get_profile_v2A

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.

autoload_create_or_update_profile_v2A

Creates or updates (upsert) an autoload profile (v2, current version). Changes 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.

autoload_get_reports_v2A

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.

autoload_get_autoload_items_info_v2A

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).

autoload_get_last_completed_reportA

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.

autoload_get_report_by_id_v2A

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.

autoload_get_report_items_by_idA

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.

autoload_get_report_items_fees_by_idA

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.

autoload_get_last_completed_report_v3A

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.

autoload_get_report_by_id_v3A

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.

orders_get_ordersA

Returns a list of delivery orders (get_orders) with filters by ID, status, and creation date. Read-only, changes nothing. Use it as a starting point: take the available actions from the response (availableActions: confirm/reject/perform/receive/setMarkings/setTrackNumber/setCNCDetails, etc.) for subsequent write operations. Available only to B2C sellers. The response includes a hasMore flag for pagination.

orders_get_courier_delivery_rangeA

Returns the available time slots for a courier to pick up the item (get_courier_delivery_range), for seller-courier delivery (RDBS/Courier). Read-only. Call it BEFORE orders_set_courier_delivery_range — a specific slot is chosen from the response (dateOptions with intervals and intervalType). Do not confuse it with the set version: this one only reads the available intervals, it does not book them.

orders_download_labelA

Downloads the generated PDF file with labels by taskID (download_label). Read-only, changes nothing. Call it AFTER orders_generate_labels or orders_generate_labels_extended, once the generation task is complete — the taskID comes from their response. Returns a structured binary response {mimeType: "application/pdf", sizeBytes, base64}; decode the base64 to save or print the file. If the task is not ready yet or the taskID is wrong, a 404 is returned.

orders_markingsA

⚠️ Submits "Chestny Znak" marking codes (DataMatrix) for the items in an order (markings). Write operation: stores the codes on the Avito side; required when the order has a setMarkings action (see availableActions in orders_get_orders). Maximum 50 marking records per request; the response contains an array of per-item results (success/error). Do not confuse it with status transitions (orders_apply_transition) — this method only attaches codes, it does not change the order status.

orders_accept_return_orderA

⚠️ Confirms the buyer's return of an item and selects the Russian Post office the return parcel will be sent to (accept_return_order). Write/public operation for courier delivery (Courier): the confirmation is visible to the buyer and irreversibly starts the return process. Call it when the order has an available acceptReturnOrder action. The response contains a success flag.

orders_apply_transitionA

⚠️ Applies an order status transition (apply_transition), such as confirmation or cancellation. WARNING: the new status is visible to the buyer and affects the deal; the transition is irreversible. The allowed transitions depend on the current status — see the list of available actions in availableActions from orders_get_orders. The response contains a success flag.

orders_check_confirmation_codeA

Verifies the confirmation code for handing over an order at a pickup point (check_confirmation_code): the buyer states the code from the app and the method validates it. Effectively a read check, it does not change the order. The response contains status: success (code valid), fail (invalid), expired (expired), or attempts (attempts exhausted). Do not confuse it with delivery_check_confirmation_code from the delivery domain — this method belongs to order management.

orders_cnc_set_detailsA

⚠️ Prepares a click-and-collect order and sends the details to the buyer (cnc_set_details, CNC = click-and-collect). Write operation: the seller sets the pickup address, the booking period, and a comment the buyer will see. Call it when the order has an available setCNCDetails action. After handover, confirmation is done via orders_apply_transition (receive) with the buyer's code.

orders_set_courier_delivery_rangeA

⚠️ Selects (books) a specific time slot for a courier to pick up the item (set_courier_delivery_range), for seller-courier delivery. A write operation, unlike the read method orders_get_courier_delivery_range, which only shows the available slots — call it first and take the interval and intervalType from the response. Can be called again to change the time while the courier has not yet picked up the parcel. The response contains a success flag.

orders_set_tracking_numberA

⚠️ Submits the parcel tracking number for delivery by the seller's partners (set_tracking_number, DBS). Write/public operation: the tracking number is visible to the buyer for tracking. Call it when the order has an available setTrackNumber action (or fixTrackNumber to correct it). The response contains a success flag; on error, code: incorrect_number (invalid number) or already_set (the number is already attached to another order).

orders_generate_labelsA

Creates a task to generate PDF labels for orders (generate_labels, up to 100 orders at a time). Available only for pickup-point orders. Returns a taskID; wait for it to be ready and download the file via orders_download_label. For large batches (up to 1000 orders) use orders_generate_labels_extended — it has a higher limit but a strict rate limit (1 request/min).

orders_generate_labels_extendedA

Creates a task to generate PDF labels for a large batch of orders (generate_labels_extended, up to 1000 orders at a time). Available only for pickup-point orders. Difference from orders_generate_labels: a higher order limit (1000 vs 100), but a strict rate limit — 1 request per minute. Returns a taskID; wait for it to be ready and download the file via orders_download_label.

delivery_create_announcement_3plA

[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.

delivery_cancel_announcement_3plA

[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.

delivery_create_parcelA

[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.

delivery_sandbox_create_announcementA

[SANDBOX] Creates an announcement of a planned shipment to Avito in the test environment; after creation the announcement is routed to the delivery service specified in receiver. For delivery-service partners only. Unlike delivery_create_announcement_3pl (production /createAnnouncement), this is a sandbox, with no consequences.

delivery_sandbox_track_announcementA

[SANDBOX] Accepts a tracking event for an announcement from the delivery service in the test environment. Use it to simulate the progress of an announcement (acceptance, delivery, cancellation). For delivery-service partners only.

delivery_custom_area_scheduleA

[SANDBOX] Sets the working schedule of a delivery zone for a specific day that differs from the regular schedule (for example, holidays/weekends). Re-uploading overwrites the previous schedule for those dates. For delivery-service partners only. The body is an array of schedules directly (no wrapper).

delivery_sandbox_cancel_parcelA

[SANDBOX] Cancels a test parcel on behalf of the receiver. The method is implemented on the delivery-service side — for delivery-service partners only. Unlike delivery_v1_cancel_parcel ([SANDBOX v1] with an options field), this is the base contract with an actor field.

delivery_check_confirmation_codeA

[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.

delivery_set_order_propertiesB

[SANDBOX] Sends parcel delivery parameters to Avito (for example, the final delivery cost). On a repeated submission the data is overwritten — it is important to send current values. For delivery-service partners only.

delivery_set_order_real_addressA

[SANDBOX] Sends Avito the actual pickup point for parcel acceptance/return — needed for agent and customer returns. For delivery-service partners only.

delivery_trackingC

[SANDBOX] Sends Avito parcel tracking information (a delivery status change) on behalf of the delivery service. Requires compliance with the retry policy. For delivery-service partners only. Despite the "event" wording in the title, the method records an event — it is a write, not a status read.

delivery_prohibit_order_acceptanceA

[SANDBOX] Prohibits accepting a parcel from the sender on the delivery-service side — the parcel will not be taken into processing. The method is implemented on the delivery-service side, for delivery-service partners only. Used in the parcel cancellation flow.

delivery_get_sorting_centerA

[SANDBOX] Returns the sorting centers (hubs) for the specified delivery services. For delivery-service partners only. Delivery-service codes: pochta (Russian Post), exmail, bb (Boxberry), pp (PickPoint), dpd, and others.

delivery_add_sorting_centerA

[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.

delivery_add_areas_sandboxA

[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.

delivery_add_tags_to_sorting_centerA

[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.

delivery_add_terminals_sandboxA

[SANDBOX] Uploads terminals (pickup points/parcel lockers) for a tariff. The system auto-approves changes: with a high percentage of critical changes the upload is sent for manual review. For delivery-service partners only. The body is an array of terminals directly.

delivery_update_termsA

[SANDBOX] Creates a task to update the delivery-term zones in a tariff; returns a taskID — status via delivery_get_task. Important: the list of new terms must fully match the tariff's deliveryProviderZoneId values. For delivery-service partners only. The body is an array of zones directly.

delivery_add_tariff_sandbox_v2A

[SANDBOX v2] Uploads a new tariff: lets the delivery service control direction availability, delivery cost, and delivery terms. Limits: body up to 400MB, up to 1 million directions. For delivery-service partners only.

delivery_get_taskA

[SANDBOX] Returns the status of an asynchronous task by the taskID obtained from upload operations (sorting centers, tags, areas, terms, tariff). Statuses: processing | success | . Processing usually takes 5–20 minutes. For delivery-service partners only.

delivery_v1_cancel_announcementA

[SANDBOX v1] Starts the process of cancelling a test announcement; on success the response has a success status. Available only in the Sandbox, for delivery-service partners. Unlike delivery_cancel_announcement_3pl (production /cancelAnnouncement), this is the test v1 contract with a required options field.

delivery_v1_cancel_parcelA

[SANDBOX v1] Cancels a test parcel: initiates an acceptance prohibition at the delivery service and, if it took effect, cancels the parcel. Only parcels created via delivery_create_sandbox_parcel_v2 can be cancelled. Available only in the Sandbox. Unlike delivery_sandbox_cancel_parcel (actor field), this is the v1 contract with an options field.

delivery_v1_change_parcelA

[SANDBOX v1] Creates a request to change the data of a single test parcel (for example, the receiver's full name/phone). Available only in the Sandbox. Request status — via delivery_v1_get_change_parcel_info. Unlike delivery_change_parcels (bulk processing), it changes a single parcel.

delivery_v1_create_announcementA

[SANDBOX v1] Starts the process of creating a test announcement; on success the response has a success status. Available only in the Sandbox, for delivery-service partners. Unlike delivery_sandbox_create_announcement, this is the v1 contract with a required options field.

delivery_v1_get_announcement_eventA

[SANDBOX v1] Returns the last registered event for a test announcement — makes it easier to debug announcement-tracking integration. Available only in the Sandbox, for delivery-service partners.

delivery_v1_get_change_parcel_infoA

[SANDBOX v1] Returns information about a test-parcel change request by its applicationID (the request is created via delivery_v1_change_parcel). Available only in the Sandbox, for delivery-service partners.

delivery_v1_get_parcel_infoA

[SANDBOX v1] Returns information about a test parcel by parcelID. Available only in the Sandbox; works only with parcels created via delivery_create_sandbox_parcel_v2.

delivery_v1_get_registered_parcel_idA

[SANDBOX v1] Returns the parcelID of a registered test parcel by its orderID. Works only with parcels created via delivery_create_sandbox_parcel_v2. Available only in the Sandbox.

delivery_create_sandbox_parcel_v2A

[SANDBOX v2] Starts the process of creating a test parcel in the Sandbox. The created parcel is then used by other v1 methods (getParcelInfo, getRegisteredParcelID, changeParcel, cancelParcel). Unlike delivery_create_parcel ([3PL], production creation), this is a test environment with no consequences.

delivery_change_parcel_resultA

[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.

delivery_change_parcelsA

[SANDBOX] Sends the delivery service a batch of requests to update parcel properties on Avito's initiative (a bulk operation). The delivery service returns the result for each request via delivery_change_parcel_result. The method is implemented on the delivery-service side, for delivery-service partners only.

promotion_get_bbip_forecasts_by_items_v1A

Returns the forecast effect of BBIP promotion (listing promotion bid/budget): expected increase in views (min/max) and total cost for the period. READ-ONLY: spends NO money; use BEFORE promotion_create_bbip_order_for_items_v1 to estimate the return. For each listing pass {itemId, duration, oldPrice, price} — the same values as for create; take them from promotion_get_bbip_suggests_by_items_v1 (budgets[].{oldPrice,price} — kopecks/day, duration.recommended — days). Returns items[].{min,max,totalPrice} (kopecks) and an overall totalPrice.

promotion_get_bbip_suggests_by_items_v1A

Returns recommended BBIP promotion bid/budget options for the listings. READ-ONLY: spends NO money. This is the first step of the BBIP flow: from the response take items[].budgets[].{oldPrice,price} (kopecks/day, isRecommended flags the recommended one) and items[].duration.{from,to,recommended} (days), then pass them to promotion_get_bbip_forecasts_by_items_v1 (forecast) and promotion_create_bbip_order_for_items_v1 (paid purchase).

promotion_create_bbip_order_for_items_v1A

⚠️ PAID ACTION (money): creates a BBIP order to enable promotion for listings and CHARGES the budget from the account balance. The order is created only if there are no errors across all listings; if funds are insufficient — 402. FIRST estimate the cost and return for free: promotion_get_bbip_suggests_by_items_v1 (budget options) → promotion_get_bbip_forecasts_by_items_v1 (forecast). Then for each listing pass an option from suggests as {itemId, duration, oldPrice, price} (oldPrice/price — kopecks/day, duration — days; full budget = price × duration). Returns orderId (UUID) — check its status via promotion_get_order_status_v1.

promotion_get_dict_of_services_v1A

Returns a dictionary of all Avito promotion service types: for each service — slug (type identifier), name and isDeprecated (whether it is deprecated). READ-ONLY: spends NO money and requires no parameters. Use it as a reference to resolve slugs in the responses of other promotion methods.

promotion_get_services_by_items_v1A

Returns active promotion services for the specified listings: for each listing, a list of services with slug, name and startDate/endDate dates. READ-ONLY: spends NO money. Use it to find out which promotion is already enabled and until what date it is active (not to be confused with suggests, which propose new budget options).

promotion_list_orders_by_user_v1A

Returns a paginated list of the current user's promotion orders: id (UUID), createdAt and status of each order. READ-ONLY: spends NO money. Use it for order history/overview; the detailed status of a specific order is available via promotion_get_order_status_v1 by its orderId.

promotion_get_order_status_v1A

Returns the status of a BBIP order by its orderId: the order's overall status (initialized/waiting/in_process/processed), totalPrice (kopecks) and a per-item status for each listing (slug, price, errorReason). READ-ONLY: spends NO money. Call it AFTER promotion_create_bbip_order_for_items_v1 to track the order's execution.

Prompts

Interactive templates invoked by user choice

NameDescription
avito_daily_overviewReady-made agent prompt: check the balance, active listings and spendings for a period. All calls are read-only — safe to run on a production account without confirmations. Готовый промпт для агента: проверить баланс, активные объявления и расходы за период. Все вызовы read-only — безопасно запускать на боевом аккаунте без подтверждений.
avito_check_unread_chatsFind unread chats and show the latest messages. Read-only — it does not send, only reads. The decision to mark as read or reply is left to the human. Найти непрочитанные чаты и показать последние сообщения. Read-only — не отправляет, только читает. Решение о пометке прочитанным или ответе оставляется человеку.
avito_safety_reportCompose an answer to the question "what can I do with this server right now". Uses MCP resources (state/config + manifest), does not hit the Avito API. Сформировать ответ на вопрос «что я могу сейчас сделать с этим сервером». Использует MCP-resources (state/config + manifest), не дёргает Avito API.
avito_explain_toolGive a detailed description of a single tool by name. Uses the manifest + swagger from the corresponding domain. Дать развёрнутое описание одного tool по имени. Использует manifest + swagger из соответствующего домена.
avito_promote_itemSafely prepare to promote a listing: check the balance, review suggests, look up prices. Does NOT buy VAS — leaves the final decision to the human. Безопасно подготовить продвижение объявления: проверить баланс, посмотреть suggests, узнать цены. НЕ покупает VAS — оставляет финальное решение человеку.

Resources

Contextual data attached and managed by the client

NameDescription
safety-docsMarkdown documentation for AVITO_MCP_MODE, AVITO_MCP_CONFIRMATION_MODE, AVITO_MCP_CONFIRMATION_SECRET and the upload guard. The same file as docs/safety.md.
tools-manifestJSON catalogue of every registered MCP tool with its risk/domain/annotations. The same file as dist/manifest.json — generated via npm run generate:manifest.
config-snapshotSnapshot of the effective config (mode, allow/deny, confirmation, upload), without secrets. Use it to quickly understand which mode the server is running in.
rate-limitsCurrent X-RateLimit-Limit / Remaining / Reset per logical Avito API domain. Empty if no request has been made yet.
pending-actionsPending actions currently awaiting confirmation. Subscribable: a client can subscribe via resources/subscribe and receive notifications/resources/updated on every create/confirm/cancel/expire.
CPA АвитоRaw Avito swagger CPA Авито.json
CPA-аукционRaw Avito swagger CPA-аукцион.json
CallTracking[КТ]Raw Avito swagger CallTracking[КТ].json
TrxPromoRaw Avito swagger TrxPromo.json
АвтозагрузкаRaw Avito swagger Автозагрузка.json
АвторизацияRaw Avito swagger Авторизация.json
ДоставкаRaw Avito swagger Доставка.json
Иерархия АккаунтовRaw Avito swagger Иерархия Аккаунтов.json
Информация о пользователеRaw Avito swagger Информация о пользователе.json
МессенджерRaw Avito swagger Мессенджер.json
Настройка цены целевого действияRaw Avito swagger Настройка цены целевого действия.json
ОбъявленияRaw Avito swagger Объявления.json
ПродвижениеRaw Avito swagger Продвижение.json
Рассылка скидок и спецпредложений в мессенджере (beta-version)Raw Avito swagger Рассылка скидок и спецпредложений в мессенджере (beta-version).json
Рейтинги и отзывыRaw Avito swagger Рейтинги и отзывы.json
ТарифыRaw Avito swagger Тарифы.json
Управление заказамиRaw Avito swagger Управление заказами.json
Управление остаткамиRaw Avito swagger Управление остатками.json

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/elchin92/avito-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server