avito-mcp with multiple accounts

avito-mcp

An Avito API MCP with support for up to nine accounts, an honest list of what the API cannot change, and a Railway deployment

MCP server

High risk

We rate an entry high when the tool writes to external systems, handles money, production databases or secrets, or runs arbitrary commands. The CLI installs it only with your consent.

Why this level

  • Can send messages on your behalf and change listing prices
  • The server access secret is embedded in the connector URL
All reasons and checks
Russian stack

irikrafikov-ai/avito-mcp

Install

In your terminal, with SkillFoxx CLI

npx skillfoxx add mcp/irikrafikov-ai-avito-mcp

Detects the agents on your machine, checks the risk and pins the version.

Other ways to install

Assembled automatically, review before installing.

This entry is high risk, so there is no one-click install. Review the code and add the config by hand.

Run in a terminal

claude mcp add --transport http avito-mcp 'https://<DOMAIN value>/mcp/<your MCP_SECRET>'

Or add to the file .mcp.json, in the project

{
  "mcpServers": {
    "avito-mcp": {
      "type": "http",
      "url": "https://<DOMAIN value>/mcp/<your MCP_SECRET>"
    }
  }
}

If the file already exists, add the server inside the mcpServers key.

Keys and settings

AVITO_CLIENT_IDsecret, required
Из кабинета разработчика Авито
AVITO_CLIENT_SECRETsecret, required
Там же
MCP_SECRETsecret, required
Длинная случайная строка, становится частью URL коннектора
AVITO_ACCOUNToptional
Короткий ключ кабинета, например cheki (по умолчанию main)
AVITO_ACCOUNT_LABELoptional
Человеческое название кабинета, например Чекинские берега
AVITO_USER_IDoptional
Если не задан, берётся из /core/v1/accounts/self
AVITO_REFRESH_TOKENsecret, optional
Нужен, если мессенджер не работает на client_credentials
DOMAINrequired
Публичный домен Railway или другой хостинг

Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.

Add to the file ~/.cursor/mcp.json, for all projects

{
  "mcpServers": {
    "avito-mcp": {
      "url": "https://<DOMAIN value>/mcp/<your MCP_SECRET>"
    }
  }
}

If the file already exists, add the server inside the mcpServers key. For a single project, put the same block into .cursor/mcp.json.

Keys and settings

AVITO_CLIENT_IDsecret, required
Из кабинета разработчика Авито
AVITO_CLIENT_SECRETsecret, required
Там же
MCP_SECRETsecret, required
Длинная случайная строка, становится частью URL коннектора
AVITO_ACCOUNToptional
Короткий ключ кабинета, например cheki (по умолчанию main)
AVITO_ACCOUNT_LABELoptional
Человеческое название кабинета, например Чекинские берега
AVITO_USER_IDoptional
Если не задан, берётся из /core/v1/accounts/self
AVITO_REFRESH_TOKENsecret, optional
Нужен, если мессенджер не работает на client_credentials
DOMAINrequired
Публичный домен Railway или другой хостинг

Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.

Run in a terminal

code --add-mcp '{"name":"avito-mcp","type":"http","url":"https://<DOMAIN value>/mcp/<your MCP_SECRET>"}'

Or add to the file .vscode/mcp.json, in the project

{
  "servers": {
    "avito-mcp": {
      "type": "http",
      "url": "https://<DOMAIN value>/mcp/<your MCP_SECRET>"
    }
  }
}

If the file already exists, add the server inside the servers key.

Keys and settings

AVITO_CLIENT_IDsecret, required
Из кабинета разработчика Авито
AVITO_CLIENT_SECRETsecret, required
Там же
MCP_SECRETsecret, required
Длинная случайная строка, становится частью URL коннектора
AVITO_ACCOUNToptional
Короткий ключ кабинета, например cheki (по умолчанию main)
AVITO_ACCOUNT_LABELoptional
Человеческое название кабинета, например Чекинские берега
AVITO_USER_IDoptional
Если не задан, берётся из /core/v1/accounts/self
AVITO_REFRESH_TOKENsecret, optional
Нужен, если мессенджер не работает на client_credentials
DOMAINrequired
Публичный домен Railway или другой хостинг

Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.

Run in a terminal

codex mcp add avito-mcp --url 'https://<DOMAIN value>/mcp/<your MCP_SECRET>'

Or add to the file ~/.codex/config.toml, for all projects

[mcp_servers.avito-mcp]
url = "https://<DOMAIN value>/mcp/<your MCP_SECRET>"

If the file already exists, append the block to the end.

Keys and settings

AVITO_CLIENT_IDsecret, required
Из кабинета разработчика Авито
AVITO_CLIENT_SECRETsecret, required
Там же
MCP_SECRETsecret, required
Длинная случайная строка, становится частью URL коннектора
AVITO_ACCOUNToptional
Короткий ключ кабинета, например cheki (по умолчанию main)
AVITO_ACCOUNT_LABELoptional
Человеческое название кабинета, например Чекинские берега
AVITO_USER_IDoptional
Если не задан, берётся из /core/v1/accounts/self
AVITO_REFRESH_TOKENsecret, optional
Нужен, если мессенджер не работает на client_credentials
DOMAINrequired
Публичный домен Railway или другой хостинг

Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.

Run in a terminal

gemini mcp add -s user -t http avito-mcp 'https://<DOMAIN value>/mcp/<your MCP_SECRET>'

Or add to the file ~/.gemini/settings.json, for all projects

{
  "mcpServers": {
    "avito-mcp": {
      "httpUrl": "https://<DOMAIN value>/mcp/<your MCP_SECRET>"
    }
  }
}

If the file already exists, add the server inside the mcpServers key.

Keys and settings

AVITO_CLIENT_IDsecret, required
Из кабинета разработчика Авито
AVITO_CLIENT_SECRETsecret, required
Там же
MCP_SECRETsecret, required
Длинная случайная строка, становится частью URL коннектора
AVITO_ACCOUNToptional
Короткий ключ кабинета, например cheki (по умолчанию main)
AVITO_ACCOUNT_LABELoptional
Человеческое название кабинета, например Чекинские берега
AVITO_USER_IDoptional
Если не задан, берётся из /core/v1/accounts/self
AVITO_REFRESH_TOKENsecret, optional
Нужен, если мессенджер не работает на client_credentials
DOMAINrequired
Публичный домен Railway или другой хостинг

Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.

Add to the file ~/.config/devin/mcp_config.json, for all projects

{
  "mcpServers": {
    "avito-mcp": {
      "serverUrl": "https://<DOMAIN value>/mcp/<your MCP_SECRET>"
    }
  }
}

If the file already exists, add the server inside the mcpServers key. Legacy Cascade keeps the MCP config in ~/.codeium/windsurf/mcp_config.json.

Keys and settings

AVITO_CLIENT_IDsecret, required
Из кабинета разработчика Авито
AVITO_CLIENT_SECRETsecret, required
Там же
MCP_SECRETsecret, required
Длинная случайная строка, становится частью URL коннектора
AVITO_ACCOUNToptional
Короткий ключ кабинета, например cheki (по умолчанию main)
AVITO_ACCOUNT_LABELoptional
Человеческое название кабинета, например Чекинские берега
AVITO_USER_IDoptional
Если не задан, берётся из /core/v1/accounts/self
AVITO_REFRESH_TOKENsecret, optional
Нужен, если мессенджер не работает на client_credentials
DOMAINrequired
Публичный домен Railway или другой хостинг

Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.

Formerly Windsurf.

Add to the file cline_mcp_settings.json, for all projects

{
  "mcpServers": {
    "avito-mcp": {
      "type": "streamableHttp",
      "url": "https://<DOMAIN value>/mcp/<your MCP_SECRET>"
    }
  }
}

If the file already exists, add the server inside the mcpServers key. Open the settings file in Cline: MCP Servers tab, Configure MCP Servers.

Keys and settings

AVITO_CLIENT_IDsecret, required
Из кабинета разработчика Авито
AVITO_CLIENT_SECRETsecret, required
Там же
MCP_SECRETsecret, required
Длинная случайная строка, становится частью URL коннектора
AVITO_ACCOUNToptional
Короткий ключ кабинета, например cheki (по умолчанию main)
AVITO_ACCOUNT_LABELoptional
Человеческое название кабинета, например Чекинские берега
AVITO_USER_IDoptional
Если не задан, берётся из /core/v1/accounts/self
AVITO_REFRESH_TOKENsecret, optional
Нужен, если мессенджер не работает на client_credentials
DOMAINrequired
Публичный домен Railway или другой хостинг

Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.

Add to the file .roo/mcp.json, in the project

{
  "mcpServers": {
    "avito-mcp": {
      "type": "streamable-http",
      "url": "https://<DOMAIN value>/mcp/<your MCP_SECRET>"
    }
  }
}

If the file already exists, add the server inside the mcpServers key.

Keys and settings

AVITO_CLIENT_IDsecret, required
Из кабинета разработчика Авито
AVITO_CLIENT_SECRETsecret, required
Там же
MCP_SECRETsecret, required
Длинная случайная строка, становится частью URL коннектора
AVITO_ACCOUNToptional
Короткий ключ кабинета, например cheki (по умолчанию main)
AVITO_ACCOUNT_LABELoptional
Человеческое название кабинета, например Чекинские берега
AVITO_USER_IDoptional
Если не задан, берётся из /core/v1/accounts/self
AVITO_REFRESH_TOKENsecret, optional
Нужен, если мессенджер не работает на client_credentials
DOMAINrequired
Публичный домен Railway или другой хостинг

Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.

A fork of Roo Code, same .roo folders.

Add to the file opencode.json, in the project

{
  "mcp": {
    "avito-mcp": {
      "type": "remote",
      "url": "https://<DOMAIN value>/mcp/<your MCP_SECRET>"
    }
  }
}

If the file already exists, add the server inside the mcp key.

Keys and settings

AVITO_CLIENT_IDsecret, required
Из кабинета разработчика Авито
AVITO_CLIENT_SECRETsecret, required
Там же
MCP_SECRETsecret, required
Длинная случайная строка, становится частью URL коннектора
AVITO_ACCOUNToptional
Короткий ключ кабинета, например cheki (по умолчанию main)
AVITO_ACCOUNT_LABELoptional
Человеческое название кабинета, например Чекинские берега
AVITO_USER_IDoptional
Если не задан, берётся из /core/v1/accounts/self
AVITO_REFRESH_TOKENsecret, optional
Нужен, если мессенджер не работает на client_credentials
DOMAINrequired
Публичный домен Railway или другой хостинг

Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.

Add to the file ~/.config/zed/settings.json, for all projects

{
  "context_servers": {
    "avito-mcp": {
      "url": "https://<DOMAIN value>/mcp/<your MCP_SECRET>"
    }
  }
}

If the file already exists, add the server inside the context_servers key.

Keys and settings

AVITO_CLIENT_IDsecret, required
Из кабинета разработчика Авито
AVITO_CLIENT_SECRETsecret, required
Там же
MCP_SECRETsecret, required
Длинная случайная строка, становится частью URL коннектора
AVITO_ACCOUNToptional
Короткий ключ кабинета, например cheki (по умолчанию main)
AVITO_ACCOUNT_LABELoptional
Человеческое название кабинета, например Чекинские берега
AVITO_USER_IDoptional
Если не задан, берётся из /core/v1/accounts/self
AVITO_REFRESH_TOKENsecret, optional
Нужен, если мессенджер не работает на client_credentials
DOMAINrequired
Публичный домен Railway или другой хостинг

Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.

Checked against the repository on Sep 26, 2026, commit 8593e92.

Text for your agent

Run npm install, set AVITO_CLIENT_ID, AVITO_CLIENT_SECRET and a generated node -e "console.log(require('crypto').randomBytes(24).toString('hex'))" MCP_SECRET, run npm start or deploy to Railway with a public domain, then add a custom connector in Claude with a URL like https://<domain>/mcp/<MCP_SECRET>.

Other ways from the author
npm install
AVITO_CLIENT_ID=... AVITO_CLIENT_SECRET=... MCP_SECRET=... npm start

A local run; checking with curl http://localhost:3000/ should return an ok status.

This is third-party code. Review the repository files before installing.

What it does

The server gives Claude access to Avito listings, statistics, messaging and autoload data through the official API. It supports from one to nine accounts at once: the second and later ones are set with _2 and higher suffixed variables, or a single AVITO_ACCOUNTS variable with a JSON array. The avito_accounts tool lists connected accounts, and the rest gain an account parameter. Read tools: whoami, balance, listing list, listing card and statistics, chat list, chat messages, autoload reports. Write tools: sending a message, updating price, marking as read. A fallback avito_request calls any API method directly. The README separately clarifies that the REST API cannot change a listing's title, description, photos or attributes, only its price, with everything else going through an XML or CSV autoload feed. The server deploys to Railway and exposes an MCP endpoint at an address with the secret embedded in the URL itself.

Who it is for. For sellers with several Avito accounts who need a single MCP server with switching between them and an honest description of what the API can and cannot change.

Good fit when

  • You run several Avito accounts and want to work with them from one server
  • You need autoload reports and clarity on which fields can only be edited via a feed
  • You need a Railway deployment with a public domain, not just a local run

Not a fit when

  • You need to change a listing's title, description, photos or attributes through the API: neither Avito nor the server can do this
  • You do not want a secret embedded directly in the connector URL for a cloud deployment

Example request

Show the balance and latest autoload reports for the dolina account

Limitations

Through Avito's REST API only the listing price can be changed; every other field must go through an XML or CSV autoload feed. With a Railway cloud deployment, the MCP_SECRET becomes part of the connector URL, so that URL must be kept as carefully as a password. It needs AVITO_CLIENT_ID and AVITO_CLIENT_SECRET from the Avito developer account for each connected account.

How to disable. Remove the custom connector with the server URL in Claude's settings and stop or delete the Railway service.

MCP

Transport
http
Authentication
API key
Environment variables
Environment variables
AVITO_CLIENT_ID
required, secret
The client_id from the Avito developer account.
AVITO_CLIENT_SECRET
required, secret
The client_secret from the same place.
MCP_SECRET
required, secret
A random string that becomes part of the connector URL.

Security check

  • Can send messages on your behalf and change listing prices
  • The server access secret is embedded in the connector URL

README in short

The README gives a table of environment variables marked as required or optional, explains the multi-account scheme via suffixes or a single AVITO_ACCOUNTS variable, an MCP_SECRET generation command, a local run and a Railway deployment with variables and a public domain, a list of read and write tools, and a separate section on what the API cannot do.

FAQ

Can I change a listing's photo or description?

No, Avito's API does not allow it; the only field editable via REST is price, everything else goes through the autoload feed.

How do I work with multiple accounts?

Set variables with _2, _3 and so on suffixes, or one AVITO_ACCOUNTS variable with a JSON array; the avito_accounts tool shows the list.

Official

Salesforce's official DX MCP server: work with orgs, metadata, data, users and Apex tests from your agent

MCP serverHigh risk483Repository stars
Official

Yandex's official skill set: catalog, prices, stock, orders, storefront and a weekly checkup for a Yandex Kit store, through Claude Code or Codex

PluginHigh riskRussian stackNo VPN needed28Repository stars
Editors’ pick

Full 65-operation YouGile API coverage with configurable permissions, write confirmation and a shared company rate limit

MCP serverHigh riskRussian stackNo VPN needed

Bitrix24 portal MCP server

MCP-сервер портала Битрикс24

Official

Bitrix24's official per-portal MCP: an external agent uses OAuth or a token to read and change tasks, deals, meetings and mail

MCP serverHigh riskRussian stackNo VPN needed
Foxx AIavito-mcp with multiple accounts

I am Foxx AI and I have already vetted this tool. Ask about install, setup or anything else, and I will keep it simple.